platform/upstream/gcc.git
9 years ago* call.c (build_new_method_call_1): Call reshape_init.
Jason Merrill [Tue, 14 Jul 2015 17:35:38 +0000 (13:35 -0400)]
* call.c (build_new_method_call_1): Call reshape_init.

From-SVN: r225784

9 years agopt.c (check_template_shadow): Emit error + inform instead of two errors.
Paolo Carlini [Tue, 14 Jul 2015 16:20:47 +0000 (16:20 +0000)]
pt.c (check_template_shadow): Emit error + inform instead of two errors.

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

* pt.c (check_template_shadow): Emit error + inform instead of
two errors.

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

* g++.dg/template/crash81.C: Adjust for error + inform change.
* g++.dg/template/pr58878.C: Likewise.
* g++.dg/template/shadow1.C: Likewise.
* g++.dg/template/shadow2.C: Likewise.
* g++.old-deja/g++.benjamin/tem03.C: Likewise.
* g++.old-deja/g++.benjamin/tem04.C: Likewise.
* g++.old-deja/g++.brendan/crash7.C: Likewise.
* g++.old-deja/g++.pt/shadow2.C: Likewise.

From-SVN: r225783

9 years agoRemove trailing spaces in demangle.h
H.J. Lu [Tue, 14 Jul 2015 16:14:40 +0000 (09:14 -0700)]
Remove trailing spaces in demangle.h

From-SVN: r225782

9 years agoUpdate copyright year in include
H.J. Lu [Tue, 14 Jul 2015 16:08:59 +0000 (09:08 -0700)]
Update copyright year in include

From-SVN: r225781

9 years agoconfigure.tgt: Add *-*-dragonfly to supported targets.
John Marino [Tue, 14 Jul 2015 15:36:51 +0000 (15:36 +0000)]
configure.tgt: Add *-*-dragonfly to supported targets.

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

* configure.tgt: Add *-*-dragonfly to supported targets.

From-SVN: r225779

9 years agoSync toplevel configure with binutils-gdb
H.J. Lu [Tue, 14 Jul 2015 15:32:05 +0000 (15:32 +0000)]
Sync toplevel configure with binutils-gdb

Sync with binutils-gdb:
2015-03-17  H.J. Lu  <hongjiu.lu@intel.com>

* configure.ac (target_configdirs): Exclude target-zlib if
target-libjava isn't built.
* configure: Regenerated.

From-SVN: r225778

9 years agoSync toplevel configure with binutils-gdb
H.J. Lu [Tue, 14 Jul 2015 15:22:24 +0000 (15:22 +0000)]
Sync toplevel configure with binutils-gdb

Sync with binutils-gdb:
2015-05-13  John David Anglin  <dave.anglin@bell.net>

* configure.ac: Disable configuration of GDB for HPUX targets.
* configure: Regenerate.

2015-04-01  H.J. Lu  <hongjiu.lu@intel.com>

* configure.ac: Add --with-system-zlib.
* configure: Regenerated.

2015-01-28  James Bowman  <james.bowman@ftdichip.com>

* configure.ac: Add FT32 support.
* configure: Regenerate.

2015-01-12  Anthony Green  <green@moxielogic.com>

* configure.ac: Don't disable gprof for moxie.
* configure: Rebuild.

From-SVN: r225777

9 years agoSync toplevel files binutils-gdb
H.J. Lu [Tue, 14 Jul 2015 15:03:11 +0000 (15:03 +0000)]
Sync toplevel files binutils-gdb

Sync with binutils-gdb:
2015-05-01  H.J. Lu  <hongjiu.lu@intel.com>

PR ld/18355
* Makefile.def: Add extra_configure_flags to host zlib.
* configure.ac (extra_host_zlib_configure_flags): New.  Set
to --enable-host-shared When bfd is to be built as shared
library.  AC_SUBST.
* Makefile.in: Regenerated.

From-SVN: r225776

9 years agoThis patch syncs zlib.m4 with binutils-gdb and uses AM_ZLIB from zlib.m4
H.J. Lu [Tue, 14 Jul 2015 14:25:35 +0000 (14:25 +0000)]
This patch syncs zlib.m4 with binutils-gdb and uses AM_ZLIB from zlib.m4
in gcc/configure.ac.

config/

* zlib.m4: Sync with binutils-gdb.

gcc/

* Makefile.in (top_srcdir): New.
* configure.ac: Use AM_ZLIB.
* configure: Regeneated.

From-SVN: r225774

9 years agore PR target/66840 (plugins fail to build on powerpc64le-linux-gnu)
Matthias Klose [Tue, 14 Jul 2015 13:50:01 +0000 (13:50 +0000)]
re PR target/66840 (plugins fail to build on powerpc64le-linux-gnu)

2015-07-14  Matthias Klose  <doko@ubuntu.com>

        PR target/66840
        * config/rs6000/t-rs6000 (TM_H): Add rs6000-cpus.def.

From-SVN: r225772

9 years agoSync with src:
Hans-Peter Nilsson [Tue, 14 Jul 2015 12:12:43 +0000 (12:12 +0000)]
Sync with src:

2015-03-30  H.J. Lu  <hongjiu.lu@intel.com>
* Makefile.def (dependencies): Add all-zlib to all-bfd.
* Makefile.in: Regenerated.

From-SVN: r225769

9 years agore PR tree-optimization/66863 (wrong code at -Os and above on x86_64-linux-gnu)
Richard Biener [Tue, 14 Jul 2015 11:39:14 +0000 (11:39 +0000)]
re PR tree-optimization/66863 (wrong code at -Os and above on x86_64-linux-gnu)

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

PR tree-optimization/66863
* tree-vrp.c (register_edge_assert_for_2): Properly restrict
what we record for conversion use stmt lhs inequalities.

* gcc.dg/torture/pr66863.c: New testcase.

From-SVN: r225768

9 years agogenmatch.c (dt_node::gen_kids_1): Fix case label indenting.
Richard Biener [Tue, 14 Jul 2015 08:40:51 +0000 (08:40 +0000)]
genmatch.c (dt_node::gen_kids_1): Fix case label indenting.

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

* genmatch.c (dt_node::gen_kids_1): Fix case label indenting.
(decision_tree::gen_gimple): Likewise.

From-SVN: r225765

9 years agoIgnore -ftree-parallelize-loops={0,1} using gt
Tom de Vries [Tue, 14 Jul 2015 08:25:57 +0000 (08:25 +0000)]
Ignore -ftree-parallelize-loops={0,1} using gt

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

* gcc.c (greater_than_spec_func): Declare forward.
(LINK_COMMAND_SPEC, GOMP_SELF_SPECS): Use gt to ignore
-ftree-parallelize-loops={0,1}.
(static_spec_functions): Add greater_than_spec_func function with name
"gt".
(greater_than_spec_func): New function.

From-SVN: r225764

9 years agotree-ssa-dom.c (record_temporary_equivalences): Merge wideing type conversion case...
Richard Biener [Tue, 14 Jul 2015 07:27:04 +0000 (07:27 +0000)]
tree-ssa-dom.c (record_temporary_equivalences): Merge wideing type conversion case from record_equivalences_from_incoming_edge...

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

* tree-ssa-dom.c (record_temporary_equivalences): Merge
wideing type conversion case from record_equivalences_from_incoming_edge
and use record_equality to record equivalences.
(record_equivalences_from_incoming_edge): Call
record_temporary_equivalences.

From-SVN: r225761

9 years agogenmatch.c (struct operand): Add OP_IF and OP_WITH op_types.
Richard Biener [Tue, 14 Jul 2015 07:25:55 +0000 (07:25 +0000)]
genmatch.c (struct operand): Add OP_IF and OP_WITH op_types.

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

* genmatch.c (struct operand): Add OP_IF and OP_WITH op_types.
(struct if_expr): New.
(struct with_expr): Likewise.
(is_a_helper): Add helpers for if_expr and with_expr.
(struct simplify): Add simplify_kind enum and member.  Remove
ifexpr_vec member.
(simplify::simplify): Adjust.
(lower_commutative): Adjust.
(lower_opt_convert): Likewise.
(lower_cond): Likewise.
(replace_id): Handle with_expr and if_expr.
(lower_for): Adjust.
(dt_simplify::gen_1): New recursive worker, split out from ...
(dt_simplify::gen): ... here.  Deal with if and with expansion
recursively.
(capture_info::capture_info): Take context argument
(capture_info::walk_result): Only analyze specific result.
(parser::parse_result): New function.
(parser::parse_simplify): Adjust to parse ifs with then end
else case.
(parser::parse_if): Simplify.
(parser::parse_pattern): Pass down simplify kind.
* match.pd: Convert if structure to new syntax.

From-SVN: r225760

9 years agocompiler,runtime: Determine if allocations need new pointers in runtime.
Ian Lance Taylor [Tue, 14 Jul 2015 01:22:25 +0000 (01:22 +0000)]
compiler,runtime: Determine if allocations need new pointers in runtime.

    As the removed comment states, if the package being compiled played
    certain tricks with pointers that looked like integers, the compiler
    might allocate space for new pointers unnecessarily.  Since the type
    information on the heap is now precise, this logic can be moved to the
    runtime.

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

From-SVN: r225757

9 years agocompiler: Improve location info for function parameters.
Ian Lance Taylor [Tue, 14 Jul 2015 00:52:25 +0000 (00:52 +0000)]
compiler: Improve location info for function parameters.

    Previously, errors reported for function parameters would point to the
    beginning of the function declaration instead of to the column for the
    given parameter.

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

From-SVN: r225756

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