platform/upstream/gcc.git
9 years agoDaily bump.
GCC Administrator [Tue, 14 Jul 2015 00:16:11 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r225755

9 years agoUpdate to patch that Aldy committed directly here.
Ian Lance Taylor [Tue, 14 Jul 2015 00:09:23 +0000 (00:09 +0000)]
Update to patch that Aldy committed directly here.

From-SVN: r225752

9 years agoescape: Analyze multiple result type assertions.
Ian Lance Taylor [Tue, 14 Jul 2015 00:02:19 +0000 (00:02 +0000)]
escape: Analyze multiple result type assertions.

    For multi-result type assertions, the object being converted is hidden
    behind unsafe conversions and calls to runtime methods.  This change
    allows the analysis to make edges between the result of the assertion
    and the object being asserted.

    Reviewed-on: https://go-review.googlesource.com/10661

From-SVN: r225751

9 years agore PR c++/65186 (internal compiler error: in tsubst, at cp/pt.c:11738)
Patrick Palka [Mon, 13 Jul 2015 20:35:53 +0000 (20:35 +0000)]
re PR c++/65186 (internal compiler error: in tsubst, at cp/pt.c:11738)

Fix PR c++/65186

gcc/cp/ChangeLog:
PR c++/65186
* pt.c (invalid_nontype_parm_type_p): Accept a bound template
template parm type under C++11 and later.

gcc/testsuite/ChangeLog:

PR c++/65186
* g++.dg/template/pr65186.C: New test.

From-SVN: r225749

9 years agore PR libstdc++/66855 (codecvt wrong endianness in UTF-16 conversions)
Jonathan Wakely [Mon, 13 Jul 2015 20:07:48 +0000 (21:07 +0100)]
re PR libstdc++/66855 (codecvt wrong endianness in UTF-16 conversions)

PR libstdc++/66855
* src/c++11/codecvt.cc (__codecvt_utf8_utf16_base::do_in): Override
endianness bit in mode.
* testsuite/22_locale/codecvt/codecvt_utf8_utf16/66855.cc: New.

From-SVN: r225748

9 years ago* rtl.c (rtx_equal_p_cb): Fix typo.
Marek Polacek [Mon, 13 Jul 2015 19:41:01 +0000 (19:41 +0000)]
* rtl.c (rtx_equal_p_cb): Fix typo.

From-SVN: r225747

9 years agosyscall: remove calls to Entersyscall & Exitsyscall in Getdents
Ian Lance Taylor [Mon, 13 Jul 2015 18:55:15 +0000 (18:55 +0000)]
syscall: remove calls to Entersyscall & Exitsyscall in Getdents

    The syscall for Getdents in syscall/libcall_linux.go
    called Entersyscall and Exitsyscall, causing the
    runtime_sched counts for goroutines to be incorrect.
    Inconsistent counts caused checkdead in runtime/proc.c
    to panic.

    Fixes golang/go#11406

    Reviewed-on: https://go-review.googlesource.com/11761

From-SVN: r225745

9 years agoc++config (_GLIBCXX_NOEXCEPT_IF): Define.
Jonathan Wakely [Mon, 13 Jul 2015 17:15:48 +0000 (18:15 +0100)]
c++config (_GLIBCXX_NOEXCEPT_IF): Define.

* include/bits/c++config (_GLIBCXX_NOEXCEPT_IF): Define.
* include/bits/forward_list.h (forward_list::swap): Make noexcept
unconditional.
* include/bits/hashtable.h (_Hashtable::swap): Do not use
_S_nothrow_swap().
* include/bits/stl_bvector.h (vector<bool>::swap): Make noexcept
unconditional.
* include/bits/stl_deque.h (deque::swap): Likewise.
(swap(deque&, deque&)): Use _GLIBCXX_NOEXCEPT_IF.
* include/bits/stl_list.h (list::swap): Make noexcept unconditional.
(swap(list&, list&)): Use _GLIBCXX_NOEXCEPT_IF.
* include/bits/stl_map.h (map::swap, swap(map&, map&)): Use
_GLIBCXX_NOEXCEPT_IF, do not depend on _S_nothrow_swap.
* include/bits/stl_multimap.h (multimap::swap,
swap(multimap&, multimap&)): Likewise.
* include/bits/stl_multiset.h (multiset::swap,
swap(multiset&, multiset&)): Likewise.
* include/bits/stl_set.h (set::swap, swap(set&, set&)): Likewise.
* include/bits/stl_tree.h (_Rb_tree::swap,
swap(_Rb_tree&, _Rb_tree&)): Likewise.
* include/bits/stl_vector.h (vector::swap): Make noexcept
unconditional.
(swap(vector&, vector&)): Use _GLIBCXX_NOEXCEPT_IF.
* include/debug/deque (deque::swap, swap): Likewise.
* include/debug/forward_list (swap): Add noexcept.
* include/debug/list (list::swap, swap): Use _GLIBCXX_NOEXCEPT_IF.
* include/debug/map.h (map::swap, swap): Likewise.
* include/debug/multimap.h (multimap::swap, swap): Likewise.
* include/debug/multiset.h (multiset::Swap, swap): Likewise.
* include/debug/set.h (set::swap, swap): Likewise.
* include/debug/unordered_map (unordered_map::swap,
unordered_multimap::swap, swap): Likewise.
* include/debug/unordered_set (unordered_set::swap,
unordered_multiset::swap, swap): Likewise.
* include/debug/vector (vector::swap, swap): Likewise.
* include/ext/alloc_traits.h (__alloc_traits::_S_nothrow_swap()):
Remove.
* include/profile/deque (deque::swap, swap): Use _GLIBCXX_NOEXCEPT_IF.
* include/profile/forward_list (swap): Add noexcept.
* include/profile/list (list::swap, swap) : Use _GLIBCXX_NOEXCEPT_IF.
* include/profile/map.h (map::swap, swap): Likewise.
* include/profile/multimap.h (multimap::swap, swap): Likewise.
* include/profile/multiset.h (multiset::swap, swap): Likewise.
* include/profile/set.h (set::swap, swap): Likewise.
* include/profile/unordered_map (swap): Likewise.
* include/profile/unordered_set (swap): Likewise.
* include/profile/vector (vector::swap, swap): Likewise. Remove
overloads for swapping rvalues.
* testsuite/23_containers/deque/allocator/noexcept.cc: Update tests
for noexcept on swap.
* testsuite/23_containers/forward_list/allocator/noexcept.cc:
Likewise.
* testsuite/23_containers/list/allocator/noexcept.cc: Likewise.
* testsuite/23_containers/map/allocator/noexcept.cc: Likewise.
* testsuite/23_containers/multimap/allocator/noexcept.cc: Likewise.
* testsuite/23_containers/multiset/allocator/noexcept.cc: Likewise.
* testsuite/23_containers/set/allocator/noexcept.cc: Likewise.
* testsuite/23_containers/unordered_map/allocator/noexcept.cc:
Likewise.
* testsuite/23_containers/unordered_multimap/allocator/noexcept.cc:
Likewise.
* testsuite/23_containers/unordered_multiset/allocator/noexcept.cc:
Likewise.
* testsuite/23_containers/unordered_set/allocator/noexcept.cc:
Likewise.
* testsuite/23_containers/vector/allocator/noexcept.cc: Likewise.
* testsuite/23_containers/vector/bool/allocator/noexcept.cc: Likewise.
* testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error line
number.

From-SVN: r225744

9 years ago[ARM][testsuite] Fix FAIL: gcc.target/arm/macro_defs0.c and macro_defs1.c when -marm...
Mantas Mikaitis [Mon, 13 Jul 2015 16:00:39 +0000 (16:00 +0000)]
[ARM][testsuite] Fix FAIL: gcc.target/arm/macro_defs0.c and macro_defs1.c when -marm forced

On behalf of Mantas Mikaitis

2015-07-13  Mantas Mikaitis  <mantas.mikaitis@arm.com>

* gcc.target/arm/macro_defs0.c: Add directive to skip
test if -marm is present.
* gcc.target/arm/macro_defs1.c: Likewise.

From-SVN: r225742

9 years agoomega.h: Don't include config.h...
Andrew MacLeod [Mon, 13 Jul 2015 15:41:54 +0000 (15:41 +0000)]
omega.h: Don't include config.h...

* omega.h: Don't include config.h, don't include params.h again if
omega.h has already been included.
* graphite-poly.h: Include sese.h.
* graphite.c: Don't include sese.h, remove needless includes and
minimize includes outside #ifdef HAVE_isl block.
* graphite-blocking.c: Don't include sese.h, remove needless includes,
and wrap entire file in #ifdef HAVE_isl
* graphite-dependences.c: Likewise.
* graphite-interchange.c: Likewise.
* graphite-isl-ast-to-gimple.c: Likewise.
* graphite-optimize-isl.c: Likewise.
* graphite-poly.c: Likewise.
* graphite-scop-detection.c: Likewise.
* graphite-sese-to-poly.c: Likewise.

From-SVN: r225741

9 years agot-dragonfly: New.
John Marino [Mon, 13 Jul 2015 14:53:16 +0000 (14:53 +0000)]
t-dragonfly: New.

2015-07-13  John Marino  <gnugcc@marino.st>

* config/i386/t-dragonfly: New.

From-SVN: r225738

9 years agoos_defines.h (_GLIBCXX_USE_C99_CHECK, [...]): Define.
John Marino [Mon, 13 Jul 2015 14:53:08 +0000 (14:53 +0000)]
os_defines.h (_GLIBCXX_USE_C99_CHECK, [...]): Define.

2015-07-13  John Marino  <gnugcc@marino.st>

* config/os/bsd/dragonfly/os_defines.h (_GLIBCXX_USE_C99_CHECK,
_GLIBCXX_USE_C99_DYNAMIC, _GLIBCXX_USE_C99_LONG_LONG_CHECK,
_GLIBCXX_USE_C99_LONG_LONG_DYNAMIC): Define.

From-SVN: r225737

9 years agoUpdate libgomp/testsuite/*/examples-4/* according to latest version (4.0.2)
Maxim Blumenthal [Mon, 13 Jul 2015 13:08:13 +0000 (13:08 +0000)]
Update libgomp/testsuite/*/examples-4/* according to latest version (4.0.2)

2015-07-13  Maxim Blumenthal  <maxim.blumenthal@intel.com>

* testsuite/libgomp.c++/examples-4/e.53.2.C: Renamed to...
* testsuite/libgomp.c++/examples-4/declare_target-2.C: ...this.
* testsuite/libgomp.c++/examples-4/e.51.5.C: Renamed to...
* testsuite/libgomp.c++/examples-4/target_data-5.C: ...this.
* testsuite/libgomp.c/examples-4/e.56.3.c: Renamed to...
* testsuite/libgomp.c/examples-4/array_sections-3.c: ...this.
* testsuite/libgomp.c/examples-4/e.56.4.c: Renamed to...
* testsuite/libgomp.c/examples-4/array_sections-4.c: ...this.
* testsuite/libgomp.c/examples-4/e.55.1.c: Renamed to...
* testsuite/libgomp.c/examples-4/async_target-1.c: ...this.
* testsuite/libgomp.c/examples-4/e.55.2.c: Renamed to...
* testsuite/libgomp.c/examples-4/async_target-2.c: ...this.
(vec_mult_ref): Remove v1 and v2 arguments, turn them into local
variables.
(vec_mult): Likewise.  Add #pragma omp taskwait.
(main): Adjust caller.
* testsuite/libgomp.c/examples-4/e.53.1.c: Renamed to...
* testsuite/libgomp.c/examples-4/declare_target-1.c: ...this.
* testsuite/libgomp.c/examples-4/e.53.3.c: Renamed to...
* testsuite/libgomp.c/examples-4/declare_target-3.c: ...this.
* testsuite/libgomp.c/examples-4/e.53.4.c: Renamed to...
* testsuite/libgomp.c/examples-4/declare_target-4.c: ...this.
* testsuite/libgomp.c/examples-4/e.53.5.c: Renamed to...
* testsuite/libgomp.c/examples-4/declare_target-5.c: ...this.
* testsuite/libgomp.c/examples-4/e.57.1.c: Renamed to...
* testsuite/libgomp.c/examples-4/device-1.c: ...this.
* testsuite/libgomp.c/examples-4/e.57.2.c: Renamed to...
* testsuite/libgomp.c/examples-4/device-2.c: ...this.
* testsuite/libgomp.c/examples-4/e.57.3.c: Renamed to...
* testsuite/libgomp.c/examples-4/device-3.c: ...this.
* testsuite/libgomp.c/examples-4/simd-1.c: New file.
* testsuite/libgomp.c/examples-4/simd-2.c: New file.
* testsuite/libgomp.c/examples-4/simd-3.c: New file.
* testsuite/libgomp.c/examples-4/simd-4.c: New file.
* testsuite/libgomp.c/examples-4/simd-5.c: New file.
* testsuite/libgomp.c/examples-4/simd-6.c: New file.
* testsuite/libgomp.c/examples-4/simd-7.c: New file.
* testsuite/libgomp.c/examples-4/simd-8.c: New file.
* testsuite/libgomp.c/examples-4/e.50.1.c: Renamed to...
* testsuite/libgomp.c/examples-4/target-1.c: ...this.
* testsuite/libgomp.c/examples-4/e.50.2.c: Renamed to...
* testsuite/libgomp.c/examples-4/target-2.c: ...this.
* testsuite/libgomp.c/examples-4/e.50.3.c: Renamed to...
* testsuite/libgomp.c/examples-4/target-3.c: ...this.
* testsuite/libgomp.c/examples-4/e.50.4.c: Renamed to...
* testsuite/libgomp.c/examples-4/target-4.c: ...this.
* testsuite/libgomp.c/examples-4/e.50.5.c: Renamed to...
* testsuite/libgomp.c/examples-4/target-5.c: ...this.
* testsuite/libgomp.c/examples-4/e.51.1.c: Renamed to...
* testsuite/libgomp.c/examples-4/target_data-1.c: ...this.
* testsuite/libgomp.c/examples-4/e.51.2.c: Renamed to...
* testsuite/libgomp.c/examples-4/target_data-2.c: ...this.
* testsuite/libgomp.c/examples-4/e.51.3.c: Renamed to...
* testsuite/libgomp.c/examples-4/target_data-3.c: ...this.
* testsuite/libgomp.c/examples-4/e.51.4.c: Renamed to...
* testsuite/libgomp.c/examples-4/target_data-4.c: ...this.
* testsuite/libgomp.c/examples-4/e.51.6.c: Renamed to...
* testsuite/libgomp.c/examples-4/target_data-6.c: ...this.
* testsuite/libgomp.c/examples-4/e.51.7.c: Renamed to...
* testsuite/libgomp.c/examples-4/target_data-7.c: ...this.
* testsuite/libgomp.c/examples-4/e.52.1.c: Renamed to...
* testsuite/libgomp.c/examples-4/target_update-1.c: ...this.
* testsuite/libgomp.c/examples-4/e.52.2.c: Renamed to...
* testsuite/libgomp.c/examples-4/target_update-2.c: ...this.
* testsuite/libgomp.c/examples-4/task_dep-1.c: New file.
* testsuite/libgomp.c/examples-4/task_dep-2.c: New file.
* testsuite/libgomp.c/examples-4/task_dep-3.c: New file.
* testsuite/libgomp.c/examples-4/task_dep-4.c: New file.
* testsuite/libgomp.c/examples-4/task_dep-5.c: New file.
* testsuite/libgomp.c/examples-4/e.54.2.c: Renamed to...
* testsuite/libgomp.c/examples-4/teams-2.c: ...this.
* testsuite/libgomp.c/examples-4/e.54.3.c: Renamed to...
* testsuite/libgomp.c/examples-4/teams-3.c: ...this.
* testsuite/libgomp.c/examples-4/e.54.4.c: Renamed to...
* testsuite/libgomp.c/examples-4/teams-4.c: ...this.
* testsuite/libgomp.c/examples-4/e.54.5.c: Renamed to...
* testsuite/libgomp.c/examples-4/teams-5.c: ...this.
* testsuite/libgomp.c/examples-4/e.54.6.c: Renamed to...
* testsuite/libgomp.c/examples-4/teams-6.c: ...this.
* testsuite/libgomp.fortran/examples-4/e.56.3.f90: Renamed to...
* testsuite/libgomp.fortran/examples-4/array_sections-3.f90: ...this.
* testsuite/libgomp.fortran/examples-4/e.56.4.f90: Renamed to...
* testsuite/libgomp.fortran/examples-4/array_sections-4.f90: ...this.
* testsuite/libgomp.fortran/examples-4/e.55.1.f90: Renamed to...
* testsuite/libgomp.fortran/examples-4/async_target-1.f90: ...this.
* testsuite/libgomp.fortran/examples-4/e.55.2.f90: Renamed to...
* testsuite/libgomp.fortran/examples-4/async_target-2.f90: ...this.
(vec_mult): Add !$omp taskwait.
* testsuite/libgomp.fortran/examples-4/e.53.1.f90: Renamed to...
* testsuite/libgomp.fortran/examples-4/declare_target-1.f90: ...this.
* testsuite/libgomp.fortran/examples-4/e.53.2.f90: Renamed to...
* testsuite/libgomp.fortran/examples-4/declare_target-2.f90: ...this.
* testsuite/libgomp.fortran/examples-4/e.53.3.f90: Renamed to...
* testsuite/libgomp.fortran/examples-4/declare_target-3.f90: ...this.
* testsuite/libgomp.fortran/examples-4/e.53.4.f90: Renamed to...
* testsuite/libgomp.fortran/examples-4/declare_target-4.f90: ...this.
* testsuite/libgomp.fortran/examples-4/e.53.5.f90: Renamed to...
* testsuite/libgomp.fortran/examples-4/declare_target-5.f90: ...this.
* testsuite/libgomp.fortran/examples-4/e.57.1.f90: Renamed to...
* testsuite/libgomp.fortran/examples-4/device-1.f90: ...this.
* testsuite/libgomp.fortran/examples-4/e.57.2.f90: Renamed to...
* testsuite/libgomp.fortran/examples-4/device-2.f90: ...this.
* testsuite/libgomp.fortran/examples-4/e.57.3.f90: Renamed to...
* testsuite/libgomp.fortran/examples-4/device-3.f90: ...this.
* testsuite/libgomp.fortran/examples-4/simd-1.f90: New file.
* testsuite/libgomp.fortran/examples-4/simd-2.f90: New file.
* testsuite/libgomp.fortran/examples-4/simd-3.f90: New file.
* testsuite/libgomp.fortran/examples-4/simd-4.f90: New file.
* testsuite/libgomp.fortran/examples-4/simd-5.f90: New file.
* testsuite/libgomp.fortran/examples-4/simd-6.f90: New file.
* testsuite/libgomp.fortran/examples-4/simd-7.f90: New file.
* testsuite/libgomp.fortran/examples-4/simd-8.f90: New file.
* testsuite/libgomp.fortran/examples-4/e.50.1.f90: Renamed to...
* testsuite/libgomp.fortran/examples-4/target-1.f90: ...this.
* testsuite/libgomp.fortran/examples-4/e.50.2.f90: Renamed to...
* testsuite/libgomp.fortran/examples-4/target-2.f90: ...this.
* testsuite/libgomp.fortran/examples-4/e.50.3.f90: Renamed to...
* testsuite/libgomp.fortran/examples-4/target-3.f90: ...this.
* testsuite/libgomp.fortran/examples-4/e.50.4.f90: Renamed to...
* testsuite/libgomp.fortran/examples-4/target-4.f90: ...this.
* testsuite/libgomp.fortran/examples-4/e.50.5.f90: Renamed to...
* testsuite/libgomp.fortran/examples-4/target-5.f90: ...this.
* testsuite/libgomp.fortran/examples-4/e.51.1.f90: Renamed to...
* testsuite/libgomp.fortran/examples-4/target_data-1.f90: ...this.
* testsuite/libgomp.fortran/examples-4/e.51.2.f90: Renamed to...
* testsuite/libgomp.fortran/examples-4/target_data-2.f90: ...this.
* testsuite/libgomp.fortran/examples-4/e.51.3.f90: Renamed to...
* testsuite/libgomp.fortran/examples-4/target_data-3.f90: ...this.
* testsuite/libgomp.fortran/examples-4/e.51.4.f90: Renamed to...
* testsuite/libgomp.fortran/examples-4/target_data-4.f90: ...this.
* testsuite/libgomp.fortran/examples-4/e.51.5.f90: Renamed to...
* testsuite/libgomp.fortran/examples-4/target_data-5.f90: ...this.
* testsuite/libgomp.fortran/examples-4/e.51.6.f90: Renamed to...
* testsuite/libgomp.fortran/examples-4/target_data-6.f90: ...this.
* testsuite/libgomp.fortran/examples-4/e.51.7.f90: Renamed to...
* testsuite/libgomp.fortran/examples-4/target_data-7.f90: ...this.
* testsuite/libgomp.fortran/examples-4/e.52.1.f90: Renamed to...
* testsuite/libgomp.fortran/examples-4/target_update-1.f90: ...this.
* testsuite/libgomp.fortran/examples-4/e.52.2.f90: Renamed to...
* testsuite/libgomp.fortran/examples-4/target_update-2.f90: ...this.
* testsuite/libgomp.fortran/examples-4/task_dep-1.f90: New file.
* testsuite/libgomp.fortran/examples-4/task_dep-2.f90: New file.
* testsuite/libgomp.fortran/examples-4/task_dep-3.f90: New file.
* testsuite/libgomp.fortran/examples-4/task_dep-4.f90: New file.
* testsuite/libgomp.fortran/examples-4/task_dep-5.f90: New file.
* testsuite/libgomp.fortran/examples-4/e.54.2.f90: Renamed to...
* testsuite/libgomp.fortran/examples-4/teams-2.f90: ...this.
* testsuite/libgomp.fortran/examples-4/e.54.3.f90: Renamed to...
* testsuite/libgomp.fortran/examples-4/teams-3.f90: ...this.
* testsuite/libgomp.fortran/examples-4/e.54.4.f90: Renamed to...
* testsuite/libgomp.fortran/examples-4/teams-4.f90: ...this.
* testsuite/libgomp.fortran/examples-4/e.54.5.f90: Renamed to...
* testsuite/libgomp.fortran/examples-4/teams-5.f90: ...this.
* testsuite/libgomp.fortran/examples-4/e.54.6.f90: Renamed to...
* testsuite/libgomp.fortran/examples-4/teams-6.f90: ...this.

From-SVN: r225735

9 years ago[AArch64][testsuite] Adjust some arith+compare tests for potentially more aggressive...
Kyrylo Tkachov [Mon, 13 Jul 2015 10:19:49 +0000 (10:19 +0000)]
[AArch64][testsuite] Adjust some arith+compare tests for potentially more aggressive if-conversion

* gcc.target/aarch64/adds3.c: Adjust for more aggressive
if-conversion..
* gcc.target/aarch64/adds1.c: Likewise.
* gcc.target/aarch64/ands_1.c: Likewise.
* gcc.target/aarch64/bics_1.c: Likewise.
* gcc.target/aarch64/subs1.c: Likewise.
* gcc.target/aarch64/subs3.c: Likewise.

From-SVN: r225732

9 years agoMark *.omp_data_i as non-trapping
Tom de Vries [Mon, 13 Jul 2015 09:46:37 +0000 (09:46 +0000)]
Mark *.omp_data_i as non-trapping

2015-07-13  Tom de Vries  <tom@codesourcery.com>

* omp-low.c (build_receiver_ref): Mark *.omp_data_i as non-trapping.

From-SVN: r225731

9 years agore PR fortran/64589 ([OOP] Linking error due to undefined integer symbol with unlimit...
Andre Vehreschild [Mon, 13 Jul 2015 09:01:54 +0000 (11:01 +0200)]
re PR fortran/64589 ([OOP] Linking error due to undefined integer symbol with unlimited polymorphism)

gcc/testsuite/ChangeLog:

2015-07-13  Andre Vehreschild  <vehre@gcc.gnu.org>

PR fortran/64589
* gfortran.dg/pr64589.f90: New test.

gcc/fortran/ChangeLog:

2015-07-13  Andre Vehreschild  <vehre@gcc.gnu.org>

PR fortran/64589
* class.c (find_intrinsic_vtab): Put/Search vtabs for intrinsic
types in the top-level namespace.

From-SVN: r225730

9 years ago[PATCH]Fix PR66556.
Renlin Li [Mon, 13 Jul 2015 08:29:46 +0000 (08:29 +0000)]
[PATCH]Fix PR66556.

[PATCH]Fix PR66556. Don't drop side-effect in
simplify_const_relational_operation function.

gcc/

2015-07-13  Renlin Li  <renlin.li@arm.com>

PR rtl/66556
* simplify-rtx.c (simplify_const_relational_operation): Add
side_effects_p checks.

gcc/testsuite/

2015-07-13  Renlin Li  <renlin.li@arm.com>

PR rtl/66556
* gcc.c-torture/execute/pr66556.c: New.

From-SVN: r225729

9 years agoFix several crashes of C++ demangler on fuzzed input.
Mikhail Maltsev [Mon, 13 Jul 2015 05:49:54 +0000 (05:49 +0000)]
Fix several crashes of C++ demangler on fuzzed input.

libiberty/
* cp-demangle.c (d_dump): Fix syntax error.
(d_identifier): Adjust type of len to match d_source_name.
(d_expression_1): Fix out-of-bounds access.  Check code variable for
NULL before dereferencing it.
(d_find_pack): Do not recurse for FIXED_TYPE, DEFAULT_ARG and NUMBER.
(d_print_comp_inner): Add NULL pointer check.
* cp-demangle.h (d_peek_next_char): Define as inline function when
CHECK_DEMANGLER is defined.
(d_advance): Likewise.
* testsuite/demangle-expected: Add new testcases.

From-SVN: r225727

9 years agoFix double word typos.
Aldy Hernandez [Mon, 13 Jul 2015 04:46:34 +0000 (04:46 +0000)]
Fix double word typos.

From-SVN: r225726

9 years agoDaily bump.
GCC Administrator [Mon, 13 Jul 2015 00:16:17 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r225725

9 years agore PR tree-optimization/66726 (missed optimization, factor conversion out of COND_EXPR)
Kugan Vivekanandarajah [Sun, 12 Jul 2015 11:22:42 +0000 (11:22 +0000)]
re PR tree-optimization/66726 (missed optimization, factor conversion out of COND_EXPR)

gcc/testsuite/ChangeLog:

2015-07-12  Kugan Vivekanandarajah  <kuganv@linaro.org>
    Jeff Law  <law@redhat.com>

PR middle-end/66726
* g++.dg/tree-ssa/pr66726.c: New test.
* gcc.dg/tree-ssa/pr66726-2.c: New test.
* gcc.dg/tree-ssa/pr66726.c: New test.

gcc/ChangeLog:

2015-07-12  Kugan Vivekanandarajah  <kuganv@linaro.org>

PR middle-end/66726
* tree-ssa-phiopt.c(factor_out_conditional_conversion): New function.
tree_ssa_phiopt_worker): Call it.

Co-Authored-By: Jeff Law <law@redhat.com>
From-SVN: r225722

9 years agocse.c (cse_insn): Calculate src_eqv for ZERO_EXTRACT.
Kugan Vivekanandarajah [Sun, 12 Jul 2015 11:16:30 +0000 (11:16 +0000)]
cse.c (cse_insn): Calculate src_eqv for ZERO_EXTRACT.

gcc/ChangeLog:

2015-07-12  Kugan Vivekanandarajah  <kuganv@linaro.org>

* cse.c (cse_insn): Calculate src_eqv for ZERO_EXTRACT.
* emit-rtl.c (set_for_reg_notes): Allow ZERO_EXTRACT to set
REG_EQUAL note.

From-SVN: r225721

9 years agoDaily bump.
GCC Administrator [Sun, 12 Jul 2015 00:16:11 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r225718

9 years agore PR c++/58734 ([C++11] Template template parameter pack instantiation problem)
Paolo Carlini [Sat, 11 Jul 2015 18:17:41 +0000 (18:17 +0000)]
re PR c++/58734 ([C++11] Template template parameter pack instantiation problem)

2015-07-11  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/58734
* g++.dg/cpp0x/variadic-ttp2.C: New.

From-SVN: r225713

9 years ago2015-07-10 Paolo Carlini <paolo.carlini@oracle.com>
Paolo Carlini [Sat, 11 Jul 2015 17:53:42 +0000 (17:53 +0000)]
2015-07-10  Paolo Carlini  <paolo.carlini@oracle.com>

* Fix typo in the last ChangeLog entry.

From-SVN: r225712

9 years agore PR middle-end/66353 (Missing bb_has_abnormal_call_pred in basic-block.h)
Marek Polacek [Sat, 11 Jul 2015 10:03:38 +0000 (10:03 +0000)]
re PR middle-end/66353 (Missing bb_has_abnormal_call_pred in basic-block.h)

PR middle-end/66353
* basic-block.h (has_abnormal_call_or_eh_pred_edge_p): New function.
* ira-lives.c (bb_has_abnormal_call_pred): Remove function.
(process_bb_node_lives): Call has_abnormal_call_or_eh_pred_edge_p
rather than bb_has_abnormal_call_pred.
* lra-lives.c (bb_has_abnormal_call_pred): Remove function.
(process_bb_lives): Call has_abnormal_call_or_eh_pred_edge_p
rather than bb_has_abnormal_call_pred.

From-SVN: r225711

9 years agoDaily bump.
GCC Administrator [Sat, 11 Jul 2015 00:16:11 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r225709

9 years agore PR c++/30044 (ICE in tsubst, at cp/pt.c:7359)
Patrick Palka [Fri, 10 Jul 2015 23:21:39 +0000 (23:21 +0000)]
re PR c++/30044 (ICE in tsubst, at cp/pt.c:7359)

Fix PR c++/30044

gcc/cp/ChangeLog:

PR c++/30044
* pt.c (begin_template_parm_list): Add a dummy parameter level
to current_template_parms.
(end_template_parm_list): Remove the dummy parameter level
before adding the real one.
(tsubst): Don't attempt to substitute for template parameters
corresponding to a dummy argument level.
(template_parms_to_args): Remove obsolete hack for
giving template template arguments the proper level.
(splite_late_return_type): Remove obsolete hack for giving
template template arguments the proper level.
* error.c (dump_template_decl): Don't print dummy template
levels.

gcc/testsuite/ChangeLog

PR c++/30044
* g++.dg/cpp0x/auto46.C: New test.
* g++.dg/template/pr30044.C: New test.
* g++.dg/template/shadow2.C: New test.
* g++.dg/template/error55.C: New test.
* g++.dg/template/crash83.C: Accept any error string.
* g++.dg/cpp0x/variadic18.C: Adjust to avoid shadowing template
parameters.
* g++.dg/cpp0x/variadic18.C: Likewise
* g++.dg/template/canon-type-13.C: Likewise.
* g++.old-deja/g++.pt/ttp42.C: Likewise.
* g++.dg/torture/20070621-1.C: Likewise.

From-SVN: r225706

9 years agore PR c++/54521 (g++ fails to call explicit constructors in the second step of copy...
Paolo Carlini [Fri, 10 Jul 2015 22:56:35 +0000 (22:56 +0000)]
re PR c++/54521 (g++ fails to call explicit constructors in the second step of copy initialization)

/cp
2015-07-10  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/54521
* call.c (convert_like_real): Do not set LOOKUP_ONLYCONVERTING for
the second step of copy-initialization.

/testsuite
2015-07-10  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/54521
* g++.dg/init/explicit3.C: New.

From-SVN: r225705

9 years agotypo
Jason Merrill [Fri, 10 Jul 2015 21:35:09 +0000 (17:35 -0400)]
typo

From-SVN: r225693

9 years agopt.c (find_parameter_packs_r): Handle variable templates.
Jason Merrill [Fri, 10 Jul 2015 21:35:04 +0000 (17:35 -0400)]
pt.c (find_parameter_packs_r): Handle variable templates.

* pt.c (find_parameter_packs_r): Handle variable templates.
(variable_template_specialization_p): New.
* cp-tree.h: Declare it.

From-SVN: r225692

9 years ago* parser.c (cp_parser_template_id): SET_EXPR_LOCATION.
Jason Merrill [Fri, 10 Jul 2015 21:34:59 +0000 (17:34 -0400)]
* parser.c (cp_parser_template_id): SET_EXPR_LOCATION.

From-SVN: r225691

9 years ago[V850] Hookize GO_IF_LEGITIMATE_ADDRESS
Anatoly Sokolov [Fri, 10 Jul 2015 21:31:19 +0000 (00:31 +0300)]
[V850] Hookize GO_IF_LEGITIMATE_ADDRESS

From-SVN: r225690

9 years agobb-reorder.c: Don't include obstack.h if backend.h is included.
Andrew Macleod [Fri, 10 Jul 2015 21:05:42 +0000 (21:05 +0000)]
bb-reorder.c: Don't include obstack.h if backend.h is included.

* bb-reorder.c: Don't include obstack.h if backend.h is included.
* cfg.c: Likewise.
* cfgloopanal.c: Likewise.
* cfgrtl.c: Likewise.
* combine.c: Likewise.
* cprop.c: Likewise.
* dominance.c: Likewise.
* fwprop.c: Likewise.
* gcse.c: Likewise.
* ira-emit.c: Likewise.
* ira.c: Likewise.
* loop-init.c: Likewise.
* loop-invariant.c: Likewise.
* loop-iv.c: Likewise.
* loop-unroll.c: Likewise.
* lower-subreg.c: Likewise.
* postreload-gcse.c: Likewise.
* postreload.c: Likewise.
* regcprop.c: Likewise.
* regrename.c: Likewise.
* reload1.c: Likewise.
* reorg.c: Likewise.
* tree-ssa-pre.c: Likewise.
* tree-ssa-structalias.c: Likewise.
* tree.c: Likewise.
* web.c: Likewise.
* config/aarch64/cortex-a57-fma-steering.c: Likewise.
* config/alpha/alpha.c: Likewise.
* config/arm/arm.c: Likewise.
* config/avr/avr.c: Likewise.
* config/darwin.c: Likewise.
* config/fr30/fr30.c: Likewise.
* config/frv/frv.c: Likewise.
* config/ft32/ft32.c: Likewise.
* config/m32c/m32c.c: Likewise.
* config/mcore/mcore.c: Likewise.
* config/mep/mep.c: Likewise.
* config/mn10300/mn10300.c: Likewise.
* config/moxie/moxie.c: Likewise.
* config/rs6000/rs6000.c: Likewise.
* config/spu/spu.c: Likewise.
* config/stormy16/stormy16.c: Likewise.

From-SVN: r225689

9 years agoAllow indirect sibcall with register arguments
H.J. Lu [Fri, 10 Jul 2015 20:30:10 +0000 (20:30 +0000)]
Allow indirect sibcall with register arguments

Indirect sibcall with register arguments is OK when there is register
available for argument passing.

gcc/

PR target/66819
* config/i386/i386.c (ix86_function_ok_for_sibcall): Allow
indirect sibcall with register arguments if register available
for argument passing.
(init_cumulative_args): Set cfun->machine->arg_reg_available
to (cum->nregs > 0) or to true if function has a variable
argument list.
(function_arg_advance_32): Set cfun->machine->arg_reg_available
to false if cum->nregs <= 0.
* config/i386/i386.h (machine_function): Add arg_reg_available.

gcc/testsuite/

PR target/66819
* gcc.target/i386/pr66819-1.c: New test.
* gcc.target/i386/pr66819-2.c: Likewise.
* gcc.target/i386/pr66819-3.c: Likewise.
* gcc.target/i386/pr66819-4.c: Likewise.
* gcc.target/i386/pr66819-5.c: Likewise.

From-SVN: r225688

9 years agoc-ada-spec.h (cpp_operation): Revert latest change.
Eric Botcazou [Fri, 10 Jul 2015 19:19:39 +0000 (19:19 +0000)]
c-ada-spec.h (cpp_operation): Revert latest change.

c-family/
* c-ada-spec.h (cpp_operation): Revert latest change.
* c-ada-spec.c (print_ada_declaration): Likewise.  Skip implicit
constructors and destructors.
cp/
* decl2.c (cpp_check): Revert latest change.

From-SVN: r225686

9 years agosse.md (movdi_to_sse): Use gen_lowpart and gen_higpart instead of gen_rtx_SUBREG.
Uros Bizjak [Fri, 10 Jul 2015 16:01:30 +0000 (18:01 +0200)]
sse.md (movdi_to_sse): Use gen_lowpart and gen_higpart instead of gen_rtx_SUBREG.

* config/i386/sse.md (movdi_to_sse): Use gen_lowpart
and gen_higpart instead of gen_rtx_SUBREG.
* config/i386/i386.md
(floatdi<X87MODEF:mode>2_i387_with_xmm splitter): Ditto.
(read-modify peephole2): Use gen_lowpart instead of
gen_rtx_SUBREG for operand 5.

From-SVN: r225682

9 years agopr66703.c: New test.
Uros Bizjak [Fri, 10 Jul 2015 15:44:22 +0000 (17:44 +0200)]
pr66703.c: New test.

* gcc.target/i386/pr66703.c: New test.

From-SVN: r225681

9 years agore PR target/66703 ([4.9/5/6] gcc.target/i386/readeflags-1.c aborts on -march=i586...
Uros Bizjak [Fri, 10 Jul 2015 15:32:48 +0000 (17:32 +0200)]
re PR target/66703 ([4.9/5/6] gcc.target/i386/readeflags-1.c aborts on -march=i586 or on -miamcu)

PR target/66703
* gcc.target/i386/readeflags-1.c (readeflags_test): Declare with
__attribute__((noinline, noclone)).  Change "x" to "volatile char"
type to prevent possible flag-clobbering zero-extensions.

From-SVN: r225680

9 years agore PR c++/60842 (In-class initializer causes a strange error)
Paolo Carlini [Fri, 10 Jul 2015 14:44:43 +0000 (14:44 +0000)]
re PR c++/60842 (In-class initializer causes a strange error)

2015-07-10  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/60842
* g++.dg/cpp0x/nsdmi-template15.C: New.

From-SVN: r225679

9 years agogen-mul-tables.cc (main): Change include list for generated files.
Andrew MacLeod [Fri, 10 Jul 2015 13:22:45 +0000 (13:22 +0000)]
gen-mul-tables.cc (main): Change include list for generated files.

2015-07-10  Andrew MacLeod  <amacleod@redhat.com>

* config/tilepro/gen-mul-tables.cc (main): Change include list for
generated files.
* config/tilepro/mul-tables.c: Regenerate.
* config/tilegx/mul-tables.c: Regenerate.

From-SVN: r225675

9 years agosv.po: Update.
Richard Biener [Fri, 10 Jul 2015 12:53:05 +0000 (12:53 +0000)]
sv.po: Update.

2015-07-10  Richard Biener  <rguenther@suse.de>

* sv.po: Update.
* de.po: Likewise.

From-SVN: r225673

9 years agofold-const.c (distribute_bit_expr): Remove.
Richard Biener [Fri, 10 Jul 2015 12:31:05 +0000 (12:31 +0000)]
fold-const.c (distribute_bit_expr): Remove.

2015-07-10  Richard Biener  <rguenther@suse.de>

* fold-const.c (distribute_bit_expr): Remove.
(fold_binary_loc): Move simplifying (A & C1) + (B & C2)
to (A & C1) | (B & C2), distributing (A & B) | (A & C)
to A & (B | C) and simplifying A << C1 << C2 to ...
* match.pd: ... patterns here.

From-SVN: r225670

9 years ago[AArch64] Mark GOT related MEM rtx as const to help RTL loop IV
Jiong Wang [Fri, 10 Jul 2015 12:20:54 +0000 (12:20 +0000)]
[AArch64] Mark GOT related MEM rtx as const to help RTL loop IV

  gcc/
    * config/aarch64/aarch64.c (aarch64_load_symref_appropriately): Mark mem
    as READONLY and NOTRAP for PIC symbol.

  gcc/testsuite/
    * gcc.target/aarch64/got_mem_hoist_1.c: New test.

From-SVN: r225669

9 years agogimple-predict.h: New file.
Andrew MacLeod [Fri, 10 Jul 2015 12:13:06 +0000 (12:13 +0000)]
gimple-predict.h: New file.

2015-07-10  Andrew MacLeod  <amacleod@redhat.com>

* gimple-predict.h: New file.
(gimple_predict_predictor, gimple_predict_set_predictor,
gimple_predict_outcome, gimple_predict_set_outcome,
gimple_build_predict): Relocate here.
* gimple.h (gimple_predict_predictor, gimple_predict_set_predictor,
gimple_predict_outcome, gimple_predict_set_outcome): Move to
gimple-predict.h.
* gimple.c (gimple_build_predict): Move to gimple-predict.h
* basic-block.h: Don't include cfghooks.h.
* backend.h: Don't include predict.h.
* cfghooks.h: Include predict.h.
* gimple-pretty-print.c: Include gimple-predict.h.
* gimplify.c: Likwise.
* predict.c: Adjust includes.
* tree-inline.c: Likewise.
* asan.c: Likewise.
* auto-inc-dec.c: Likewise.
* auto-profile.c: Likewise.
* bb-reorder.c: Likewise.
* builtins.c: Likewise.
* caller-save.c: Likewise.
* calls.c: Likewise.
* cfganal.c: Likewise.
* cfgbuild.c: Likewise.
* cfg.c: Likewise.
* cfgcleanup.c: Likewise.
* cfgexpand.c: Likewise.
* cfghooks.c: Likewise.
* cfgloopanal.c: Likewise.
* cfgloop.c: Likewise.
* cfgloopmanip.c: Likewise.
* cfgrtl.c: Likewise.
* cgraph.c: Likewise.
* cgraphunit.c: Likewise.
* combine.c: Likewise.
* cprop.c: Likewise.
* cse.c: Likewise.
* dce.c: Likewise.
* dojump.c: Likewise.
* dse.c: Likewise.
* except.c: Likewise.
* expmed.c: Likewise.
* expr.c: Likewise.
* final.c: Likewise.
* fold-const.c: Likewise.
* function.c: Likewise.
* fwprop.c: Likewise.
* gcc-plugin.h: Likewise.
* gcse.c: Likewise.
* genattrtab.c: Likewise.
* genemit.c: Likewise.
* gengtype.c: Likewise.
* genopinit.c: Likewise.
* genoutput.c: Likewise.
* genpreds.c: Likewise.
* genrecog.c: Likewise.
* gimple-fold.c: Likewise.
* gimple-iterator.c: Likewise.
* gimple-ssa-isolate-paths.c: Likewise.
* gimple-ssa-strength-reduction.c: Likewise.
* graph.c: Likewise.
* graphite-blocking.c: Likewise.
* graphite.c: Likewise.
* graphite-dependences.c: Likewise.
* graphite-interchange.c: Likewise.
* graphite-isl-ast-to-gimple.c: Likewise.
* graphite-optimize-isl.c: Likewise.
* graphite-poly.c: Likewise.
* graphite-scop-detection.c: Likewise.
* graphite-sese-to-poly.c: Likewise.
* haifa-sched.c: Likewise.
* ifcvt.c: Likewise.
* internal-fn.c: Likewise.
* ipa-cp.c: Likewise.
* ipa-profile.c: Likewise.
* ipa-split.c: Likewise.
* ipa-utils.c: Likewise.
* ira-build.c: Likewise.
* ira-color.c: Likewise.
* ira-conflicts.c: Likewise.
* ira-costs.c: Likewise.
* ira-emit.c: Likewise.
* ira-lives.c: Likewise.
* jump.c: Likewise.
* loop-doloop.c: Likewise.
* loop-init.c: Likewise.
* loop-invariant.c: Likewise.
* loop-unroll.c: Likewise.
* lower-subreg.c: Likewise.
* lra-assigns.c: Likewise.
* lra.c: Likewise.
* lra-coalesce.c: Likewise.
* lra-constraints.c: Likewise.
* lra-lives.c: Likewise.
* lto-cgraph.c: Likewise.
* lto-streamer-in.c: Likewise.
* mode-switching.c: Likewise.
* modulo-sched.c: Likewise.
* omp-low.c: Likewise.
* optabs.c: Likewise.
* passes.c: Likewise.
* postreload.c: Likewise.
* postreload-gcse.c: Likewise.
* profile.c: Likewise.
* recog.c: Likewise.
* regstat.c: Likewise.
* reload1.c: Likewise.
* reorg.c: Likewise.
* rtlanal.c: Likewise.
* sched-ebb.c: Likewise.
* sel-sched-ir.c: Likewise.
* sese.c: Likewise.
* shrink-wrap.c: Likewise.
* simplify-rtx.c: Likewise.
* stmt.c: Likewise.
* store-motion.c: Likewise.
* tracer.c: Likewise.
* trans-mem.c: Likewise.
* tree-call-cdce.c: Likewise.
* tree-cfg.c: Likewise.
* tree-cfgcleanup.c: Likewise.
* tree-chkp.c: Likewise.
* tree-complex.c: Likewise.
* tree-eh.c: Likewise.
* tree-if-conv.c: Likewise.
* tree-loop-distribution.c: Likewise.
* tree-outof-ssa.c: Likewise.
* tree-parloops.c: Likewise.
* tree-predcom.c: Likewise.
* tree-pretty-print.c: Likewise.
* tree-profile.c: Likewise.
* tree-sra.c: Likewise.
* tree-ssa.c: Likewise.
* tree-ssa-coalesce.c: Likewise.
* tree-ssa-dce.c: Likewise.
* tree-ssa-dom.c: Likewise.
* tree-ssa-forwprop.c: Likewise.
* tree-ssa-ifcombine.c: Likewise.
* tree-ssa-loop-ch.c: Likewise.
* tree-ssa-loop-im.c: Likewise.
* tree-ssa-loop-ivcanon.c: Likewise.
* tree-ssa-loop-ivopts.c: Likewise.
* tree-ssa-loop-manip.c: Likewise.
* tree-ssa-loop-prefetch.c: Likewise.
* tree-ssa-loop-unswitch.c: Likewise.
* tree-ssa-math-opts.c: Likewise.
* tree-ssa-phiopt.c: Likewise.
* tree-ssa-pre.c: Likewise.
* tree-ssa-reassoc.c: Likewise.
* tree-ssa-sink.c: Likewise.
* tree-ssa-tail-merge.c: Likewise.
* tree-ssa-threadedge.c: Likewise.
* tree-ssa-threadupdate.c: Likewise.
* tree-switch-conversion.c: Likewise.
* tree-tailcall.c: Likewise.
* tree-vect-data-refs.c: Likewise.
* tree-vect-loop.c: Likewise.
* tree-vect-loop-manip.c: Likewise.
* tree-vectorizer.c: Likewise.
* tree-vrp.c: Likewise.
* ubsan.c: Likewise.
* value-prof.c: Likewise.
* varasm.c: Likewise.
* var-tracking.c: Likewise.
* config/aarch64/aarch64-builtins.c: Likewise.
* config/aarch64/aarch64.c: Likewise.
* config/aarch64/cortex-a57-fma-steering.c: Likewise.
* config/alpha/alpha.c: Likewise.
* config/arc/arc.c: Likewise.
* config/arm/arm.c: Likewise.
* config/avr/avr.c: Likewise.
* config/bfin/bfin.c: Likewise.
* config/c6x/c6x.c: Likewise.
* config/cr16/cr16.c: Likewise.
* config/cris/cris.c: Likewise.
* config/darwin.c: Likewise.
* config/darwin-c.c: Likewise.
* config/epiphany/epiphany.c: Likewise.
* config/epiphany/mode-switch-use.c: Likewise.
* config/epiphany/resolve-sw-modes.c: Likewise.
* config/fr30/fr30.c: Likewise.
* config/frv/frv.c: Likewise.
* config/ft32/ft32.c: Likewise.
* config/h8300/h8300.c: Likewise.
* config/i386/i386.c: Likewise.
* config/i386/winnt.c: Likewise.
* config/ia64/ia64.c: Likewise.
* config/iq2000/iq2000.c: Likewise.
* config/lm32/lm32.c: Likewise.
* config/m32c/m32c.c: Likewise.
* config/m32r/m32r.c: Likewise.
* config/m68k/m68k.c: Likewise.
* config/mcore/mcore.c: Likewise.
* config/mep/mep.c: Likewise.
* config/microblaze/microblaze.c: Likewise.
* config/mips/mips.c: Likewise.
* config/mmix/mmix.c: Likewise.
* config/mn10300/mn10300.c: Likewise.
* config/moxie/moxie.c: Likewise.
* config/msp430/msp430.c: Likewise.
* config/nds32/nds32.c: Likewise.
* config/nds32/nds32-cost.c: Likewise.
* config/nds32/nds32-fp-as-gp.c: Likewise.
* config/nds32/nds32-intrinsic.c: Likewise.
* config/nds32/nds32-isr.c: Likewise.
* config/nds32/nds32-md-auxiliary.c: Likewise.
* config/nds32/nds32-memory-manipulation.c: Likewise.
* config/nds32/nds32-pipelines-auxiliary.c: Likewise.
* config/nds32/nds32-predicates.c: Likewise.
* config/nios2/nios2.c: Likewise.
* config/nvptx/nvptx.c: Likewise.
* config/pa/pa.c: Likewise.
* config/pdp11/pdp11.c: Likewise.
* config/rl78/rl78.c: Likewise.
* config/rs6000/rs6000.c: Likewise.
* config/rx/rx.c: Likewise.
* config/s390/s390.c: Likewise.
* config/sh/sh.c: Likewise.
* config/sh/sh-mem.cc: Likewise.
* config/sh/sh_optimize_sett_clrt.cc: Likewise.
* config/sh/sh_treg_combine.cc: Likewise.
* config/sparc/sparc.c: Likewise.
* config/spu/spu.c: Likewise.
* config/stormy16/stormy16.c: Likewise.
* config/tilegx/tilegx.c: Likewise.
* config/tilepro/tilepro.c: Likewise.
* config/v850/v850.c: Likewise.
* config/vax/vax.c: Likewise.
* config/visium/visium.c: Likewise.
* config/xtensa/xtensa.c: Likewise.

java
2015-07-10  Andrew MacLeod  <amacleod@redhat.com>

* java-gimplify.c: Include cfghooks.h rather than predict.h.

lto
2015-07-10  Andrew MacLeod  <amacleod@redhat.com>

* lto.c: Include cfghooks.h rather than predict.h.

From-SVN: r225668

9 years agoattr_thumb.c: Skip if Thumb is not supported.
Christophe Lyon [Fri, 10 Jul 2015 12:02:13 +0000 (12:02 +0000)]
attr_thumb.c: Skip if Thumb is not supported.

2015-07-10  Christophe Lyon  <christophe.lyon@linaro.org>

* gcc.target/arm/attr_thumb.c: Skip if Thumb is not supported.
* gcc.target/arm/flip-thumb.c: Likewise.

From-SVN: r225665

9 years agogenmatch.c (dt_node::gen_kids_1): Fix indenting of case labels.
Richard Biener [Fri, 10 Jul 2015 11:59:00 +0000 (11:59 +0000)]
genmatch.c (dt_node::gen_kids_1): Fix indenting of case labels.

2015-07-10  Richard Biener  <rguenther@suse.de>

* genmatch.c (dt_node::gen_kids_1): Fix indenting of
case labels.
(decision_tree::gen_gimple): Likewise.
(decision_tree::gen_generic): Likewise.

From-SVN: r225663

9 years agore PR target/66813 (gcc.target/i386/asm-flag-5.c failed with -march=pentium)
Uros Bizjak [Fri, 10 Jul 2015 11:56:48 +0000 (13:56 +0200)]
re PR target/66813 (gcc.target/i386/asm-flag-5.c failed with -march=pentium)

PR target/66813
* config/i386/i386.c (ix86_md_asm_adjust): Emit movstrictqi
sequence for TARGET_ZERO_EXTEND_WITH_AND targets.

testsuite/ChangeLog:

PR target/66813
* gcc.target/i386/pr66813.c: New test.

From-SVN: r225662

9 years agore PR middle-end/66820 (internal compiler error: in get_expr_operands, at tree-ssa...
Jakub Jelinek [Fri, 10 Jul 2015 10:26:19 +0000 (12:26 +0200)]
re PR middle-end/66820 (internal compiler error: in get_expr_operands, at tree-ssa-operands.c:910)

PR middle-end/66820
* gimplify.c (maybe_fold_stmt): Don't fold in ORT_PARALLEL
or ORT_TASK contexts.
* omp-low.c (lower_omp): Call fold_stmt even if taskreg_nesting_level
is non-zero.

* gcc.dg/gomp/pr66820.c: New test.

From-SVN: r225661

9 years ago[obvious] Fix typos above expand_cond_expr_using_cmove
Kyrylo Tkachov [Fri, 10 Jul 2015 09:45:32 +0000 (09:45 +0000)]
[obvious] Fix typos above expand_cond_expr_using_cmove

* expr.c (expand_cond_expr_using_cmove): Fix typos in comment
above function.

From-SVN: r225659

9 years agore PR c++/65592 (internal compiler error: Segmentation fault when using non-existent...
Paolo Carlini [Fri, 10 Jul 2015 09:33:34 +0000 (09:33 +0000)]
re PR c++/65592 (internal compiler error: Segmentation fault when using non-existent enum class enumerator)

2015-07-10  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/65592
* g++.dg/cpp0x/scoped_enum6.C: New.

From-SVN: r225658

9 years agoInsert new bound in try_transform_to_exit_first_loop_alt
Tom de Vries [Fri, 10 Jul 2015 08:25:18 +0000 (08:25 +0000)]
Insert new bound in try_transform_to_exit_first_loop_alt

2015-07-10  Tom de Vries  <tom@codesourcery.com>

* tree-parloops.c (try_transform_to_exit_first_loop_alt): If not found,
insert nit + 1 bound.

* testsuite/libgomp.fortran/parloops-exit-first-loop-alt-2.f95: New test.
* testsuite/libgomp.fortran/parloops-exit-first-loop-alt.f95: New test.

* gfortran.dg/parloops-exit-first-loop-alt-2.f95: New test.
* gfortran.dg/parloops-exit-first-loop-alt.f95: New test.

From-SVN: r225655

9 years agotree-if-conv.c (if_convertible_gimple_assign_stmt_p): Use ifcvt_could_trap_p also...
Richard Biener [Fri, 10 Jul 2015 08:20:15 +0000 (08:20 +0000)]
tree-if-conv.c (if_convertible_gimple_assign_stmt_p): Use ifcvt_could_trap_p also when not flag_tree_loop_if_convert_stores.

2015-07-10  Richard Biener  <rguenther@suse.de>

* tree-if-conv.c (if_convertible_gimple_assign_stmt_p):
Use ifcvt_could_trap_p also when not flag_tree_loop_if_convert_stores.
(if_convertible_loop_p_1): For this always compute bb predicates.
(if_convertible_loop_p): And free them.

From-SVN: r225654

9 years agoipa-icf.c: Fix typo in dump message
Bernhard Reutner-Fischer [Fri, 10 Jul 2015 07:56:15 +0000 (09:56 +0200)]
ipa-icf.c: Fix typo in dump message

2015-07-10  Bernhard Reutner-Fischer  <aldot@gcc.gnu.org>

* ipa-icf.c (sem_item_optimizer::do_congruence_step): Fix typo
in dump message.

From-SVN: r225653

9 years agore PR tree-optimization/66823 (-ftree-loop-if-convert-stores miscompiles gfortran...
Richard Biener [Fri, 10 Jul 2015 07:53:06 +0000 (07:53 +0000)]
re PR tree-optimization/66823 (-ftree-loop-if-convert-stores miscompiles gfortran.dg/elemental_optional_args_3.f90)

2015-07-10  Richard Biener  <rguenther@suse.de>

PR tree-optimization/66823
* tree-if-conv.c (memrefs_read_or_written_unconditionally): Fix
inverted predicate.

* gcc.dg/vect/pr61194.c: Remove -ftree-loop-if-convert-stores
which should not be necessary.  XFAIL.

From-SVN: r225652

9 years agore PR c++/64848 (G++ internal compiler error with templated lambdas capturing variable)
Paolo Carlini [Fri, 10 Jul 2015 02:44:39 +0000 (02:44 +0000)]
re PR c++/64848 (G++ internal compiler error with templated lambdas capturing variable)

2015-07-09  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/64848
* g++.dg/cpp0x/lambda/lambda-ice14.C: New.

From-SVN: r225648

9 years agoDaily bump.
GCC Administrator [Fri, 10 Jul 2015 00:16:12 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r225646

9 years agomti-linux.h (MIPS_SYSVERSION_SPEC): Update to handle mips[32|64]r3 and mips[32|64]r5.
Steve Ellcey [Thu, 9 Jul 2015 22:17:22 +0000 (22:17 +0000)]
mti-linux.h (MIPS_SYSVERSION_SPEC): Update to handle mips[32|64]r3 and mips[32|64]r5.

2015-07-09  Steve Ellcey  <sellcey@imgtec.com>

* config/mips/mti-linux.h (MIPS_SYSVERSION_SPEC): Update
to handle mips[32|64]r3 and mips[32|64]r5.

From-SVN: r225643

9 years agore PR middle-end/66633 (ICE on valid "verify_gimple failed" with OpenMP)
Jakub Jelinek [Thu, 9 Jul 2015 21:14:11 +0000 (23:14 +0200)]
re PR middle-end/66633 (ICE on valid "verify_gimple failed" with OpenMP)

PR middle-end/66633
* tree-nested.c (get_static_chain): Or in a flag into
info->static_chain_added.
(get_frame_field, get_nonlocal_debug_decl): Likewise.
(convert_nonlocal_omp_clauses, convert_local_omp_clauses): Revert
2015-07-01 changes.
(convert_tramp_reference_stmt): If a frame_decl or chain_decl
is needed newly inside of GIMPLE_OMP_{PARALLEL,TASK,TARGET} body,
add it to clauses.

* gcc.dg/gomp/pr66633-1.c: New test.
* gcc.dg/gomp/pr66633-2.c: New test.
* gcc.dg/gomp/pr66633-3.c: New test.
* gcc.dg/gomp/pr66633-4.c: New test.

From-SVN: r225638

9 years agore PR tree-optimization/66718 (Non-invariant ADDR_EXPR not vectorized)
Jakub Jelinek [Thu, 9 Jul 2015 21:11:28 +0000 (23:11 +0200)]
re PR tree-optimization/66718 (Non-invariant ADDR_EXPR not vectorized)

PR tree-optimization/66718
* tree-vect-stmts.c (struct simd_call_arg_info): Add simd_lane_linear
field.
(vect_simd_lane_linear): New function.
(vectorizable_simd_clone_call): Support using linear arguments for
addresses of arrays elements indexed by GOMP_SIMD_LANE result.

From-SVN: r225637

9 years agotarget-supports.exp (check_effective_target_pie): Add *-*-dragonfly*
John Marino [Thu, 9 Jul 2015 21:04:41 +0000 (21:04 +0000)]
target-supports.exp (check_effective_target_pie): Add *-*-dragonfly*

2015-07-09  John Marino  <gnugcc@marino.st>

        * lib/target-supports.exp (check_effective_target_pie):
Add *-*-dragonfly*

From-SVN: r225636

9 years agoAdjust variable shift costs for IA MCU
H.J. Lu [Thu, 9 Jul 2015 20:35:56 +0000 (20:35 +0000)]
Adjust variable shift costs for IA MCU

We reduce code size for IA MCU by adjusting variable shift costs for IA
MCU

PR target/66821
* config/i386/i386.c (iamcu_cost): Adjust variable shift costs.

From-SVN: r225635

9 years agors6000-protos.h (rs6000_secondary_reload_memory): Use machine mode, not enum machine_...
Michael Meissner [Thu, 9 Jul 2015 18:57:06 +0000 (18:57 +0000)]
rs6000-protos.h (rs6000_secondary_reload_memory): Use machine mode, not enum machine_mode in the prototype.

2015-07-09  Michael Meissner  <meissner@linux.vnet.ibm.com>

* config/rs6000/rs6000-protos.h (rs6000_secondary_reload_memory):
Use machine mode, not enum machine_mode in the prototype.

* config/rs6000/rs6000.h (FLOAT128_IEEE_P): New helper macros to
classify 128-bit floating point support.
(FLOAT128_IBM_P): Likewise.
(FLOAT128_VECTOR_P): Likewise.
(FLOAT128_2REG_P): Likewise.
(SCALAR_FLOAT_MODE_NOT_VECTOR_P): Likewise.
(SLOW_UNALIGNED_ACCESS): Add IEEE 128-bit floating point support.
(HARD_REGNO_CALLER_SAVE_MODE): Likewise.
(HARD_REGNO_CALL_PART_CLOBBERED): Likewise.

* config/rs6000/rs6000.c (rs6000_hard_regno_nregs_internal): Drop
tests against TFmode/TDmode, since those modes do not use VSX
addresses.
(rs6000_hard_regno_mode_ok): Add IEEE 128-bit floating point
support.
(rs6000_init_hard_regno_mode_ok): Use new helper macros instead of
tests against TFmode, etc.
(invalid_e500_subreg): Add tests against IFmode/KFmode.
(reg_offset_addressing_ok_p): Likewise.
(rs6000_legitimate_offset_address_p): Likewise.
(rs6000_legitimize_address): Likewise.
(rs6000_legitimize_reload_address): Likewise.
(rs6000_legitimate_address_p): Clean up tests against TFmode and
TDmode to use the new helper macros, which will include IFmode and
KFmode.
(rs6000_emit_move): Likewise.
(rs6000_darwin64_record_arg_recurse): Likewise.
(print_operand): Likewise.
(rs6000_member_type_forces_blk): Treat IEEE 128-bit floating point
that uses a single vector register as a vector and not as a
floating point register in terms of the calling sequence.
(rs6000_discover_homogeneous_aggregate): Likewise.
(rs6000_return_in_memory): Likewise.
(init_cumulative_args): Likewise.
(rs6000_function_arg_boundary): Likewise.
(rs6000_function_arg_advance_1): Likewise.
(rs6000_function_arg): Likewise.
(rs6000_pass_by_reference): Likewise.
(rs6000_gimplify_va_arg): Likewise.
(rs6000_secondary_reload_memory): Use machine_mode not enum
machine mode.
(rs6000_split_multireg_move): Use new helper macros.
(spe_func_has_64bit_regs_p): Likewise.
(rs6000_output_function_epilogue): Add IFmode/KFmode support.
(output_toc): Use new helper macros.
(rs6000_register_move_cost): Likewise.
(rs6000_function_value): Add IEEE 128-bit floating point calling
sequence support.
(rs6000_libcall_value): Likewise.
(rs6000_scalar_mode_supported_p): Add support for IEEE 128-bit
floating point support.
(rs6000_vector_mode_supported_p): Likewise.

From-SVN: r225632

9 years agors6000-protos.h (rs6000_secondary_reload_memory): Use machine mode, not enum machine_...
Michael Meissner [Thu, 9 Jul 2015 18:55:01 +0000 (18:55 +0000)]
rs6000-protos.h (rs6000_secondary_reload_memory): Use machine mode, not enum machine_mode in the prototype.

2015-07-09  Michael Meissner  <meissner@linux.vnet.ibm.com>

* config/rs6000/rs6000-protos.h (rs6000_secondary_reload_memory):
Use machine mode, not enum machine_mode in the prototype.

* config/rs6000/rs6000.h (FLOAT128_IEEE_P): New helper macros to
classify 128-bit floating point support.
(FLOAT128_IBM_P): Likewise.
(FLOAT128_VECTOR_P): Likewise.
(FLOAT128_2REG_P): Likewise.
(SCALAR_FLOAT_MODE_NOT_VECTOR_P): Likewise.
(SLOW_UNALIGNED_ACCESS): Add IEEE 128-bit floating point support.
(HARD_REGNO_CALLER_SAVE_MODE): Likewise.
(HARD_REGNO_CALL_PART_CLOBBERED): Likewise.

* config/rs6000/rs6000.c (rs6000_hard_regno_nregs_internal): Drop
tests against TFmode/TDmode, since those modes do not use VSX
addresses.
(rs6000_hard_regno_mode_ok): Add IEEE 128-bit floating point
support.
(rs6000_init_hard_regno_mode_ok): Use new helper macros instead of
tests against TFmode, etc.
(invalid_e500_subreg): Add tests against IFmode/KFmode.
(reg_offset_addressing_ok_p): Likewise.
(rs6000_legitimate_offset_address_p): Likewise.
(rs6000_legitimize_address): Likewise.
(rs6000_legitimize_reload_address): Likewise.
(rs6000_legitimate_address_p): Clean up tests against TFmode and
TDmode to use the new helper macros, which will include IFmode and
KFmode.
(rs6000_emit_move): Likewise.
(rs6000_darwin64_record_arg_recurse): Likewise.
(print_operand): Likewise.
(rs6000_member_type_forces_blk): Treat IEEE 128-bit floating point
that uses a single vector register as a vector and not as a
floating point register in terms of the calling sequence.
(rs6000_discover_homogeneous_aggregate): Likewise.
(rs6000_return_in_memory): Likewise.
(init_cumulative_args): Likewise.
(rs6000_function_arg_boundary): Likewise.
(rs6000_function_arg_advance_1): Likewise.
(rs6000_function_arg): Likewise.
(rs6000_pass_by_reference): Likewise.
(rs6000_gimplify_va_arg): Likewise.
(rs6000_secondary_reload_memory): Use machine_mode not enum
machine mode.
(rs6000_split_multireg_move): Use new helper macros.
(spe_func_has_64bit_regs_p): Likewise.
(rs6000_output_function_epilogue): Add IFmode/KFmode support.
(output_toc): Use new helper macros.
(rs6000_register_move_cost): Likewise.
(rs6000_function_value): Add IEEE 128-bit floating point calling
sequence support.
(rs6000_libcall_value): Likewise.
(rs6000_scalar_mode_supported_p): Add support for IEEE 128-bit
floating point support.
(rs6000_vector_mode_supported_p): Likewise.

From-SVN: r225631

9 years agopt.c (instantiation_dependent_r): Call value_dependent_expression_p.
Jason Merrill [Thu, 9 Jul 2015 17:50:16 +0000 (13:50 -0400)]
pt.c (instantiation_dependent_r): Call value_dependent_expression_p.

* pt.c (instantiation_dependent_r) [TRAIT_EXPR]: Call
value_dependent_expression_p.

From-SVN: r225622

9 years agocp-tree.h (struct cp_parameter_declarator): Rename ellipsis_p to template_parameter_p...
Jason Merrill [Thu, 9 Jul 2015 17:50:11 +0000 (13:50 -0400)]
cp-tree.h (struct cp_parameter_declarator): Rename ellipsis_p to template_parameter_pack_p.

* cp-tree.h (struct cp_parameter_declarator): Rename ellipsis_p to
template_parameter_pack_p.
* parser.c (declarator_can_be_parameter_pack): False if
parameter_pack_p is set.
(make_parameter_declarator): Add template_parameter_pack_p parm.
(cp_parser_template_parameter): Remove parameter pack parsing.
(cp_parser_parameter_declaration): Handle all parameter packs.
Tweak default argument permerror.

From-SVN: r225621

9 years ago* parser.c (cp_parser_default_type_template_argument)
Andrew Sutton [Thu, 9 Jul 2015 17:50:06 +0000 (17:50 +0000)]
* parser.c (cp_parser_default_type_template_argument)
(cp_parser_default_template_template_argument): Factor out from
cp_parser_type_parameter.

From-SVN: r225620

9 years agore PR rtl-optimization/66782 (Unable to run 64-bit wine after MS->SYSV register changes)
Vladimir Makarov [Thu, 9 Jul 2015 15:39:53 +0000 (15:39 +0000)]
re PR rtl-optimization/66782 (Unable to run 64-bit wine after MS->SYSV register changes)

2015-07-09  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/66782
* lra-int.h (struct lra_insn_recog_data): Add comment about
clobbered hard regs for arg_hard_regs.
* lra.c (lra_set_insn_recog_data): Add clobbered hard regs.
* lra-lives.c (process_bb_lives): Process clobbered hard regs.
Add condition for processing used hard regs.
* lra-constraints.c (update_ebb_live_info, inherit_in_ebb):
Process clobbered hard regs.

From-SVN: r225618

9 years agogenmatch.c (fprintf_indent): New function.
Michael Matz [Thu, 9 Jul 2015 15:19:46 +0000 (15:19 +0000)]
genmatch.c (fprintf_indent): New function.

* genmatch.c (fprintf_indent): New function.
(operand::gen_transform): Add indent parameter.
(expr::gen_transform, c_expr::gen_transform,
capture::gen_transform): Ditto and use fprintf_indent.
(dt_node::gen, dt_node::gen_kids, dt_node::gen_kids_1): Ditto.
(dt_operand::gen, dt_operand::gen_predicate,
dt_operand::gen_match_op, dt_operand::gen_gimple_expr,
dt_operand::gen_generic_expr, dt_simplify::gen): Ditto.
(decision_tree::gen_gimple): Adjust calls and indent generated
code.
(decision_tree::gen_generic): Ditto.
(write_predicate): Ditto.

From-SVN: r225617

9 years agore PR target/66814 (ICE: gcc.target/i386/avx512f-klogic-2.c)
Uros Bizjak [Thu, 9 Jul 2015 15:18:44 +0000 (17:18 +0200)]
re PR target/66814 (ICE: gcc.target/i386/avx512f-klogic-2.c)

PR target/66814
* config/i386/predicates.md (nonimmediate_gr_operand): New predicate.
* config/i386/i386.md (not peephole2): Use nonimmediate_gr_operand.
(varous peephole2s): Use {GENERAL,SSE,MMX}_REGNO_P instead of
{GENERAL_SSE_MMX}_REG_P where appropriate.

testsuite/ChangeLog:

PR target/66814
* gcc.target/i386/pr66814.c: New test.

From-SVN: r225616

9 years agotypeck.c (warn_args_num): Rename to error_args_num.
Paolo Carlini [Thu, 9 Jul 2015 15:14:10 +0000 (15:14 +0000)]
typeck.c (warn_args_num): Rename to error_args_num.

2015-07-09  Paolo Carlini  <paolo.carlini@oracle.com>

* typeck.c (warn_args_num): Rename to error_args_num.
(convert_arguments): Adjust calls.

From-SVN: r225615

9 years agogetruntime.c (RUSAGE_SELF): Define if not already defined.
Uros Bizjak [Thu, 9 Jul 2015 15:06:00 +0000 (17:06 +0200)]
getruntime.c (RUSAGE_SELF): Define if not already defined.

* getruntime.c (RUSAGE_SELF): Define if not already defined.
(get_runtime): Use RUSAGE_SELF as argument 1 of getrusage call.

From-SVN: r225614

9 years agofnmul-1.c: Fix whitespace.
Szabolcs Nagy [Thu, 9 Jul 2015 14:37:42 +0000 (14:37 +0000)]
fnmul-1.c: Fix whitespace.

2015-07-09  Szabolcs Nagy  <szabolcs.nagy@arm.com>

* gcc.target/aarch64/fnmul-1.c: Fix whitespace.
* gcc.target/aarch64/fnmul-2.c: Likewise.
* gcc.target/aarch64/fnmul-3.c: Likewise.
* gcc.target/aarch64/fnmul-4.c: Likewise.

From-SVN: r225613

9 years agolto-streamer.h: Don't include target.h and alloc-pool.h.
Andrew MacLeod [Thu, 9 Jul 2015 14:24:20 +0000 (14:24 +0000)]
lto-streamer.h: Don't include target.h and alloc-pool.h.

2015-07-09  Andrew MacLeod  <amacleod@redhat.com>

* lto-streamer.h: Don't include target.h and alloc-pool.h.
* builtins.c: Adjust includes.
* gimple.c: Likewise.
* ipa-icf.c: Likewise.
* lto-opts.c: Likewise.
* ipa-reference.c: Likewise.
* lto-section-out.c: Likewise.
* lto-streamer-in.c: Likewise.
* lto-streamer-out.c: Likewise.
* opts-global.c: Likewise.
* symtab.c: Likewise.
* tree-chkp.c: Likewise.
* tree-ssa-live.c: Likewise.
* tree-streamer-in.c: Likewise.
* tree-streamer-out.c: Likewise.
* config/darwin.c: Likewise.
* config/i386/winnt.c: Likewise.

cp
2015-07-09  Andrew MacLeod  <amacleod@redhat.com>

* cp-ubsan.c: Don't include alloc-pool.h or lto-streamer.h.

lto
2015-07-09  Andrew MacLeod  <amacleod@redhat.com>
* lto-lang.c: Adjust includes of target.h, alloc-pool.h and
lto-streamer.h.
* lto-object.c: Likewise.
* lto-partition.c: Likewise.
* lto-symtab.c: Likewise.

From-SVN: r225612

9 years agogenmatch.c (struct expr): Add force_single_use flag.
Richard Biener [Thu, 9 Jul 2015 12:23:22 +0000 (12:23 +0000)]
genmatch.c (struct expr): Add force_single_use flag.

2015-07-09  Richard Biener  <rguenther@suse.de>

* genmatch.c (struct expr): Add force_single_use flag.
(expr::expr): Add copy constructor.
(capture_info::walk_match): Gather force_single_use captures.
(expr::gen_transform): Use possibly NULLified sequence.
(dt_simplify::gen): Apply single-use restrictions by NULLifying
seq if any constrained expr is not single-use.
(parser::parse_expr): Refactor to allow multiple flags.  Handle
's' flag to force an expression have a single-use if the pattern
simplifies to more than one statement.
* match.pd: Convert most single_use conditionals to :s flags.

From-SVN: r225610

9 years agoUpdate config/i386/iamcu.h
H.J. Lu [Thu, 9 Jul 2015 12:11:18 +0000 (12:11 +0000)]
Update config/i386/iamcu.h

Copy ASM_OUTPUT_ALIGNED_BSS, ASM_OUTPUT_MAX_SKIP_ALIGN and
ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX from config/i386/gnu-user.h.

* config/i386/iamcu.h (ASM_OUTPUT_ALIGNED_BSS): New.
(ASM_OUTPUT_MAX_SKIP_ALIGN): Likewise.
(ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX): Likewise.

From-SVN: r225609

9 years agoflags.h: Don't include flag-types.h or options.h.
Andrew MacLeod [Thu, 9 Jul 2015 11:27:35 +0000 (11:27 +0000)]
flags.h: Don't include flag-types.h or options.h.

2015-07-09  Andrew MacLeod  <amacleod@redhat.com>

* flags.h: Don't include flag-types.h or options.h.
* opts-common.c: Adjust includes.
* opts-global.c: Likewise.
* common/config/epiphany/epiphany-common.c: Likewise.

c

* c-array-notation.c: Adjust includes for flags.h changes.
* c-objc-common.c: Likewise.

c-family

* c-common.h: Adjust includes for flags.h changes.
* stub-objc.c: Likewise.

fortran

* arith.c: Adjust includes for flags.h changes.
* array.c: Likewise.
* check.c: Likewise.
* decl.c: Likewise.
* error.c: Likewise.
* expr.c: Likewise.
* frontend-passes.c: Likewise.
* interface.c: Likewise.
* intrinsic.c: Likewise.
* io.c: Likewise.
* match.c: Likewise.
* openmp.c: Likewise.
* parse.c: Likewise.
* primary.c: Likewise.
* resolve.c: Likewise.
* scanner.c: Likewise.
* simplify.c: Likewise.
* symbol.c: Likewise.
* target-memory.c: Likewise.

jit
* dummy-frontend.c: Adjust includes for flags.h changes.
* jit-common.h: Likewise.
* jit-playback.c: Likewise.

lto
* lto-lang.c: Adjust includes for flags.h changes.

From-SVN: r225608

9 years agore PR c++/65790 (compilation error : receive std::index_sequence)
Paolo Carlini [Thu, 9 Jul 2015 09:51:09 +0000 (09:51 +0000)]
re PR c++/65790 (compilation error : receive std::index_sequence)

2015-07-09  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/65790
* g++.dg/cpp0x/vt-65790.C: New.

From-SVN: r225607

9 years agoDefine ATTRIBUTE_ALIGNED_VALUE to 32 for IA MCU
H.J. Lu [Thu, 9 Jul 2015 09:28:19 +0000 (09:28 +0000)]
Define ATTRIBUTE_ALIGNED_VALUE to 32 for IA MCU

attribute ((aligned)) should align to the minimum of BIGGEST_ALIGNMENT,
which is 4 bytes for -miamcu.

gcc/

PR target/66818
* config/i386/i386.h (ATTRIBUTE_ALIGNED_VALUE): Defined to 32
for IA MCU.

gcc/testsuite/

PR target/66818
* gcc.target/i386/pr66818.c: New test.

From-SVN: r225606

9 years agoCheck int_size_in_bytes in ix86_return_in_memory
H.J. Lu [Thu, 9 Jul 2015 09:26:47 +0000 (09:26 +0000)]
Check int_size_in_bytes in ix86_return_in_memory

ix86_return_in_memory should check negative return from int_size_in_bytes,
similar to other ports.

gcc/

PR target/66817
* config/i386/i386.c (ix86_return_in_memory): Return true
if int_size_in_bytes returns negative for IA MCU.

gcc/testsuite/

PR target/66817
* gcc.target/i386/pr66817.c: New test.

From-SVN: r225605

9 years agore PR tree-optimization/66718 (Non-invariant ADDR_EXPR not vectorized)
Marek Polacek [Thu, 9 Jul 2015 09:01:51 +0000 (09:01 +0000)]
re PR tree-optimization/66718 (Non-invariant ADDR_EXPR not vectorized)

PR tree-optimization/66718
* Makefile.in (OBJS): Add gimple-laddress.o.
* passes.def: Schedule pass_laddress.
* timevar.def (DEFTIMEVAR): Add TV_GIMPLE_LADDRESS.
* tree-pass.h (make_pass_laddress): Declare.
* gimple-laddress.c: New file.

* gcc.dg/vect/vect-126.c: New test.

From-SVN: r225604

9 years agotoplev.c (compile_file): Reset maximum_field_alignment after parsing.
Richard Biener [Thu, 9 Jul 2015 08:40:25 +0000 (08:40 +0000)]
toplev.c (compile_file): Reset maximum_field_alignment after parsing.

2015-07-08  Richard Biener  <rguenther@suse.de>

* toplev.c (compile_file): Reset maximum_field_alignment after parsing.

From-SVN: r225603

9 years agore PR middle-end/66807 (--enable-libmpx failed)
Richard Biener [Thu, 9 Jul 2015 07:47:38 +0000 (07:47 +0000)]
re PR middle-end/66807 (--enable-libmpx failed)

2015-07-09  Richard Biener  <rguenther@suse.de>

PR tree-optimization/66807
* tree-chkp-opt.c (chkp_opt_fini): Free post dominator info.

From-SVN: r225600

9 years agofunction.c (stack_protect_epilogue): Use if rather than switch for check targetm...
Kito Cheng [Thu, 9 Jul 2015 03:51:21 +0000 (03:51 +0000)]
function.c (stack_protect_epilogue): Use if rather than switch for check targetm.have_stack_protect_test.

2015-07-08  Kito Cheng  <kito.cheng@gmail.com>

* function.c (stack_protect_epilogue): Use if rather than switch for
check targetm.have_stack_protect_test.

From-SVN: r225599

9 years ago*.C: generate dwarf-2 debug information even when dwarf-2 is not the default.
Carlos Sánchez de La Lama [Thu, 9 Jul 2015 03:49:12 +0000 (03:49 +0000)]
*.C: generate dwarf-2 debug information even when dwarf-2 is not the default.

* g++.dg/debug/dwarf2/*.C: generate dwarf-2 debug information
even when dwarf-2 is not the default.

From-SVN: r225598

9 years agoalways define WORD_REGISTER_OPERATIONS
Trevor Saunders [Thu, 9 Jul 2015 02:51:19 +0000 (02:51 +0000)]
always define WORD_REGISTER_OPERATIONS

gcc/ChangeLog:

2015-07-08  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* defaults.h: Provide default for WORD_REGISTER_OPERATIONS.
* config/alpha/alpha.h: Define WORD_REGISTER_OPERATIONS to 1.
* config/arc/arc.h: Likewise.
* config/arm/arm.h: Likewise.
* config/bfin/bfin.h: Likewise.
* config/epiphany/epiphany.h: Likewise.
* config/frv/frv.h: Likewise.
* config/ia64/ia64.h: Likewise.
* config/iq2000/iq2000.h: Likewise.
* config/lm32/lm32.h: Likewise.
* config/m32r/m32r.h: Likewise.
* config/mcore/mcore.h: Likewise.
* config/mep/mep.h: Likewise.
* config/microblaze/microblaze.h: Likewise.
* config/mips/mips.h: Likewise.
* config/mmix/mmix.h: Likewise.
* config/mn10300/mn10300.h: Likewise.
* config/nds32/nds32.h: Likewise.
* config/nios2/nios2.h: Likewise.
* config/pa/pa.h: Likewise.
* config/rl78/rl78.h: Likewise.
* config/sh/sh.h: Likewise.
* config/sparc/sparc.h: Likewise.
* config/stormy16/stormy16.h: Likewise.
* config/tilegx/tilegx.h: Likewise.
* config/tilepro/tilepro.h: Likewise.
* config/v850/v850.h: Likewise.
* config/xtensa/xtensa.h: Likewise.
* doc/tm.texi: Regenerate.
* doc/tm.texi.in: Adjust.
* combine.c (simplify_set): Likewise.
(simplify_comparison): Likewise.
* expr.c (store_constructor): Likewise.
* internal-fn.c (expand_arith_overflow): Likewise.
* reload.c (push_reload): Likewise.
(find_reloads): Likewise.
(find_reloads_subreg_address): Likewise.
* reload1.c (eliminate_regs_1): Likewise.
* rtlanal.c (nonzero_bits1): Likewise.
(num_sign_bit_copies1): Likewise.
* simplify-rtx.c (simplify_truncation): Likewise.

From-SVN: r225597

9 years agoreduce conditional compilation based on AUTO_INC_DEC
Trevor Saunders [Thu, 9 Jul 2015 02:51:09 +0000 (02:51 +0000)]
reduce conditional compilation based on AUTO_INC_DEC

gcc/ChangeLog:

2015-07-08  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* auto-inc-dec.c (pass_inc_dec::execute): Don't check the value
of AUTO_INC_DEC with the preprocessor.
* combine.c (combine_instructions): Likewise.
(can_combine_p): Likewise.
(try_combine): Likewise.
* emit-rtl.c (try_split): Likewise.
* loop-invariant.c (calculate_loop_reg_pressure): Likewise.
* lower-subreg.c (resolve_simple_move): Likewise.
* lra.c (update_inc_notes): Likewise.
* recog.c (asm_operand_ok): Likewise.
(constrain_operands): Likewise.
* regrename.c (scan_rtx_address): Likewise.
* reload.c (update_auto_inc_notes): Likewise.
(reg_inc_found_and_valid_p): Likewise.
* reload1.c (reload): Likewise.
(emit_input_reload_insns): Likewise.
(delete_output_reload): Likewise.
* sched-deps.c (init_insn_reg_pressure_info): Likewise.
* valtrack.c (cleanup_auto_inc_dec): Likewise.

From-SVN: r225596

9 years agoalways define AUTO_INC_DEC
Trevor Saunders [Thu, 9 Jul 2015 02:50:21 +0000 (02:50 +0000)]
always define AUTO_INC_DEC

gcc/ChangeLog:

2015-07-08  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* rtl.h: Always define AUTO_INC_DEC.
* auto-inc-dec.c (pass_inc_dec::execute): Adjust.
* combine.c (combine_instructions): Likewise.
(can_combine_p): Likewise.
(try_combine): Likewise.
* emit-rtl.c (try_split): Likewise.
* loop-invariant.c (calculate_loop_reg_pressure): Likewise.
* lower-subreg.c (resolve_simple_move): Likewise.
* lra.c (update_inc_notes): Likewise.
* recog.c (asm_operand_ok): Likewise.
(constrain_operands): Likewise.
* regrename.c (scan_rtx_address): Likewise.
* reload.c (update_auto_inc_notes): Likewise.
(find_equiv_reg): Likewise.
* reload1.c (reload): Likewise.
(reload_as_needed): Likewise.
(choose_reload_regs): Likewise.
(emit_input_reload_insns): Likewise.
(delete_output_reload): Likewise.
* sched-deps.c (init_insn_reg_pressure_info): Likewise.
* valtrack.c (cleanup_auto_inc_dec): Likewise.

From-SVN: r225595

9 years agouse #if for HARD_FRAME_POINTER_IS_FRAME_POINTER less
Trevor Saunders [Thu, 9 Jul 2015 02:50:14 +0000 (02:50 +0000)]
use #if for HARD_FRAME_POINTER_IS_FRAME_POINTER less

gcc/ChangeLog:

2015-07-08  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* combine.c (can_combine_def_p): Don't check the value of
HARD_FRAME_POINTER_IS_FRAME_POINTER with the preprocessor.
(combinable_i3pat): Likewise.
(mark_used_regs_combine): Likewise.
* regrename.c (rename_chains): Likewise.
* reload.c (find_reloads_address): Likewise.
* sel-sched.c (mark_unavailable_hard_regs): Likewise.

From-SVN: r225594

9 years agoalways define SHORT_IMMEDIATES_SIGN_EXTEND
Trevor Saunders [Thu, 9 Jul 2015 02:50:07 +0000 (02:50 +0000)]
always define SHORT_IMMEDIATES_SIGN_EXTEND

gcc/ChangeLog:

2015-07-08  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* combine.c (update_rsp_from_reg_equal): Don't check if
SHORT_IMMEDIATES_SIGN_EXTEND is defined.
(reg_nonzero_bits_for_combine): Likewise.
* config/alpha/alpha.h: Define SHORT_IMMEDIATES_SIGN_EXTEND to
1.
* config/frv/frv.h: Likewise.
* config/lm32/lm32.h: Likewise.
* config/mep/mep.h: Likewise.
* config/mips/mips.h: Likewise.
* config/rs6000/rs6000.h: Likewise.
* config/sh/sh.h: Likewise.
* config/tilegx/tilegx.h (enum reg_class): Likewise.
* config/tilepro/tilepro.h: Likewise.
* defaults.h: Add default for SHORT_IMMEDIATES_SIGN_EXTEND.
* doc/tm.texi: Regenerate.
* doc/tm.texi.in: Adjust.
* rtlanal.c (nonzero_bits1): Likewise.

From-SVN: r225593

9 years agoremove #if for HAVE_cc0 in combine.c
Trevor Saunders [Thu, 9 Jul 2015 02:49:57 +0000 (02:49 +0000)]
remove #if for HAVE_cc0 in combine.c

gcc/ChangeLog:

2015-07-08  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* combine.c (do_SUBST_MODE): Don't check the value of HAVE_cc0
with the preprocessor.
(combine_instructions): Likewise.
(try_combine): Likewise.
(subst): Likewise.
(distribute_notes): Likewise.

From-SVN: r225592

9 years agoreduce conditional compilation for LOAD_EXTEND_OP
Trevor Saunders [Thu, 9 Jul 2015 02:49:51 +0000 (02:49 +0000)]
reduce conditional compilation for LOAD_EXTEND_OP

Provide a default in files where that is possible, so that everything
else there can be unconditionally compiled.  However rtlanal.c and
reload.c do tricky things that break providing a global default, so we
can't do that yet.

gcc/ChangeLog:

2015-07-08  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* combine.c (try_combine): Don't check if LOAD_EXTEND_OP is
defined.
(simplify_set): Likewise.
* cse.c (cse_insn): Likewise.
* fold-const.c (fold_single_bit_test): Likewise.
(fold_unary_loc): Likewise.
* postreload.c (reload_cse_simplify_set): Likewise.
(reload_cse_simplify_operands): Likewise.

From-SVN: r225591

9 years agoDaily bump.
GCC Administrator [Thu, 9 Jul 2015 00:16:11 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r225590

9 years agore PR testsuite/66796 (FAIL: gcc.target/hppa/shadd-1.c scan-assembler-times sh.add 1)
Jeff Law [Wed, 8 Jul 2015 22:34:52 +0000 (16:34 -0600)]
re PR testsuite/66796 (FAIL: gcc.target/hppa/shadd-1.c scan-assembler-times sh.add 1)

       PR testsuite/66796
        * gcc.target/hppa/shadd-1.c: Avoid the read-modify-write so as
        to have a single memory reference.

From-SVN: r225586

9 years agoc-ada-spec.h (cpp_operation): Add IS_CONSTEXPR.
Eric Botcazou [Wed, 8 Jul 2015 21:58:10 +0000 (21:58 +0000)]
c-ada-spec.h (cpp_operation): Add IS_CONSTEXPR.

c-family/
* c-ada-spec.h (cpp_operation): Add IS_CONSTEXPR.
* c-ada-spec.c (print_ada_declaration): Skip constexpr constructors.
cp/
* decl2.c (cpp_check): Deal with IS_CONSTEXPR.

From-SVN: r225585

9 years agoc-omp.c (c_omp_declare_simd_clauses_to_numbers): If all clauses are to be removed...
Jakub Jelinek [Wed, 8 Jul 2015 20:29:26 +0000 (22:29 +0200)]
c-omp.c (c_omp_declare_simd_clauses_to_numbers): If all clauses are to be removed, return NULL rather than original clauses list.

* c-omp.c (c_omp_declare_simd_clauses_to_numbers): If all clauses
are to be removed, return NULL rather than original clauses list.

* decl.c (grokfndecl): Handle flag_openmp_simd like flag_openmp.
* pt.c (apply_late_template_attributes): Likewise.

* g++.dg/vect/vect.exp: Run also simd* tests.
* gcc.dg/vect/tree-vect.h (abort, exit): For C++ use extern "C".
(check_vect): Fix up get_cpuid call for C++.
* g++.dg/vect/simd-clone-1.cc: New test.

From-SVN: r225583

9 years ago[AArch64] Define TARGET_UNSPEC_MAY_TRAP_P
Jiong Wang [Wed, 8 Jul 2015 20:18:00 +0000 (20:18 +0000)]
[AArch64] Define TARGET_UNSPEC_MAY_TRAP_P

      gcc/
* config/aarch64/aarch64.c (aarch64_unspec_may_trap_p): New function.
(TARGET_UNSPEC_MAY_TRAP_P): Define as aarch64_unspec_may_trap_p.

From-SVN: r225581

9 years agoAllow <adxintrin.h> for IA MCU
H.J. Lu [Wed, 8 Jul 2015 20:01:36 +0000 (20:01 +0000)]
Allow <adxintrin.h> for IA MCU

It is OK to include <adxintrin.h> for IA MCU since GCC can generate ADX
intrinsics with alternative instuctions if ADX isn't enabled.

PR target/66746
* config/i386/x86intrin.h: Include <adxintrin.h> even if
__iamcu__ is defined.

From-SVN: r225580

9 years agoCompile pr37870.c with -mlong-double-80
H.J. Lu [Wed, 8 Jul 2015 19:35:43 +0000 (19:35 +0000)]
Compile pr37870.c with -mlong-double-80

On x86, the "long double" type is platforma specific, which may be the
same as double or __float128.  Since pr37870.c requires 80-bit floating
point type, it should be compiled with -mlong-double-80.

* gcc.target/i386/pr37870.c (dg-options): Add -mlong-double-80.

From-SVN: r225578

9 years agopredicates.md (general_reg_operand): Use GENERAL_REGNO_P.
Uros Bizjak [Wed, 8 Jul 2015 18:06:57 +0000 (20:06 +0200)]
predicates.md (general_reg_operand): Use GENERAL_REGNO_P.

* config/i386/predicates.md (general_reg_operand): Use GENERAL_REGNO_P.

From-SVN: r225568