gcc.git
5 years agoExport explicit instantiations for C++17 members of std::string
Jonathan Wakely [Fri, 4 Jan 2019 23:23:22 +0000 (23:23 +0000)]
Export explicit instantiations for C++17 members of std::string

The C++17 standard added some new members to std::basic_string, which
were not previously instantiated in the library. This meant that the
extern template declarations had to be disabled for C++17 mode. With
this patch the new members are instantiated in the library and so the
explicit instantiation declarations can be used for C++17.

The new members added by C++2a are still not exported, and so the
explicit instantiation declarations are still disabled for C++2a.

* config/abi/pre/gnu.ver (GLIBCXX_3.4.21): Make patterns less greedy
for const member functions of std::basic_string.
(GLIBCXX_3.4.26): Export member functions of std::basic_string added
in C++17.
* include/bits/basic_string.h (basic_string(__sv_wrapper, const A&)):
Make non-standard constructor private.
[!_GLIBCXX_USE_CXX11_ABI] (basic_string(__sv_wrapper, const A&)):
Likewise.
* include/bits/basic_string.tcc (std::string, std::wstring): Declare
explicit instantiations for C++17 as well as earlier dialects.
* src/c++17/Makefile.am: Add new source files.
* src/c++17/Makefile.in: Regenerate.
* src/c++17/cow-string-inst.cc: New file defining explicit
instantiations for basic_string member functions added in C++17.
* src/c++17/string-inst.cc: Likewise.

From-SVN: r267585

5 years agoAdd allocator-extended copy/move ctors to COW string
Jonathan Wakely [Fri, 4 Jan 2019 23:23:17 +0000 (23:23 +0000)]
Add allocator-extended copy/move ctors to COW string

Add these constructors from C++11 which were missing from the COW
basic_string. Additionally simplify the definitions of the
basic_string::reference and basic_string::const_reference types as
required by C++11.

This allows filesystem::path::string<Allocator>() to be simplified, so
that the same code is used for both basic_string implementations.

* config/abi/pre/gnu.ver (GLIBCXX_3.4.26): Export allocator-extended
copy/move constructors for old std::basic_string.
* include/bits/basic_string.h [!_GLIBCXX_USE_CXX11_ABI]
(basic_string::reference, basic_string::const_reference): Define
as plain references for C++11 and later.
(basic_string::basic_string()): Put constructor body outside
preprocessor conditional groups.
(basic_string::basic_string(basic_string&&)): Move _Alloc_hider
instead of copying it.
(basic_string::basic_string(const basic_string&, const _Alloc&)):
Define.
(basic_string::basic_string(basic_string&&, const _Alloc&)):
Define.
* include/bits/fs_path.h [!_GLIBCXX_USE_CXX11_ABI]: Remove special
cases for old basic_string.
* testsuite/21_strings/basic_string/cons/char/8.cc: Test
allocator-extended constructors unconditionally. Add extra members to
allocator type when using old string ABI.
* testsuite/21_strings/basic_string/allocator/71964.cc: Enable test
for old string ABI.
* testsuite/21_strings/basic_string/cons/wchar_t/8.cc: Likewise.

From-SVN: r267584

5 years agoPR c/88363 - alloc_align attribute doesn't accept enumerated arguments
Martin Sebor [Fri, 4 Jan 2019 22:48:45 +0000 (22:48 +0000)]
PR c/88363 - alloc_align attribute doesn't accept enumerated arguments

gcc/c-family/ChangeLog:

PR c/88363
* c-attribs.c (positional_argument): Also accept enumerated types.

gcc/testsuite/ChangeLog:

PR c/88363
* c-c++-common/attributes-4.c: New test.

gcc/ChangeLog:

PR c/88363
* doc/extend.texi (attribute alloc_align, alloc_size): Update.

From-SVN: r267583

5 years agoFix test failure when -fno-inline is used
Jonathan Wakely [Fri, 4 Jan 2019 18:56:26 +0000 (18:56 +0000)]
Fix test failure when -fno-inline is used

This currently checks _GLIBCXX_USE_DUAL_ABI which is incorrect, as that
can be true when _GLIBCXX_USE_CXX11_ABI == 0. The correct check would be
_GLIBCXX_USE_CXX11_ABI == 1, but that's made redundant by the cxx11-abi
effective target that the test requires. However, the test will fail if
-fno-inline is used, so check __NO_INLINE__ instead.

* testsuite/23_containers/list/61347.cc: Avoid spurious failure when
-fno-inline added to test flags.

From-SVN: r267582

5 years agogdbinit.in: Turn off pagination for the skip commands, restore it to previous state...
Jakub Jelinek [Fri, 4 Jan 2019 17:56:47 +0000 (18:56 +0100)]
gdbinit.in: Turn off pagination for the skip commands, restore it to previous state afterwards.

* gdbinit.in: Turn off pagination for the skip commands, restore
it to previous state afterwards.

From-SVN: r267581

5 years ago[PATCH][GCC][Aarch64] Change expected bfxil count in gcc.target/aarch64/combine_bfxil...
Sam Tebbs [Fri, 4 Jan 2019 16:26:38 +0000 (16:26 +0000)]
[PATCH][GCC][Aarch64] Change expected bfxil count in gcc.target/aarch64/combine_bfxil.c to 18 (PR/87763)

gcc/testsuite/Changelog:

2019-01-04  Sam Tebbs  <sam.tebbs@arm.com>

PR gcc/87763
* gcc.target/aarch64/combine_bfxil.c: Change scan-assembler-times bfxil
count to 18.

From-SVN: r267579

5 years agoRemove XFAIL from test that no longer fails
Jonathan Wakely [Fri, 4 Jan 2019 16:07:06 +0000 (16:07 +0000)]
Remove XFAIL from test that no longer fails

This test started passing with the old ABI with r263808, so doesn't need
to be marked XFAIL now.

* testsuite/21_strings/basic_string/requirements/
explicit_instantiation/debug.cc: Remove XFAIL for old ABI.

From-SVN: r267578

5 years agoFix test failure with old Copy-On-Write std::string
Jonathan Wakely [Fri, 4 Jan 2019 15:42:33 +0000 (15:42 +0000)]
Fix test failure with old Copy-On-Write std::string

* testsuite/27_io/filesystem/filesystem_error/copy.cc: Fix static
assertion failures with old std::string ABI.

From-SVN: r267577

5 years agoFix bugs in filesystem::path::lexically_normal()
Jonathan Wakely [Fri, 4 Jan 2019 14:03:59 +0000 (14:03 +0000)]
Fix bugs in filesystem::path::lexically_normal()

Using path::_List::erase(const_iterator) to remove a non-final component
in path::lexically_normal() is a bug, because it leaves the following
component with an incorrect _M_pos value.

Instead of providing erase members that allow removing components from
the middle, replace them with pop_back() and
_M_erase_from(const_iterator) which only allow removing elements at the
end. Most uses of erase are unaffected, because they only remove
elements from the end anyway. The one use of erasure from the middle in
lexically_normal() is replaced by calls to pop_back() and/or clearing
the last component to leave it as an empty final filename.

Also replace the "???" comment in lexically_normal() to document when
that branch is taken.

* include/bits/fs_path.h (path::_List::erase): Replace both overloads
with ...
(path::pop_back(), path::_M_erase_from(const_iterator)): New member
functions that will only erase elements at the end.
* src/filesystem/std-path.cc (path::_List::_Impl::pop_back()): Define.
(path::_List::_Impl::_M_erase_from(const_iterator)): Define.
(path::_List::operator=(const _List&)): Use _M_erase_from(p) instead
of erase(p, end()).
(path::_List::pop_back()): Define.
(path::_List::_M_erase_from(const_iterator)): Define.
(path::operator/=(const path&)): Use pop_back to remove last component
and _M_erase_from to remove multiple components.
(path::_M_append(basic_string_view<value_type>)): Likewise.
(path::operator+=(const path&)): Likewise.
(path::_M_concat(basic_string_view<value_type>)): Likewise.
(path::remove_filename()): Likewise.
(path::lexically_normal()): Use _List::_Impl iterators instead of
path::iterator. Use pop_back to remove components from the end. Clear
trailing filename, instead of using erase(const_iterator) to remove
a non-final component.
* testsuite/27_io/filesystem/path/generation/normal.cc: Test
additional cases.
* testsuite/27_io/filesystem/path/generation/normal2.cc: New test.

From-SVN: r267576

5 years ago* gnatvsn.ads: Bump copyright year.
Eric Botcazou [Fri, 4 Jan 2019 12:47:58 +0000 (12:47 +0000)]
* gnatvsn.ads: Bump copyright year.

From-SVN: r267575

5 years agoFix concatenation bug in filesystem::path
Jonathan Wakely [Fri, 4 Jan 2019 11:43:09 +0000 (11:43 +0000)]
Fix concatenation bug in filesystem::path

When erasing a trailing empty filename component, the output iterator
was not decremented, causing the next component to be created at the
wrong position.

* src/filesystem/std-path.cc (path::operator+=(const path&)): Fix
incorrect treatment of empty filename after trailing slash.
* testsuite/27_io/filesystem/path/concat/path.cc: Test problem case.

From-SVN: r267574

5 years agoAvoid spurious test failures when -fno-inline in test flags
Jonathan Wakely [Fri, 4 Jan 2019 11:06:49 +0000 (11:06 +0000)]
Avoid spurious test failures when -fno-inline in test flags

These tests rely on inlining, so if -fno-inline is added to the compiler
flags the tests fail. Use the predefined __NO_INLINE__ macro to detect
that situation, and don't bother testing the move assignment.

* testsuite/21_strings/basic_string/modifiers/assign/char/
move_assign_optim.cc: Avoid spurious failure when -fno-inline added
to test flags.
* testsuite/21_strings/basic_string/modifiers/assign/wchar_t/
move_assign_optim.cc: Likewise.

From-SVN: r267573

5 years agore PR fortran/48543 (Collapse identical strings)
Thomas Koenig [Fri, 4 Jan 2019 10:42:12 +0000 (10:42 +0000)]
re PR fortran/48543 (Collapse identical strings)

2019-01-04  Thomas Koenig  <tkoenig@gcc.gnu.org>

    PR fortran/48543
    * gfortran.dg/const_chararacter_merge.f90: Actually remove.
    * gfortran.dg/merge_char_const.f90: Restore.

From-SVN: r267572

5 years agore PR target/88594 (ICE in int_mode_for_mode, at stor-layout.c:403)
Jakub Jelinek [Fri, 4 Jan 2019 09:00:05 +0000 (10:00 +0100)]
re PR target/88594 (ICE in int_mode_for_mode, at stor-layout.c:403)

PR target/88594
* config/i386/i386.c (ix86_expand_divmod_libfunc): Use mode instead
of GET_MODE (opN) as modes of the libcall arguments.

* gcc.dg/pr88594.c: New test.

From-SVN: r267571

5 years agox86: relax mask register constraints
Jan Beulich [Fri, 4 Jan 2019 08:50:56 +0000 (08:50 +0000)]
x86: relax mask register constraints

While their use for masking is indeed restricted to %k1...%k7, use as
"normal" insn operands also permits %k0. Remove the unnecessary
limitations, requiring quite a few testsuite adjustments.

Oddly enough some AVX512{F,DQ} test cases already check for %k[0-7],
while others did permit {%k0} - where they get touched here anyway this
gets fixed at the same time.

From-SVN: r267570

5 years agoPR tree-optimization/88659 - ICE in maybe_warn_nonstring_arg
Martin Sebor [Fri, 4 Jan 2019 03:13:33 +0000 (03:13 +0000)]
PR tree-optimization/88659 - ICE in maybe_warn_nonstring_arg

gcc/ChangeLog:
* calls.c (maybe_warn_nonstring_arg): Avoid assuming maxlen is set.

gcc/testsuite/ChangeLog:
* gcc.dg/Wstringop-truncation-6.c: New test.

From-SVN: r267569

5 years agoDaily bump.
GCC Administrator [Fri, 4 Jan 2019 00:16:34 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r267568

5 years agoPR libstdc++/88607 replace some more UTF-8 characters
Jonathan Wakely [Thu, 3 Jan 2019 22:07:52 +0000 (22:07 +0000)]
PR libstdc++/88607 replace some more UTF-8 characters

2019-01-03  Jonathan Wakely  <jwakely@redhat.com>
    Jakub Jelinek  <jakub@redhat.com>

PR libstdc++/88607
* include/experimental/memory: Replace UTF-8 quote characters.
* include/std/future: Replace UTF-8 "em dash" characters.

Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
From-SVN: r267565

5 years agoPR libstdc++/88607 replace or remove unnecessary UTF-8 characters
Jonathan Wakely [Thu, 3 Jan 2019 20:38:11 +0000 (20:38 +0000)]
PR libstdc++/88607 replace or remove unnecessary UTF-8 characters

There are a number of UTF-8 characters in comments which add no value
and can be replaced with ASCII equivalents, or removed entirely for the
section sign (U+00A7).

PR libstdc++/88607
* include/bits/forward_list.h: Replace UTF-8 "ligature fi" character.
* include/debug/forward_list: Likewise.
* include/experimental/bits/shared_ptr.h: Remove UTF-8 "section sign"
character.
* include/experimental/chrono: Likewise.
* include/experimental/functional: Likewise.
* include/experimental/ratio: Likewise.
* include/experimental/system_error: Likewise.
* include/experimental/tuple: Likewise.
* include/experimental/type_traits: Likewise.
* include/parallel/workstealing.h: Replace UTF-8 "en dash" character.
* include/parallel/multiseq_selection.h: Likewise.

From-SVN: r267564

5 years agoPR libstdc++/88681 export missing symbols
Jonathan Wakely [Thu, 3 Jan 2019 20:38:04 +0000 (20:38 +0000)]
PR libstdc++/88681 export missing symbols

These new facet functions were added to GCC 5.1 but the versions for the
old std::string ABI were never exported from the shared library.

PR libstdc++/88681
* config/abi/pre/gnu.ver: Add missing exports.
* testsuite/22_locale/collate_byname/88681.cc: New test.
* testsuite/22_locale/time_get/get/char/88681.cc: New test.
* testsuite/22_locale/time_get/get/wchar_t/88681.cc: New test.

From-SVN: r267563

5 years agors6000-string.c (expand_block_move): Don't use unaligned vsx and avoid lxvd2x/stxvd2x.
Aaron Sawdey [Thu, 3 Jan 2019 19:20:57 +0000 (19:20 +0000)]
rs6000-string.c (expand_block_move): Don't use unaligned vsx and avoid lxvd2x/stxvd2x.

2019-01-03  Aaron Sawdey  <acsawdey@linux.ibm.com>

* config/rs6000/rs6000-string.c (expand_block_move): Don't use
unaligned vsx and avoid lxvd2x/stxvd2x.
(gen_lvx_v4si_move): New function.

From-SVN: r267562

5 years ago[nvptx] Add vector_length 128 testcases
Tom de Vries [Thu, 3 Jan 2019 15:08:46 +0000 (15:08 +0000)]
[nvptx] Add vector_length 128 testcases

Add a couple of test-cases using vector length 128, while checking that we
override to vector length 32.

2019-01-03  Tom de Vries  <tdevries@suse.de>

* testsuite/libgomp.oacc-c-c++-common/vector-length-128-1.c: New test.
* testsuite/libgomp.oacc-c-c++-common/vector-length-128-3.c: New test.

From-SVN: r267559

5 years ago[nvptx] Add nvptx_mach_vector_length, nvptx_mach_max_workers
Tom de Vries [Thu, 3 Jan 2019 15:08:36 +0000 (15:08 +0000)]
[nvptx] Add nvptx_mach_vector_length, nvptx_mach_max_workers

The vector length and maximum number of workers are known compile-time.  Make
these easily available during code generation via new functions.

2019-01-03  Tom de Vries  <tdevries@suse.de>

* config/nvptx/nvptx.c (MACH_VECTOR_LENGTH, MACH_MAX_WORKERS): Define.
(init_axis_dim, nvptx_mach_max_workers, nvptx_mach_vector_length): New
function.
* config/nvptx/nvptx.h (struct machine_function): Add axis_dims.

From-SVN: r267558

5 years ago[nvptx] Factor out populate_offload_attrs
Tom de Vries [Thu, 3 Jan 2019 15:08:25 +0000 (15:08 +0000)]
[nvptx] Factor out populate_offload_attrs

Factor out populate_offload_attrs from nvptx_reorg.

2019-01-03  Tom de Vries  <tdevries@suse.de>

* config/nvptx/nvptx.c (struct offload_attrs): New.
(populate_offload_attrs): New function.  Factor mask extraction out of
nvptx_reorg.  Add extraction of dimensions.
(nvptx_reorg): Use populate_offload_attrs.

From-SVN: r267557

5 years ago[nvptx] Add early-out cases in nvptx_goacc_validate_dims
Tom de Vries [Thu, 3 Jan 2019 15:08:15 +0000 (15:08 +0000)]
[nvptx] Add early-out cases in nvptx_goacc_validate_dims

Add early-out cases for for oacc_min_dims_p and routine_p in
nvptx_goacc_validate_dims, allowing simplification of the rest of the
function.

2019-01-03  Tom de Vries  <tdevries@suse.de>

* config/nvptx/nvptx.c (nvptx_goacc_validate_dims_1): Add early-out
cases for oacc_min_dims_p and routine_p.  Add asserts for
oacc_default_dims_p and offload_region_p.

From-SVN: r267556

5 years ago[nvptx] Eliminate changed local var in nvptx_goacc_validate_dims
Tom de Vries [Thu, 3 Jan 2019 15:08:06 +0000 (15:08 +0000)]
[nvptx] Eliminate changed local var in nvptx_goacc_validate_dims

The TARGET_GOACC_VALIDATE_DIMS hook requires an implementation to return a bool
indicating whether the dims parameter has changed.

Factor nvptx_goacc_validate_dims_1 out of nvptx_goacc_validate_dims, and
calculate the return value in nvptx_goacc_validate_dims.

2019-01-03  Tom de Vries  <tdevries@suse.de>

* config/nvptx/nvptx.c (nvptx_goacc_validate_dims_1): New function,
factored out of ...
(nvptx_goacc_validate_dims): ... here.

From-SVN: r267555

5 years agore PR fortran/48543 (Collapse identical strings)
Thomas Koenig [Thu, 3 Jan 2019 12:32:34 +0000 (12:32 +0000)]
re PR fortran/48543 (Collapse identical strings)

2019-01-02  Thomas Koenig  <tkoenig@gcc.gnu.org>

    PR fortran/48543
    * gfortran.dg/const_chararacter_merge.f90: Remove.

From-SVN: r267553

5 years agore PR lto/85574 (LTO bootstapped binaries differ)
Jan Hubicka [Thu, 3 Jan 2019 12:23:27 +0000 (13:23 +0100)]
re PR lto/85574 (LTO bootstapped binaries differ)

2019-01-03  Jan Hubicka  <hubicka@ucw.cz>

PR tree-optimization/85574
* tree-ssa-uncprop.c (struct equiv_hash_elt): Remove unused
structure.
(struct ssa_equip_hash_traits): Declare.
(val_ssa_equiv): Use custom hash traits using operand_equal_p.

From-SVN: r267552

5 years agoUpdate config.guess, config.sub (PR target/88535)
Rainer Orth [Thu, 3 Jan 2019 11:28:27 +0000 (11:28 +0000)]
Update config.guess, config.sub (PR target/88535)

PR target/88535
* config.guess: Import upstream version 2019-01-03.
* config.sub: Import upstream version 2019-01-01.

From-SVN: r267551

5 years agore PR debug/88644 (Unexpected pub type info eliminated after r246973 (causes pubtypes...
Jakub Jelinek [Thu, 3 Jan 2019 11:05:24 +0000 (12:05 +0100)]
re PR debug/88644 (Unexpected pub type info eliminated after r246973 (causes pubtypes-*.c to regress).)

PR debug/88644
* dwarf2out.c (modified_type_die): If type is equal to sizetype,
change it to qualified_type.

* gcc.dg/debug/dwarf2/pr88644.c: New test.
* gcc.dg/debug/dwarf2/pr80263.c: Remove darwin hack.

2019-01-03  Iain Sandoe  <iain@sandoe.co.uk>

* gcc.dg/pubtypes-2.c: Adjust expected pubtypes length.
* gcc.dg/pubtypes-3.c: Likewise.
* gcc.dg/pubtypes-4.c: Likewise.

From-SVN: r267550

5 years agoipa-utils.c (scale_ipa_profile_for_fn): Break out from ...
Jan Hubicka [Thu, 3 Jan 2019 10:19:03 +0000 (11:19 +0100)]
ipa-utils.c (scale_ipa_profile_for_fn): Break out from ...

* ipa-utils.c (scale_ipa_profile_for_fn): Break out from ...
(ipa_merge_profiles): ... here; do not ICE on thunks and aliases.

From-SVN: r267549

5 years agore PR c++/88636 (ICE: Segmentation fault (in c_tree_chain_next))
Jakub Jelinek [Thu, 3 Jan 2019 10:11:40 +0000 (11:11 +0100)]
re PR c++/88636 (ICE: Segmentation fault (in c_tree_chain_next))

PR c++/88636
* decl.c (builtin_function_1): Return result of pushdecl_top_level
or pushdecl rather than decl.

* g++.target/i386/pr88636.C: New test.

From-SVN: r267548

5 years agotree.c (handle_nodiscard_attribute): Improve warning location.
Paolo Carlini [Thu, 3 Jan 2019 10:00:30 +0000 (10:00 +0000)]
tree.c (handle_nodiscard_attribute): Improve warning location.

/cp
2019-01-03  Paolo Carlini  <paolo.carlini@oracle.com>

* tree.c (handle_nodiscard_attribute): Improve warning location.

/testsuite
2019-01-03  Paolo Carlini  <paolo.carlini@oracle.com>

* g++.dg/cpp1z/nodiscard3.C: Test locations too.

From-SVN: r267547

5 years agoAdjust a dump file in a test-case (PR testsuite/88436).
Martin Liska [Thu, 3 Jan 2019 07:53:37 +0000 (08:53 +0100)]
Adjust a dump file in a test-case (PR testsuite/88436).

2019-01-03  Martin Liska  <mliska@suse.cz>

PR testsuite/88436
* gcc.target/powerpc/pr54240.c: Scan phiopt2.

From-SVN: r267541

5 years agoDaily bump.
GCC Administrator [Thu, 3 Jan 2019 00:16:48 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r267540

5 years agogimple-fold.c (strlen_range_kind): Remove SRK_LENRANGE_2.
Martin Sebor [Wed, 2 Jan 2019 23:59:51 +0000 (23:59 +0000)]
gimple-fold.c (strlen_range_kind): Remove SRK_LENRANGE_2.

* gimple-fold.c (strlen_range_kind): Remove SRK_LENRANGE_2.
(get_range_strlen_tree): Update appropriately.
(get_range_strlen)
* gimple-fold.h (get_range_strlen): Drop unused last argument.

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

5 years agoPR c++/81486 - CTAD failing with ().
Marek Polacek [Wed, 2 Jan 2019 22:39:16 +0000 (22:39 +0000)]
PR c++/81486 - CTAD failing with ().

* g++.dg/cpp1z/class-deduction60.C: New test.
* g++.dg/cpp1z/class-deduction61.C: New test.

From-SVN: r267535

5 years agoPR c++/88631 - CTAD failing for value-initialization.
Marek Polacek [Wed, 2 Jan 2019 22:20:45 +0000 (22:20 +0000)]
PR c++/88631 - CTAD failing for value-initialization.

* typeck2.c (build_functional_cast): Try deducing the template
arguments even if there are no arguments to deduce from.

* g++.dg/cpp1z/class-deduction59.C: New test.

From-SVN: r267533

5 years agoPR c++/88612 - ICE with -Waddress-of-packed-member.
Marek Polacek [Wed, 2 Jan 2019 22:15:46 +0000 (22:15 +0000)]
PR c++/88612 - ICE with -Waddress-of-packed-member.

* call.c (convert_for_arg_passing): Only give warnings with tf_warning.
* typeck.c (convert_for_assignment): Likewise.

* g++.dg/warn/Waddress-of-packed-member1.C: New test.

From-SVN: r267532

5 years agogimple-fold.c (gimple_fold_builtin_strlen): Use set_strlen_range rather than set_rang...
Martin Sebor [Wed, 2 Jan 2019 21:38:56 +0000 (21:38 +0000)]
gimple-fold.c (gimple_fold_builtin_strlen): Use set_strlen_range rather than set_range_info.

* gimple-fold.c (gimple_fold_builtin_strlen): Use set_strlen_range
rather than set_range_info.
* tree-ssa-strlen.c (set_strlen_range): Extracted from
maybe_set_strlen_range.  Handle potentially boundary crossing
cases more conservatively.
(maybe_set_strlen_range): Parts refactored into set_strlen_range.
Call set_strlen_range.
* tree-ssa-strlen.h (set_strlen_range): Add prototype.

* gcc.dg/strlenopt-36.c: Update.
* gcc.dg/strlenopt-45.c: Update.
* gcc.c-torture/execute/strlen-5.c: New test.
* gcc.c-torture/execute/strlen-6.c: New test.
* gcc.c-torture/execute/strlen-7.c: New test.

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

5 years agore PR testsuite/87304 (gcc.dg/vect/bb-slp-over-widen-1.c fails starting with r262371)
Jakub Jelinek [Wed, 2 Jan 2019 19:50:13 +0000 (20:50 +0100)]
re PR testsuite/87304 (gcc.dg/vect/bb-slp-over-widen-1.c fails starting with r262371)

PR testsuite/87304
* gcc.dg/vect/bb-slp-over-widen-1.c: Expect basic block vectorized
messages only on vect_hw_misalign targets.

From-SVN: r267528

5 years agoparse.c (decode_statement): Suppress "Unclassifiable statement" error if previous...
Steven G. Kargl [Wed, 2 Jan 2019 19:13:29 +0000 (19:13 +0000)]
parse.c (decode_statement): Suppress "Unclassifiable statement" error if previous error messages were emittes.

2019-01-01  Steven G. Kargl  <kargl@gcc.gnu.org>

* parse.c (decode_statement):  Suppress "Unclassifiable statement"
error if previous error messages were emittes.

2019-01-01  Steven G. Kargl  <kargl@gcc.gnu.org>

* gfortran.dg/argument_checking_7.f90: Remove run-on error message.
* gfortran.dg/dec_d_lines_3.f: Ditto.
* gfortran.dg/dec_structure_24.f90: Ditto.
* gfortran.dg/dec_structure_26.f90: Ditto.
* gfortran.dg/dec_structure_27.f90: Ditto.
* gfortran.dg/dec_type_print_3.f90: Ditto.
* gfortran.dg/derived_name_1.f90: Ditto.
* gfortran.dg/error_recovery_1.f90: Ditto.
* gfortran.dg/gomp/pr29759.f90: Ditto.
* gfortran.dg/pr36192.f90: Ditto.
* gfortran.dg/pr56007.f90: Ditto.
* gfortran.dg/pr56520.f90: Ditto.
* gfortran.dg/pr78741.f90: Ditto.
* gfortran.dg/print_fmt_2.f90: Ditto.
* gfortran.dg/select_type_20.f90: Ditto.

From-SVN: r267526

5 years ago* es.po: Update.
Joseph Myers [Wed, 2 Jan 2019 18:39:14 +0000 (18:39 +0000)]
* es.po: Update.

From-SVN: r267521

5 years agore PR middle-end/88663 (internal compiler error: in check, at tree-vrp.c:188)
Martin Sebor [Wed, 2 Jan 2019 18:30:50 +0000 (18:30 +0000)]
re PR middle-end/88663 (internal compiler error: in check, at tree-vrp.c:188)

PR middle-end/88663
* gimple-fold.c (get_range_strlen): Update prototype to no longer
need the flexp argument.
(get_range_strlen_tree): Drop flexp argument.  Drop flexp argument
from calls to get_range_strlen.  Update comments.  Just update
VAL for an unterminated const char array and let the reset of the
code handle it normally.  No longer try to set *flexp.  Adjust
return value.
(get_range_strlen): Update for the new get_range_strlen API.
(get_maxval_strlen): Similarly.
(gimple_fold_builtin_strlen): Handle update meaning of return value
from get_range_strlen.
* gimple-ssa-sprintf.c (get_string_length): Update for the new
get_range_strlen API.

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

5 years agore PR c++/86875 (ICE in tsubst_copy, at cp/pt.c:15478)
Marek Polacek [Wed, 2 Jan 2019 17:07:02 +0000 (17:07 +0000)]
re PR c++/86875 (ICE in tsubst_copy, at cp/pt.c:15478)

PR c++/86875
* g++.dg/cpp1y/lambda-generic-86875.C: New test.

From-SVN: r267519

5 years agoAdd more testcases for class template argument deduction of maps
Jonathan Wakely [Wed, 2 Jan 2019 16:30:49 +0000 (16:30 +0000)]
Add more testcases for class template argument deduction of maps

This adds additional tests for std::map and std::multimap CTAD. The
tests ensure that deduction works for braced-init-list of value_type
objects, and for pairs of input iterators (with both std::pair<Key, T>
and value_type as the iterator's value_type). This ensures deduction
from value_type still works, as well as the non-value_type cases in LWG
3025.

Similar tests for unordered maps do not work, apparently because the
constructor taking an initializer_list<value_type> is not usable for
deduction, and the deduction guide taking initializer_list<pair<Key, T>>
deduces key_type to be const. I am not addressing that.

* testsuite/23_containers/map/cons/deduction.cc: Test deduction from
initializer_list<value_type> and from input iterator ranges.
* testsuite/23_containers/multimap/cons/deduction.cc: Likewise.

From-SVN: r267518

5 years agore PR fortran/48543 (Collapse identical strings)
Thomas Koenig [Wed, 2 Jan 2019 15:25:47 +0000 (15:25 +0000)]
re PR fortran/48543 (Collapse identical strings)

2019-01-02  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/48543
* gfortran.dg/const_chararacter_merge.f90: New test.

From-SVN: r267517

5 years agore PR lto/88130 (ICE in copy_function_or_variable, at lto-streamer-out.c:2315 since...
Jan Hubicka [Wed, 2 Jan 2019 15:23:27 +0000 (16:23 +0100)]
re PR lto/88130 (ICE in copy_function_or_variable, at lto-streamer-out.c:2315 since r260963)

PR lto/88130
* varpool.c (varpool_node::ctor_useable_for_folding_p): Also return
false at WPA time when body was removed.
* g++.dg/torture/pr88130.C: New testcase.

From-SVN: r267515

5 years agoCalculate prediction remainder at proper place (PR tree-optimization/88650).
Martin Liska [Wed, 2 Jan 2019 14:03:53 +0000 (15:03 +0100)]
Calculate prediction remainder at proper place (PR tree-optimization/88650).

2019-01-02  Martin Liska  <mliska@suse.cz>

PR tree-optimization/88650
* predict.c (set_even_probabilities): Calculate probability
remainer only when really used.
2019-01-02  Martin Liska  <mliska@suse.cz>

PR tree-optimization/88650
* gfortran.dg/predict-3.f90: New test.

From-SVN: r267513

5 years agore PR tree-optimization/88651 (tree-data-ref.c:3764:26: runtime error: signed integer...
Richard Biener [Wed, 2 Jan 2019 13:52:03 +0000 (13:52 +0000)]
re PR tree-optimization/88651 (tree-data-ref.c:3764:26: runtime error: signed integer overflow: 9223372036854775802 - -6 cannot be represented in type 'long int')

2019-01-02  Richard Biener  <rguenther@suse.de>

PR middle-end/88651
* tree-data-ref.c (analyze_subscript_affine_affine): Use
widest_ints when mangling max_stmt_execution results.

From-SVN: r267512

5 years agoFix g++.dg/gcov/pr88263.C compilation on Solaris
Rainer Orth [Wed, 2 Jan 2019 12:42:20 +0000 (12:42 +0000)]
Fix g++.dg/gcov/pr88263.C compilation on Solaris

* g++.dg/gcov/pr88263.C: Rename namespace log to logging.

From-SVN: r267511

5 years agore PR tree-optimization/88621 (wrong code at -O1 and above on x86_64-linux-gnu in...
Richard Biener [Wed, 2 Jan 2019 12:19:10 +0000 (12:19 +0000)]
re PR tree-optimization/88621 (wrong code at -O1 and above on x86_64-linux-gnu in 64-bit mode (not in 32-bit mode))

2019-01-02  Richard Biener  <rguenther@suse.de>

PR tree-optimization/88621
* tree-ssa-loop-im.c (gather_mem_refs_stmt): Fix pastos, avoid
bitfields when canoncalizing.

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

From-SVN: r267510

5 years agore PR target/87545 (-mtune=intel regressions)
Richard Biener [Wed, 2 Jan 2019 11:04:45 +0000 (11:04 +0000)]
re PR target/87545 (-mtune=intel regressions)

2019-01-02  Richard Biener  <rguenther@suse.de>

PR target/87545
* config/i386/x86-tune-costs.h (intel_cost): Adjust
cost of cheap SSE instruction.

From-SVN: r267509

5 years agoFix year range in copyright header
Jonathan Wakely [Wed, 2 Jan 2019 10:44:35 +0000 (10:44 +0000)]
Fix year range in copyright header

* testsuite/experimental/string_view/element_access/char/empty.cc:
Fix year range in copyright header.

From-SVN: r267508

5 years agore PR ipa/88561 (PGO devirtualization miscompilation of firefox)
Jakub Jelinek [Wed, 2 Jan 2019 09:25:59 +0000 (10:25 +0100)]
re PR ipa/88561 (PGO devirtualization miscompilation of firefox)

PR ipa/88561
* g++.dg/tree-prof/devirt.C: Expect _ZThn16 only for lp64 and llp64
targets and expect _ZThn8 for ilp32 targets.

From-SVN: r267507

5 years agore PR lto/85574 (LTO bootstapped binaries differ)
Richard Biener [Wed, 2 Jan 2019 08:49:07 +0000 (08:49 +0000)]
re PR lto/85574 (LTO bootstapped binaries differ)

2019-01-02  Richard Biener  <rguenther@suse.de>

PR ipa/85574
* ipa-icf.h (sem_item_optimizer::sort_congruence_split): Declare.
* ipa-icf.c (sem_item_optimizer::sort_congruence_split): New
function.
(sem_item_optimizer::do_congruence_step_f): Sort the congruence
set after UIDs before splitting them.

From-SVN: r267506

5 years agogimple-fold.c (get_range_strlen_tree): Record if the computed length is optimistic.
Martin Sebor [Wed, 2 Jan 2019 06:17:54 +0000 (06:17 +0000)]
gimple-fold.c (get_range_strlen_tree): Record if the computed length is optimistic.

* gimple-fold.c (get_range_strlen_tree): Record if the computed
length is optimistic.  If it is, then arrange to compute the
conservative length as well.

* gcc.dg/strlenopt-40.c: Update
* gcc.dg/strlenopt-51.c: Likewise.
* gcc.dg/tree-ssa/pr79376.c: Likewise.

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

5 years agoFix year range in libstdc++v3/testsuite/.../empty.cc copyright header
Joel Brobecker [Wed, 2 Jan 2019 06:04:51 +0000 (06:04 +0000)]
Fix year range in libstdc++v3/testsuite/.../empty.cc copyright header

libstdc++-v3/ChangeLog:

        * testsuite/21_strings/basic_string_view/element_access/char/empty.cc:
        Fix year range in copyright header.

From-SVN: r267504

5 years agogimple-fold.h (get_range_strlen): Update prototype.
Martin Sebor [Wed, 2 Jan 2019 06:02:37 +0000 (06:02 +0000)]
gimple-fold.h (get_range_strlen): Update prototype.

* gimple-fold.h (get_range_strlen): Update prototype.
* builtins.c (check_access): Update call to get_range_strlen to use
c_strlen_data pointer.   Change various variable accesses to instead
pull data from the c_strlen_data structure.
(check_strncat_sizes, expand_builtin_strncat): Likewise.
* calls.c (maybe_warn_nonstring_arg): Likewise.
* tree-ssa-strlen.c (maybe_diag_stxncpy_trunc): Likewise.  Reset
minimum length if maximum lengh is unknown.
* gimple-ssa-sprintf.c (get_string_length): Likewise.  Drop code
that used c_strlen, it's no longer needed.  Restructure slightly.
(format_string): Set unlikely range appropriately.
* gimple-fold.c (get_range_strlen): Update comments.  Fix minor
formatting issues.
(get_range_strlen):  Accept c_strlen_data pointer for external
call sites as well.  Pass through to call to internal get_range_strlen.
Adjust minlen, maxlen and maxbound as needed.
(get_maxval_strlen): Update comments.
(gimple_fold_builtin_strlen):  Update call to get_range_strlen
to use c_strlen_data pointer.  Change variable accesses to instead
use c_strlen_data data members.

* gcc.dg/strlenopt-40.c: Disable a couple tests.
* gcc.dg/strlenopt-48.c: Twiddle test.
* gcc.dg/strlenopt-59.c: New test.
* gcc.dg/tree-ssa/builtin-snprintf-5.c: New test.
* g++.dg/init/strlen.C: New test.

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

5 years agoDaily bump.
GCC Administrator [Wed, 2 Jan 2019 00:16:20 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r267502

5 years agore PR fortran/82743 (uncaught character truncation in derived type initialization)
Thomas Koenig [Tue, 1 Jan 2019 21:19:53 +0000 (21:19 +0000)]
re PR fortran/82743 (uncaught character truncation in derived type initialization)

2019-01-01  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/82743
* primary.c (gfc_convert_to_structure_constructor): If a character
in a constructor is too long, add a warning with
-Wcharacter-truncation.

2019-01-01  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/82743
* gfortran.dg/structure_constructor_16.f90: New test.

From-SVN: r267499

5 years agogimple-fold.c (get_range_strlen): Update prototype.
Martin Sebor [Tue, 1 Jan 2019 18:20:13 +0000 (18:20 +0000)]
gimple-fold.c (get_range_strlen): Update prototype.

* gimple-fold.c (get_range_strlen): Update prototype.
(get_range_strlen_tree): Update prototype.  Drop minlen/maxlen
local variables.  Use pdata to return information to caller.
Update calls to get_range_strlen.  Update pdata->maxbound.
(get_range_strlen -- static version): Similarly.
(get_range_strlen -- extern version): Update for internal
get_range_strlen API change.  Convert to external data format.
(get_maxval_strlen): Similarly.

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

5 years agodevirt-36.C: Add dg-do-compile.
Jan Hubicka [Tue, 1 Jan 2019 13:30:53 +0000 (14:30 +0100)]
devirt-36.C: Add dg-do-compile.

* g++.dg/ipa/devirt-36.C: Add dg-do-compile.
* g++.dg/ipa/devirt-53.C: Fix scan template.

From-SVN: r267497

5 years agodevirt-13_0.C: Drop broken scan of ssa dump.
Jan Hubicka [Tue, 1 Jan 2019 13:10:39 +0000 (14:10 +0100)]
devirt-13_0.C: Drop broken scan of ssa dump.

* g++.dg/lto/devirt-13_0.C: Drop broken scan of ssa dump.
* g++.dg/lto/devirt-14_0.C: Drop broken scan of ssa dump.
* g++.dg/lto/devirt-23_0.C: Add -fdump-ipa-cp.

From-SVN: r267496

5 years agocoverage.c (get_coverage_counts): Use current_function_decl.
Jan Hubicka [Tue, 1 Jan 2019 12:49:18 +0000 (13:49 +0100)]
coverage.c (get_coverage_counts): Use current_function_decl.

* coverage.c (get_coverage_counts): Use current_function_decl.
* profile.c (read_thunk_profile): New function.
(branch_prob): Add THUNK parameter.
* tree-profile.c (tree_profiling): Handle thunks.
* value-prof.c (init_node_map): Handle thunks.
* value-prof.h (branch_prob): Upate prototype.
(read_thunk_profile): Declare.

* g++.dg/tree-prof/devirt.C: Update testcase.

From-SVN: r267495

5 years agoUpdate copyright years.
Jakub Jelinek [Tue, 1 Jan 2019 12:31:55 +0000 (13:31 +0100)]
Update copyright years.

From-SVN: r267494

5 years ago* update-copyright.py: Add Gerard Jungman as external author.
Jakub Jelinek [Tue, 1 Jan 2019 12:20:46 +0000 (13:20 +0100)]
* update-copyright.py: Add Gerard Jungman as external author.

From-SVN: r267493

5 years agogcc.c (process_command): Update copyright notice dates.
Jakub Jelinek [Tue, 1 Jan 2019 11:34:49 +0000 (12:34 +0100)]
gcc.c (process_command): Update copyright notice dates.

* gcc.c (process_command): Update copyright notice dates.
* gcov-dump.c (print_version): Ditto.
* gcov.c (print_version): Ditto.
* gcov-tool.c (print_version): Ditto.
* gengtype.c (create_file): Ditto.
* doc/cpp.texi: Bump @copying's copyright year.
* doc/cppinternals.texi: Ditto.
* doc/gcc.texi: Ditto.
* doc/gccint.texi: Ditto.
* doc/gcov.texi: Ditto.
* doc/install.texi: Ditto.
* doc/invoke.texi: Ditto.
gcc/fortran/
* gfortranspec.c (lang_specific_driver): Update copyright notice
dates.
* gfc-internals.texi: Bump @copying's copyright year.
* gfortran.texi: Ditto.
* intrinsic.texi: Ditto.
* invoke.texi: Ditto.
gcc/go/
* gccgo.texi: Bump @copyrights-go year.
gcc/ada/
  * gnat_ugn.texi: Bump @copying's copyright year.
  * gnat_rm.texi: Likewise.
gcc/d/
* gdc.texi: Bump @copyrights-d year.
libitm/
* libitm.texi: Bump @copying's copyright year.
libgomp/
* libgomp.texi: Bump @copying's copyright year.
libquadmath/
* libquadmath.texi: Bump @copying's copyright year.

From-SVN: r267492

5 years agoDaily bump.
GCC Administrator [Tue, 1 Jan 2019 00:16:34 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r267491

5 years agore PR target/86814 (xtensa port needs updating for CVE-2017-5753)
Max Filippov [Mon, 31 Dec 2018 16:51:36 +0000 (16:51 +0000)]
re PR target/86814 (xtensa port needs updating for CVE-2017-5753)

PR target/86814

Xtensa architecture is not affected by speculation.

gcc/
2018-12-31  Max Filippov  <jcmvbkbc@gmail.com>

* config/xtensa/xtensa.c (TARGET_HAVE_SPECULATION_SAFE_VALUE):
Define to speculation_safe_value_not_needed.

From-SVN: r267488

5 years agore PR fortran/82995 (Segmentation fault passing optional argument to intrinsic sum...
Thomas Koenig [Mon, 31 Dec 2018 14:59:46 +0000 (14:59 +0000)]
re PR fortran/82995 (Segmentation fault passing optional argument to intrinsic sum function)

2018-12-31  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/82995
* trans-expr.c (gfc_conv_procedure_call):  Pass NULL pointer
for missing optional dummy arguments for library routines.
* trans-intinsic.c (conv_mask_condition): New function.
(gfc_conv_intrinsic_arith): Detect and handle optional mask.
(gfc_conv_intrinsic_minmaxloc): Likewise.
(gfc_conv_intrinsic_findloc): Likewise.
(gfc_conv_intrinsic_minmaxval): Likewise.
(gfc_inline_intrinsic_function_p): Do not inline for rank > 1 if
an optional mask is present.

2018-12-31  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/82995
        * m4/ifindloc0.m4: Handle case of absend optional argument, passed
as a NULL pointer.  Correct allocation of retarray->base_addr.
        * m4/ifindloc1.m4: Likewise.
        * m4/ifindloc2.m4: Handle case of absend optional argument, passed
as a NULL pointer.
        * m4/iforeach-s.m4: Likewise.
        * m4/iforeach-s2.m4: Likewise.
        * m4/iforeach.m4: Likewise.
        * m4/ifunction-s.m4: Likewise.
        * m4/ifunction-s2.m4: Likewise.
        * m4/ifunction.m4: Likewise.
        * generated/findloc0_c16.c: Regenerated.
        * generated/findloc0_c4.c: Regenerated.
        * generated/findloc0_c8.c: Regenerated.
        * generated/findloc0_i1.c: Regenerated.
        * generated/findloc0_i16.c: Regenerated.
        * generated/findloc0_i2.c: Regenerated.
        * generated/findloc0_i4.c: Regenerated.
        * generated/findloc0_i8.c: Regenerated.
        * generated/findloc0_r16.c: Regenerated.
        * generated/findloc0_r4.c: Regenerated.
        * generated/findloc0_r8.c: Regenerated.
        * generated/findloc0_s1.c: Regenerated.
        * generated/findloc0_s4.c: Regenerated.
        * generated/findloc1_c16.c: Regenerated.
        * generated/findloc1_c4.c: Regenerated.
        * generated/findloc1_c8.c: Regenerated.
        * generated/findloc1_i1.c: Regenerated.
        * generated/findloc1_i16.c: Regenerated.
        * generated/findloc1_i2.c: Regenerated.
        * generated/findloc1_i4.c: Regenerated.
        * generated/findloc1_i8.c: Regenerated.
        * generated/findloc1_r16.c: Regenerated.
        * generated/findloc1_r4.c: Regenerated.
        * generated/findloc1_r8.c: Regenerated.
        * generated/findloc1_s1.c: Regenerated.
        * generated/findloc1_s4.c: Regenerated.
        * generated/findloc2_s1.c: Regenerated.
        * generated/findloc2_s4.c: Regenerated.
        * generated/iall_i1.c: Regenerated.
        * generated/iall_i16.c: Regenerated.
        * generated/iall_i2.c: Regenerated.
        * generated/iall_i4.c: Regenerated.
        * generated/iall_i8.c: Regenerated.
        * generated/iany_i1.c: Regenerated.
        * generated/iany_i16.c: Regenerated.
        * generated/iany_i2.c: Regenerated.
        * generated/iany_i4.c: Regenerated.
        * generated/iany_i8.c: Regenerated.
        * generated/iparity_i1.c: Regenerated.
        * generated/iparity_i16.c: Regenerated.
        * generated/iparity_i2.c: Regenerated.
        * generated/iparity_i4.c: Regenerated.
        * generated/iparity_i8.c: Regenerated.
        * generated/maxloc0_16_i1.c: Regenerated.
        * generated/maxloc0_16_i16.c: Regenerated.
        * generated/maxloc0_16_i2.c: Regenerated.
        * generated/maxloc0_16_i4.c: Regenerated.
        * generated/maxloc0_16_i8.c: Regenerated.
        * generated/maxloc0_16_r10.c: Regenerated.
        * generated/maxloc0_16_r16.c: Regenerated.
        * generated/maxloc0_16_r4.c: Regenerated.
        * generated/maxloc0_16_r8.c: Regenerated.
        * generated/maxloc0_16_s1.c: Regenerated.
        * generated/maxloc0_16_s4.c: Regenerated.
        * generated/maxloc0_4_i1.c: Regenerated.
        * generated/maxloc0_4_i16.c: Regenerated.
        * generated/maxloc0_4_i2.c: Regenerated.
        * generated/maxloc0_4_i4.c: Regenerated.
        * generated/maxloc0_4_i8.c: Regenerated.
        * generated/maxloc0_4_r10.c: Regenerated.
        * generated/maxloc0_4_r16.c: Regenerated.
        * generated/maxloc0_4_r4.c: Regenerated.
        * generated/maxloc0_4_r8.c: Regenerated.
        * generated/maxloc0_4_s1.c: Regenerated.
        * generated/maxloc0_4_s4.c: Regenerated.
        * generated/maxloc0_8_i1.c: Regenerated.
        * generated/maxloc0_8_i16.c: Regenerated.
        * generated/maxloc0_8_i2.c: Regenerated.
        * generated/maxloc0_8_i4.c: Regenerated.
        * generated/maxloc0_8_i8.c: Regenerated.
        * generated/maxloc0_8_r10.c: Regenerated.
        * generated/maxloc0_8_r16.c: Regenerated.
        * generated/maxloc0_8_r4.c: Regenerated.
        * generated/maxloc0_8_r8.c: Regenerated.
        * generated/maxloc0_8_s1.c: Regenerated.
        * generated/maxloc0_8_s4.c: Regenerated.
        * generated/maxloc1_16_i1.c: Regenerated.
        * generated/maxloc1_16_i16.c: Regenerated.
        * generated/maxloc1_16_i2.c: Regenerated.
        * generated/maxloc1_16_i4.c: Regenerated.
        * generated/maxloc1_16_i8.c: Regenerated.
        * generated/maxloc1_16_r10.c: Regenerated.
        * generated/maxloc1_16_r16.c: Regenerated.
        * generated/maxloc1_16_r4.c: Regenerated.
        * generated/maxloc1_16_r8.c: Regenerated.
        * generated/maxloc1_16_s1.c: Regenerated.
        * generated/maxloc1_16_s4.c: Regenerated.
        * generated/maxloc1_4_i1.c: Regenerated.
        * generated/maxloc1_4_i16.c: Regenerated.
        * generated/maxloc1_4_i2.c: Regenerated.
        * generated/maxloc1_4_i4.c: Regenerated.
        * generated/maxloc1_4_i8.c: Regenerated.
        * generated/maxloc1_4_r10.c: Regenerated.
        * generated/maxloc1_4_r16.c: Regenerated.
        * generated/maxloc1_4_r4.c: Regenerated.
        * generated/maxloc1_4_r8.c: Regenerated.
        * generated/maxloc1_4_s1.c: Regenerated.
        * generated/maxloc1_4_s4.c: Regenerated.
        * generated/maxloc1_8_i1.c: Regenerated.
        * generated/maxloc1_8_i16.c: Regenerated.
        * generated/maxloc1_8_i2.c: Regenerated.
        * generated/maxloc1_8_i4.c: Regenerated.
        * generated/maxloc1_8_i8.c: Regenerated.
        * generated/maxloc1_8_r10.c: Regenerated.
        * generated/maxloc1_8_r16.c: Regenerated.
        * generated/maxloc1_8_r4.c: Regenerated.
        * generated/maxloc1_8_r8.c: Regenerated.
        * generated/maxloc1_8_s1.c: Regenerated.
        * generated/maxloc1_8_s4.c: Regenerated.
        * generated/maxval0_s1.c: Regenerated.
        * generated/maxval0_s4.c: Regenerated.
        * generated/maxval1_s1.c: Regenerated.
        * generated/maxval1_s4.c: Regenerated.
        * generated/maxval_i1.c: Regenerated.
        * generated/maxval_i16.c: Regenerated.
        * generated/maxval_i2.c: Regenerated.
        * generated/maxval_i4.c: Regenerated.
        * generated/maxval_i8.c: Regenerated.
        * generated/maxval_r10.c: Regenerated.
        * generated/maxval_r16.c: Regenerated.
        * generated/maxval_r4.c: Regenerated.
        * generated/maxval_r8.c: Regenerated.
        * generated/minloc0_16_i1.c: Regenerated.
        * generated/minloc0_16_i16.c: Regenerated.
        * generated/minloc0_16_i2.c: Regenerated.
        * generated/minloc0_16_i4.c: Regenerated.
        * generated/minloc0_16_i8.c: Regenerated.
        * generated/minloc0_16_r10.c: Regenerated.
        * generated/minloc0_16_r16.c: Regenerated.
        * generated/minloc0_16_r4.c: Regenerated.
        * generated/minloc0_16_r8.c: Regenerated.
        * generated/minloc0_16_s1.c: Regenerated.
        * generated/minloc0_16_s4.c: Regenerated.
        * generated/minloc0_4_i1.c: Regenerated.
        * generated/minloc0_4_i16.c: Regenerated.
        * generated/minloc0_4_i2.c: Regenerated.
        * generated/minloc0_4_i4.c: Regenerated.
        * generated/minloc0_4_i8.c: Regenerated.
        * generated/minloc0_4_r10.c: Regenerated.
        * generated/minloc0_4_r16.c: Regenerated.
        * generated/minloc0_4_r4.c: Regenerated.
        * generated/minloc0_4_r8.c: Regenerated.
        * generated/minloc0_4_s1.c: Regenerated.
        * generated/minloc0_4_s4.c: Regenerated.
        * generated/minloc0_8_i1.c: Regenerated.
        * generated/minloc0_8_i16.c: Regenerated.
        * generated/minloc0_8_i2.c: Regenerated.
        * generated/minloc0_8_i4.c: Regenerated.
        * generated/minloc0_8_i8.c: Regenerated.
        * generated/minloc0_8_r10.c: Regenerated.
        * generated/minloc0_8_r16.c: Regenerated.
        * generated/minloc0_8_r4.c: Regenerated.
        * generated/minloc0_8_r8.c: Regenerated.
        * generated/minloc0_8_s1.c: Regenerated.
        * generated/minloc0_8_s4.c: Regenerated.
        * generated/minloc1_16_i1.c: Regenerated.
        * generated/minloc1_16_i16.c: Regenerated.
        * generated/minloc1_16_i2.c: Regenerated.
        * generated/minloc1_16_i4.c: Regenerated.
        * generated/minloc1_16_i8.c: Regenerated.
        * generated/minloc1_16_r10.c: Regenerated.
        * generated/minloc1_16_r16.c: Regenerated.
        * generated/minloc1_16_r4.c: Regenerated.
        * generated/minloc1_16_r8.c: Regenerated.
        * generated/minloc1_16_s1.c: Regenerated.
        * generated/minloc1_16_s4.c: Regenerated.
        * generated/minloc1_4_i1.c: Regenerated.
        * generated/minloc1_4_i16.c: Regenerated.
        * generated/minloc1_4_i2.c: Regenerated.
        * generated/minloc1_4_i4.c: Regenerated.
        * generated/minloc1_4_i8.c: Regenerated.
        * generated/minloc1_4_r10.c: Regenerated.
        * generated/minloc1_4_r16.c: Regenerated.
        * generated/minloc1_4_r4.c: Regenerated.
        * generated/minloc1_4_r8.c: Regenerated.
        * generated/minloc1_4_s1.c: Regenerated.
        * generated/minloc1_4_s4.c: Regenerated.
        * generated/minloc1_8_i1.c: Regenerated.
        * generated/minloc1_8_i16.c: Regenerated.
        * generated/minloc1_8_i2.c: Regenerated.
        * generated/minloc1_8_i4.c: Regenerated.
        * generated/minloc1_8_i8.c: Regenerated.
        * generated/minloc1_8_r10.c: Regenerated.
        * generated/minloc1_8_r16.c: Regenerated.
        * generated/minloc1_8_r4.c: Regenerated.
        * generated/minloc1_8_r8.c: Regenerated.
        * generated/minloc1_8_s1.c: Regenerated.
        * generated/minloc1_8_s4.c: Regenerated.
        * generated/minval0_s1.c: Regenerated.
        * generated/minval0_s4.c: Regenerated.
        * generated/minval1_s1.c: Regenerated.
        * generated/minval1_s4.c: Regenerated.
        * generated/minval_i1.c: Regenerated.
        * generated/minval_i16.c: Regenerated.
        * generated/minval_i2.c: Regenerated.
        * generated/minval_i4.c: Regenerated.
        * generated/minval_i8.c: Regenerated.
        * generated/minval_r10.c: Regenerated.
        * generated/minval_r16.c: Regenerated.
        * generated/minval_r4.c: Regenerated.
        * generated/minval_r8.c: Regenerated.
        * generated/product_c10.c: Regenerated.
        * generated/product_c16.c: Regenerated.
        * generated/product_c4.c: Regenerated.
        * generated/product_c8.c: Regenerated.
        * generated/product_i1.c: Regenerated.
        * generated/product_i16.c: Regenerated.
        * generated/product_i2.c: Regenerated.
        * generated/product_i4.c: Regenerated.
        * generated/product_i8.c: Regenerated.
        * generated/product_r10.c: Regenerated.
        * generated/product_r16.c: Regenerated.
        * generated/product_r4.c: Regenerated.
        * generated/product_r8.c: Regenerated.
        * generated/sum_c10.c: Regenerated.
        * generated/sum_c16.c: Regenerated.
        * generated/sum_c4.c: Regenerated.
        * generated/sum_c8.c: Regenerated.
        * generated/sum_i1.c: Regenerated.
        * generated/sum_i16.c: Regenerated.
        * generated/sum_i2.c: Regenerated.
        * generated/sum_i4.c: Regenerated.
        * generated/sum_i8.c: Regenerated.
        * generated/sum_r10.c: Regenerated.
        * generated/sum_r16.c: Regenerated.
        * generated/sum_r4.c: Regenerated.
        * generated/sum_r8.c: Regenerated.

2018-12-31  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/82995
* gfortran.dg/optional_absent_4.f90: New test.
* gfortran.dg/optional_absent_5.f90: New test.

From-SVN: r267487

5 years agoFix scan pattern of a test-case.
Martin Liska [Mon, 31 Dec 2018 14:11:09 +0000 (15:11 +0100)]
Fix scan pattern of a test-case.

2018-12-31  Martin Liska  <mliska@suse.cz>

* g++.dg/tree-prof/devirt.C: Fix scan pattern and test options.

From-SVN: r267486

5 years agopredict.c (set_even_probabilities): Include also unlikely_count in calculation.
Martin Liska [Mon, 31 Dec 2018 13:46:08 +0000 (14:46 +0100)]
predict.c (set_even_probabilities): Include also unlikely_count in calculation.

).

2018-12-31  Martin Liska  <mliska@suse.cz>

* predict.c (set_even_probabilities): Include also
unlikely_count in calculation.
(combine_predictions_for_bb): Consider also HOT and
COLD labels predictions.
* predict.def (PRED_HOT_LABEL): Move it just after
__builtin_expect_with_probability predictor.
(PRED_COLD_LABEL): Likewise.
2018-12-31  Martin Liska  <mliska@suse.cz>

* g++.dg/predict-2.C: New test.
* g++.dg/predict-3.C: New test.
* g++.dg/predict-4.C: New test.
* gcc.dg/tree-ssa/attr-hotcold-2.c: Adjust test-case.

From-SVN: r267485

5 years ago* x86-tune.def: Enable inter_unit_moves_to_vec for generic.
Jan Hubicka [Mon, 31 Dec 2018 10:05:30 +0000 (11:05 +0100)]
* x86-tune.def: Enable inter_unit_moves_to_vec for generic.

From-SVN: r267484

5 years agogimple-fold.c (get_range_strlen): Minor logic cleanup.
Martin Sebor [Mon, 31 Dec 2018 03:18:49 +0000 (03:18 +0000)]
gimple-fold.c (get_range_strlen): Minor logic cleanup.

* gimple-fold.c (get_range_strlen): Minor logic cleanup.  Add comments
on code's intent.

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

5 years agogimple-fold.c (strlen_range_kind): New enum.
Martin Sebor [Mon, 31 Dec 2018 01:01:10 +0000 (01:01 +0000)]
gimple-fold.c (strlen_range_kind): New enum.

* gimple-fold.c (strlen_range_kind): New enum.
(get_range_strlen): Update signature to use strlen_range_kind
instead of type+fuzzy.
(get_range_strlen_tree): Update signature to use
strlen_range_kind instead of type+fuzzy.  Pass rkind down to
get_range_strlen.  Check the rkind enum value instead of
type+fuzzy.
(get_range_strlen): Similarly.
(get_maxval_strlen): Update signature to make NONSTR argument have
a default value and make static.  Add asserts to ensure sanity of
arguments.  Update calls to get_range_strlen.
(gimple_fold_builtin_strcpy): Update calls to get_maxval_strlen.
(gimple_fold_builtin_strcat, gimple_fold_builtin_fputs): Similarly.
(gimple_fold_builtin_memory_chk): Similarly.
(gimple_fold_builtin_stxcpy_chk): Similarly.
(gimple_fold_builtin_snprintf_chk): Similarly.
(gimple_fold_builtin_sprintf, gimple_fold_builtin_snprintf): Similarly.
* gimple-fold.h (get_maxval_strlen): Delete prototype.

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

5 years agoDaily bump.
GCC Administrator [Mon, 31 Dec 2018 00:16:12 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r267481

5 years agoUse dg-additional-options instead of dg-options
H.J. Lu [Sun, 30 Dec 2018 17:36:05 +0000 (17:36 +0000)]
Use dg-additional-options instead of dg-options

Use dg-additional-options rather than dg-options to avoid overwriting the
default IEEE options which are passed by ieee.exp and necessary.

PR testsuite/88639
* gfortran.dg/ieee/ieee_10.f90: Use dg-additional-options
instead of dg-options.

From-SVN: r267478

5 years agoDaily bump.
GCC Administrator [Sun, 30 Dec 2018 00:16:15 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r267473

5 years agoMakefile.am (xcoff_%.c): Use an actual newline instead of \n in sed pattern.
Gerald Pfeifer [Sat, 29 Dec 2018 23:22:50 +0000 (23:22 +0000)]
Makefile.am (xcoff_%.c): Use an actual newline instead of \n in sed pattern.

* Makefile.am (xcoff_%.c): Use an actual newline instead of \n
in sed pattern.
* Makefile.in: Regenerate.

From-SVN: r267470

5 years agokey2.C: Silence the [-Wreturn-type] warning.
Dominique d'Humieres [Sat, 29 Dec 2018 22:30:14 +0000 (23:30 +0100)]
key2.C: Silence the [-Wreturn-type] warning.

2018-12-29  Dominique d'Humieres  <dominiq@gcc.gnu.org>

* g++.dg/abi/key2.C: Silence the [-Wreturn-type] warning.

From-SVN: r267469

5 years agoexpr.c (external_spec_function): Add ieee_support_subnormal to list of IEEE inquiry...
Steven G. Kargl [Sat, 29 Dec 2018 19:14:32 +0000 (19:14 +0000)]
expr.c (external_spec_function): Add ieee_support_subnormal to list of IEEE inquiry functions.

2018-12-29  Steven G. Kargl  <kargl@gcc.gnu.org>

* expr.c (external_spec_function): Add ieee_support_subnormal to list
of IEEE inquiry functions.

2018-12-29  Steven G. Kargl  <kargl@gcc.gnu.org>

* gfortran.map: Expose subnormal functions in dynamic library.
* ieee/ieee_arithmetic.F90: Add support for IEEE_SUBNORMAL,
IEEE_POSITIVE_SUBNORMAL, and IEEE_NEGATIVE_SUBNORMAL.
* ieee/ieee_helper.c: Ditto.
* ieee/ieee_features.F90:  Add IEEE_SUBNORMAL.

2018-12-29  Steven G. Kargl  <kargl@gcc.gnu.org>

* gfortran.dg/ieee/ieee_11.F90: New test.

From-SVN: r267468

5 years agomsp430.c (msp430_attr): Warn when the critical and interrupt function attributes...
Jozef Lawrynowicz [Sat, 29 Dec 2018 19:00:48 +0000 (19:00 +0000)]
msp430.c (msp430_attr): Warn when the critical and interrupt function attributes are used together.

2018-12-29  Jozef Lawrynowicz  <jozef.l@mittosystems.com>

gcc/ChangeLog:

* config/msp430/msp430.c (msp430_attr): Warn when the critical and
interrupt function attributes are used together.
* gcc/doc/extend.texi: Update documentation on the critical attribute.

gcc/testsuite/ChangeLog:

* gcc.target/msp430/critical-interrupt.c: New test.

From-SVN: r267467

5 years agore PR fortran/88342 (Possible bug with IEEE_POSITIVE_INF and -ffpe-trap=overflow)
Steven G. Kargl [Sat, 29 Dec 2018 18:10:57 +0000 (18:10 +0000)]
re PR fortran/88342 (Possible bug with IEEE_POSITIVE_INF and -ffpe-trap=overflow)

2018-12-29  Steven G. Kargl  <kargl@gcc.gnu.org>

PR fortran/88342
* ieee/ieee_arithmetic.F90: Prevent exceptions in IEEE_VALUE if
-ffpe-trap=invalid or -ffpe-trap=overflow is used.

2018-12-29  Steven G. Kargl  <kargl@gcc.gnu.org>

PR fortran/88342
* gfortran.dg/ieee/ieee_10.f90:  New test.

From-SVN: r267465

5 years agocpp.c (gfc_cpp_init): Add pre-defined macros for INTEGER(1) INTEGER(2)...
Steven G. Kargl [Sat, 29 Dec 2018 17:43:02 +0000 (17:43 +0000)]
cpp.c (gfc_cpp_init): Add pre-defined macros for INTEGER(1) INTEGER(2)...

2018-12-25  Steven G. Kargl  <kargl@gcc.gnu.org>

* cpp.c (gfc_cpp_init):  Add pre-defined macros for INTEGER(1)
INTEGER(2), INTEGER(8) and INTEGER(16) if supported.  Add pre-defined
macros for REAL(10) and REAL(16) if available.
* gfortran.texi: Document new macros.

From-SVN: r267464

5 years agoconfig.gcc (hppa*64*-*-linux*): Add pa/t-pa to tmake_file.
John David Anglin [Sat, 29 Dec 2018 17:02:51 +0000 (17:02 +0000)]
config.gcc (hppa*64*-*-linux*): Add pa/t-pa to tmake_file.

        * config.gcc (hppa*64*-*-linux*): Add pa/t-pa to tmake_file.  Define
        d_target_objs.
(hppa*-*-openbsd*): Likewise.
(hppa[12]*-*-hpux10*): Likewise.
(hppa*64*-*-hpux11*): Likewise.
(hppa[12]*-*-hpux11*): Likewise.

From-SVN: r267463

5 years agore PR tree-optimization/68356 (FAIL: gcc.dg/torture/pr68264.c -O* execution test...
Dominique d'Humieres [Sat, 29 Dec 2018 15:05:55 +0000 (16:05 +0100)]
re PR tree-optimization/68356 (FAIL: gcc.dg/torture/pr68264.c   -O*  execution test on x86_64-apple-darwin1(0|4))

2018-12-29  Dominique d'Humieres  <dominiq@gcc.gnu.org>

PR tree-optimization/68356
PR target/81210
PR target/81693
* gcc.dg/torture/pr68264.c: Skip on darwin.
* gcc.dg/torture/pr68037-1.c: Likewise.
* gcc.dg/torture/pr68037-2.c: Likewise.
* gcc.dg/torture/pr68037-3.c: Likewise.
* gcc.dg/torture/pr25967-1.c: Likewise.
* gcc.dg/torture/pr25967-2.c: Likewise.

M    ChangeLog
M    gcc.dg/torture/pr25967-1.c
M    gcc.dg/torture/pr25967-2.c
M    gcc.dg/torture/pr68037-1.c
M    gcc.dg/torture/pr68037-2.c
M    gcc.dg/torture/pr68037-3.c
M    gcc.dg/torture/pr68264.c

From-SVN: r267462

5 years agore PR ipa/88586 (ICE: Segmentation fault (in free_lang_data_in_decl))
Jakub Jelinek [Sat, 29 Dec 2018 10:53:36 +0000 (11:53 +0100)]
re PR ipa/88586 (ICE: Segmentation fault (in free_lang_data_in_decl))

PR ipa/88586
* omp-low.c (lower_omp_task_reductions): Set DECL_CONTEXT on field
and ifield.  Update TYPE_ALIGN from alignment of field, ifield or
bfield.

* g++.dg/gomp/pr88586.C: New test.

From-SVN: r267461

5 years agoDaily bump.
GCC Administrator [Sat, 29 Dec 2018 00:16:30 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r267460

5 years agoruntime: prevent deadlock when profiling signal arrives in stack scan
Ian Lance Taylor [Sat, 29 Dec 2018 00:07:06 +0000 (00:07 +0000)]
runtime: prevent deadlock when profiling signal arrives in stack scan

    Precise stack scan needs to unwind the stack. When it is
    unwinding the stack, if a profiling signal arrives, which also
    does a traceback, it may deadlock in dl_iterate_phdr. Prevent
    this deadlock by setting up runtime_in_callers before traceback.

    Reviewed-on: https://go-review.googlesource.com/c/155766

From-SVN: r267457

5 years agoi386.h (ADDITIONAL_REGISTER_NAMES): Add sil, dil, bpl and spl aliases.
Uros Bizjak [Fri, 28 Dec 2018 22:50:12 +0000 (23:50 +0100)]
i386.h (ADDITIONAL_REGISTER_NAMES): Add sil, dil, bpl and spl aliases.

* config/i386/i386.h (ADDITIONAL_REGISTER_NAMES): Add
sil, dil, bpl and spl aliases.

From-SVN: r267456

5 years agocompiler: remove escapes_ field from Variable and Result_variable
Ian Lance Taylor [Fri, 28 Dec 2018 21:10:33 +0000 (21:10 +0000)]
compiler: remove escapes_ field from Variable and Result_variable

    The fields were set to true initially and never set to false.
    These were left over from an earlier attempt at escape analysis.

    Reviewed-on: https://go-review.googlesource.com/c/155750

From-SVN: r267455

5 years agotree-ssa-strlen.c (maybe_diag_stxncpy_trunc): Avoid undesirable warning.
Martin Sebor [Fri, 28 Dec 2018 19:26:14 +0000 (19:26 +0000)]
tree-ssa-strlen.c (maybe_diag_stxncpy_trunc): Avoid undesirable warning.

* tree-ssa-strlen.c (maybe_diag_stxncpy_trunc): Avoid
undesirable warning.

From-SVN: r267454

5 years agoident-1b.c: XFAIL AIX and Darwin.
David Edelsohn [Fri, 28 Dec 2018 19:14:51 +0000 (19:14 +0000)]
ident-1b.c: XFAIL AIX and Darwin.

        * c-c++-common/ident-1b.c: XFAIL AIX and Darwin.
        * c-c++-common/ident-2b.c: Likewise.

From-SVN: r267453

5 years agore PR libfortran/81984 (NULL string pointer dereferencing forces undefined behaviour...
Steven G. Kargl [Fri, 28 Dec 2018 18:26:09 +0000 (18:26 +0000)]
re PR libfortran/81984 (NULL string pointer dereferencing forces undefined behaviour in libgfortran)

2018-12-28  Steven G. Kargl  <kargl@gcc.gnu.org>

PR fortran/81984
* intrinsics/string_intrinsics_inc.c: Placate the sanitizer.

From-SVN: r267452

5 years agox86-64: Remove .file directive from snapshot source
H.J. Lu [Fri, 28 Dec 2018 15:13:14 +0000 (15:13 +0000)]
x86-64: Remove .file directive from snapshot source

* gcc.target/x86_64/abi/avx/asm-support-darwin.s: Remove .file
directive.
* gcc.target/x86_64/abi/avx/asm-support.S: Likewise.
* gcc.target/x86_64/abi/avx512f/asm-support.S: Likewise.

From-SVN: r267451

5 years agox86-64: Remove .file directive from snapshot source
H.J. Lu [Fri, 28 Dec 2018 14:40:27 +0000 (14:40 +0000)]
x86-64: Remove .file directive from snapshot source

Since snapshot() is implemented in assembly code, .file directive should
be removed.  Otherwise, debugger can't find the snapshot source.

* gcc.target/x86_64/abi/asm-support-darwin.s: Remove .file
directive.
* gcc.target/x86_64/abi/asm-support.S: Likewise.

From-SVN: r267450

5 years agoFor libgomp OpenACC entry points, redefine the "device" argument to "flags"
Thomas Schwinge [Fri, 28 Dec 2018 11:34:14 +0000 (12:34 +0100)]
For libgomp OpenACC entry points, redefine the "device" argument to "flags"

... so that we're then able to use this for other flags in addition to
"GOACC_FLAG_HOST_FALLBACK".

gcc/
* omp-expand.c (expand_omp_target): Restructure OpenACC vs. OpenMP
code paths.  Update for libgomp OpenACC entry points change.
include/
* gomp-constants.h (GOACC_FLAG_HOST_FALLBACK)
(GOACC_FLAGS_MARSHAL_OP, GOACC_FLAGS_UNMARSHAL): Define.
libgomp/
* oacc-parallel.c (GOACC_parallel_keyed, GOACC_parallel)
(GOACC_data_start, GOACC_enter_exit_data, GOACC_update)
(GOACC_declare): Redefine the "device" argument to "flags".

From-SVN: r267448

5 years agopoly_int: get_inner_reference & co.: fix known_eq typo/bug
Thomas Schwinge [Fri, 28 Dec 2018 11:34:03 +0000 (12:34 +0100)]
poly_int: get_inner_reference & co.: fix known_eq typo/bug

gcc/
* gimplify.c (gimplify_scan_omp_clauses): Fix known_eq typo/bug.

Co-Authored-By: Julian Brown <julian@codesourcery.com>
From-SVN: r267447

5 years agoCleanup libgomp's coalesce chunk data structures
Thomas Schwinge [Fri, 28 Dec 2018 11:33:54 +0000 (12:33 +0100)]
Cleanup libgomp's coalesce chunk data structures

libgomp/
* target.c (struct gomp_coalesce_chunk): New structure.
(struct gomp_coalesce_buf): Update the chunks member to use that
type.  Adjust all users.

Co-Authored-By: Cesar Philippidis <cesar@codesourcery.com>
From-SVN: r267446