]> git.ipfire.org Git - thirdparty/gcc.git/log
thirdparty/gcc.git
6 years ago PR target/88594
jakub [Fri, 4 Jan 2019 09:00:05 +0000 (09:00 +0000)] 
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267571 138bc75d-0d04-0410-961f-82ee72b054a4

6 years agox86: relax mask register constraints
jbeulich [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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267570 138bc75d-0d04-0410-961f-82ee72b054a4

6 years agoPR tree-optimization/88659 - ICE in maybe_warn_nonstring_arg
msebor [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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267569 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267568 138bc75d-0d04-0410-961f-82ee72b054a4

6 years agoPR libstdc++/88607 replace some more UTF-8 characters
redi [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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267565 138bc75d-0d04-0410-961f-82ee72b054a4

6 years agoPR libstdc++/88607 replace or remove unnecessary UTF-8 characters
redi [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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267564 138bc75d-0d04-0410-961f-82ee72b054a4

6 years agoPR libstdc++/88681 export missing symbols
redi [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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267563 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago2019-01-03 Aaron Sawdey <acsawdey@linux.ibm.com>
acsawdey [Thu, 3 Jan 2019 19:20:57 +0000 (19:20 +0000)] 
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267562 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago[nvptx] Add vector_length 128 testcases
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267559 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago[nvptx] Add nvptx_mach_vector_length, nvptx_mach_max_workers
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267558 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago[nvptx] Factor out populate_offload_attrs
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267557 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago[nvptx] Add early-out cases in nvptx_goacc_validate_dims
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267556 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago[nvptx] Eliminate changed local var in nvptx_goacc_validate_dims
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267555 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago2019-01-02 Thomas Koenig <tkoenig@gcc.gnu.org>
tkoenig [Thu, 3 Jan 2019 12:32:34 +0000 (12:32 +0000)] 
2019-01-02  Thomas Koenig  <tkoenig@gcc.gnu.org>

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267553 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago2019-01-03 Jan Hubicka <hubicka@ucw.cz>
rguenth [Thu, 3 Jan 2019 12:23:27 +0000 (12:23 +0000)] 
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267552 138bc75d-0d04-0410-961f-82ee72b054a4

6 years agoUpdate config.guess, config.sub (PR target/88535)
ro [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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267551 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago PR debug/88644
jakub [Thu, 3 Jan 2019 11:05:24 +0000 (11:05 +0000)] 
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267550 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago * ipa-utils.c (scale_ipa_profile_for_fn): Break out from ...
hubicka [Thu, 3 Jan 2019 10:19:03 +0000 (10:19 +0000)] 
* ipa-utils.c (scale_ipa_profile_for_fn): Break out from ...
(ipa_merge_profiles): ... here; do not ICE on thunks and aliases.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267549 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago PR c++/88636
jakub [Thu, 3 Jan 2019 10:11:40 +0000 (10:11 +0000)] 
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267548 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago/cp
paolo [Thu, 3 Jan 2019 10:00:30 +0000 (10:00 +0000)] 
/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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267547 138bc75d-0d04-0410-961f-82ee72b054a4

6 years agoAdjust a dump file in a test-case (PR testsuite/88436).
marxin [Thu, 3 Jan 2019 07:53:37 +0000 (07:53 +0000)] 
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267541 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267540 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago * gimple-fold.c (strlen_range_kind): Remove SRK_LENRANGE_2.
law [Wed, 2 Jan 2019 23:59:51 +0000 (23:59 +0000)] 
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267537 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago PR c++/81486 - CTAD failing with ().
mpolacek [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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267535 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago PR c++/88631 - CTAD failing for value-initialization.
mpolacek [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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267533 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago PR c++/88612 - ICE with -Waddress-of-packed-member.
mpolacek [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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267532 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago * gimple-fold.c (gimple_fold_builtin_strlen): Use set_strlen_range
law [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.
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267531 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago PR testsuite/87304
jakub [Wed, 2 Jan 2019 19:50:13 +0000 (19:50 +0000)] 
PR testsuite/87304
* gcc.dg/vect/bb-slp-over-widen-1.c: Expect basic block vectorized
messages only on vect_hw_misalign targets.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267528 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago2019-01-01 Steven G. Kargl <kargl@gcc.gnu.org>
kargl [Wed, 2 Jan 2019 19:13:29 +0000 (19:13 +0000)] 
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267526 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267521 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago PR middle-end/88663
law [Wed, 2 Jan 2019 18:30:50 +0000 (18:30 +0000)] 
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267520 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago PR c++/86875
mpolacek [Wed, 2 Jan 2019 17:07:02 +0000 (17:07 +0000)] 
PR c++/86875
* g++.dg/cpp1y/lambda-generic-86875.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267519 138bc75d-0d04-0410-961f-82ee72b054a4

6 years agoAdd more testcases for class template argument deduction of maps
redi [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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267518 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago2019-01-02 Thomas Koenig <tkoenig@gcc.gnu.org>
tkoenig [Wed, 2 Jan 2019 15:25:47 +0000 (15:25 +0000)] 
2019-01-02  Thomas Koenig  <tkoenig@gcc.gnu.org>

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267517 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago PR lto/88130
hubicka [Wed, 2 Jan 2019 15:23:27 +0000 (15:23 +0000)] 
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267515 138bc75d-0d04-0410-961f-82ee72b054a4

6 years agoCalculate prediction remainder at proper place (PR tree-optimization/88650).
marxin [Wed, 2 Jan 2019 14:03:53 +0000 (14:03 +0000)] 
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267513 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago2019-01-02 Richard Biener <rguenther@suse.de>
rguenth [Wed, 2 Jan 2019 13:52:03 +0000 (13:52 +0000)] 
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267512 138bc75d-0d04-0410-961f-82ee72b054a4

6 years agoFix g++.dg/gcov/pr88263.C compilation on Solaris
ro [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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267511 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago2019-01-02 Richard Biener <rguenther@suse.de>
rguenth [Wed, 2 Jan 2019 12:19:10 +0000 (12:19 +0000)] 
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267510 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago2019-01-02 Richard Biener <rguenther@suse.de>
rguenth [Wed, 2 Jan 2019 11:04:45 +0000 (11:04 +0000)] 
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267509 138bc75d-0d04-0410-961f-82ee72b054a4

6 years agoFix year range in copyright header
redi [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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267508 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago PR ipa/88561
jakub [Wed, 2 Jan 2019 09:25:59 +0000 (09:25 +0000)] 
PR ipa/88561
* g++.dg/tree-prof/devirt.C: Expect _ZThn16 only for lp64 and llp64
targets and expect _ZThn8 for ilp32 targets.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267507 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago2019-01-02 Richard Biener <rguenther@suse.de>
rguenth [Wed, 2 Jan 2019 08:49:07 +0000 (08:49 +0000)] 
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267506 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago * gimple-fold.c (get_range_strlen_tree): Record if the computed
law [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.  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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267505 138bc75d-0d04-0410-961f-82ee72b054a4

6 years agoFix year range in libstdc++v3/testsuite/.../empty.cc copyright header
brobecke [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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267504 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago * gimple-fold.h (get_range_strlen): Update prototype.
law [Wed, 2 Jan 2019 06:02:37 +0000 (06:02 +0000)] 
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267503 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267502 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago2019-01-01 Thomas Koenig <tkoenig@gcc.gnu.org>
tkoenig [Tue, 1 Jan 2019 21:19:53 +0000 (21:19 +0000)] 
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267499 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago * gimple-fold.c (get_range_strlen): Update prototype.
law [Tue, 1 Jan 2019 18:20:13 +0000 (18:20 +0000)] 
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267498 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago * g++.dg/ipa/devirt-36.C: Add dg-do-compile.
hubicka [Tue, 1 Jan 2019 13:30:53 +0000 (13:30 +0000)] 
* g++.dg/ipa/devirt-36.C: Add dg-do-compile.
* g++.dg/ipa/devirt-53.C: Fix scan template.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267497 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago * g++.dg/lto/devirt-13_0.C: Drop broken scan of ssa dump.
hubicka [Tue, 1 Jan 2019 13:10:39 +0000 (13:10 +0000)] 
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267496 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago * coverage.c (get_coverage_counts): Use current_function_decl.
hubicka [Tue, 1 Jan 2019 12:49:18 +0000 (12:49 +0000)] 
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267495 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago Update copyright years.
jakub [Tue, 1 Jan 2019 12:31:55 +0000 (12:31 +0000)] 
Update copyright years.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267494 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267493 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago * gcc.c (process_command): Update copyright notice dates.
jakub [Tue, 1 Jan 2019 11:34:49 +0000 (11:34 +0000)] 
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267492 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267491 138bc75d-0d04-0410-961f-82ee72b054a4

6 years agoPR target/86814
jcmvbkbc [Mon, 31 Dec 2018 16:51:36 +0000 (16:51 +0000)] 
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267488 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago2018-12-31 Thomas Koenig <tkoenig@gcc.gnu.org>
tkoenig [Mon, 31 Dec 2018 14:59:46 +0000 (14:59 +0000)] 
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267487 138bc75d-0d04-0410-961f-82ee72b054a4

6 years agoFix scan pattern of a test-case.
marxin [Mon, 31 Dec 2018 14:11:09 +0000 (14:11 +0000)] 
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267486 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago).
marxin [Mon, 31 Dec 2018 13:46:08 +0000 (13:46 +0000)] 
).

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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267485 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago * x86-tune.def: Enable inter_unit_moves_to_vec for generic.
hubicka [Mon, 31 Dec 2018 10:05:30 +0000 (10:05 +0000)] 
* x86-tune.def: Enable inter_unit_moves_to_vec for generic.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267484 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago * gimple-fold.c (get_range_strlen): Minor logic cleanup. Add comments
law [Mon, 31 Dec 2018 03:18:49 +0000 (03:18 +0000)] 
* gimple-fold.c (get_range_strlen): Minor logic cleanup.  Add comments
on code's intent.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267483 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago * gimple-fold.c (strlen_range_kind): New enum.
law [Mon, 31 Dec 2018 01:01:10 +0000 (01:01 +0000)] 
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267482 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267481 138bc75d-0d04-0410-961f-82ee72b054a4

6 years agoUse dg-additional-options instead of dg-options
hjl [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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267478 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267473 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago * Makefile.am (xcoff_%.c): Use an actual newline instead of \n
gerald [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.in: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267470 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago2018-12-29 Dominique d'Humieres <dominiq@gcc.gnu.org>
dominiq [Sat, 29 Dec 2018 22:30:14 +0000 (22:30 +0000)] 
2018-12-29  Dominique d'Humieres  <dominiq@gcc.gnu.org>

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267469 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago2018-12-29 Steven G. Kargl <kargl@gcc.gnu.org>
kargl [Sat, 29 Dec 2018 19:14:32 +0000 (19:14 +0000)] 
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267468 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago2018-12-29 Jozef Lawrynowicz <jozef.l@mittosystems.com>
jozefl [Sat, 29 Dec 2018 19:00:48 +0000 (19:00 +0000)] 
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267467 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago2018-12-29 Steven G. Kargl <kargl@gcc.gnu.org>
kargl [Sat, 29 Dec 2018 18:10:57 +0000 (18:10 +0000)] 
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267465 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago2018-12-25 Steven G. Kargl <kargl@gcc.gnu.org>
kargl [Sat, 29 Dec 2018 17:43:02 +0000 (17:43 +0000)] 
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267464 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago * config.gcc (hppa*64*-*-linux*): Add pa/t-pa to tmake_file. Define
danglin [Sat, 29 Dec 2018 17:02:51 +0000 (17:02 +0000)] 
    * 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267463 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago2018-12-29 Dominique d'Humieres <dominiq@gcc.gnu.org>
dominiq [Sat, 29 Dec 2018 15:05:55 +0000 (15:05 +0000)] 
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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267462 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago PR ipa/88586
jakub [Sat, 29 Dec 2018 10:53:36 +0000 (10:53 +0000)] 
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267461 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267460 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago runtime: prevent deadlock when profiling signal arrives in stack scan
ian [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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267457 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago * config/i386/i386.h (ADDITIONAL_REGISTER_NAMES): Add
uros [Fri, 28 Dec 2018 22:50:12 +0000 (22:50 +0000)] 
* config/i386/i386.h (ADDITIONAL_REGISTER_NAMES): Add
sil, dil, bpl and spl aliases.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267456 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago compiler: remove escapes_ field from Variable and Result_variable
ian [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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267455 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago * tree-ssa-strlen.c (maybe_diag_stxncpy_trunc): Avoid
law [Fri, 28 Dec 2018 19:26:14 +0000 (19:26 +0000)] 
* tree-ssa-strlen.c (maybe_diag_stxncpy_trunc): Avoid
undesirable warning.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267454 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago * c-c++-common/ident-1b.c: XFAIL AIX and Darwin.
dje [Fri, 28 Dec 2018 19:14:51 +0000 (19:14 +0000)] 
    * c-c++-common/ident-1b.c: XFAIL AIX and Darwin.
        * c-c++-common/ident-2b.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267453 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago2018-12-28 Steven G. Kargl <kargl@gcc.gnu.org>
kargl [Fri, 28 Dec 2018 18:26:09 +0000 (18:26 +0000)] 
2018-12-28  Steven G. Kargl  <kargl@gcc.gnu.org>

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267452 138bc75d-0d04-0410-961f-82ee72b054a4

6 years agox86-64: Remove .file directive from snapshot source
hjl [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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267451 138bc75d-0d04-0410-961f-82ee72b054a4

6 years agox86-64: Remove .file directive from snapshot source
hjl [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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267450 138bc75d-0d04-0410-961f-82ee72b054a4

6 years agoFor libgomp OpenACC entry points, redefine the "device" argument to "flags"
tschwinge [Fri, 28 Dec 2018 11:34:14 +0000 (11:34 +0000)] 
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".

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267448 138bc75d-0d04-0410-961f-82ee72b054a4

6 years agopoly_int: get_inner_reference & co.: fix known_eq typo/bug
tschwinge [Fri, 28 Dec 2018 11:34:03 +0000 (11:34 +0000)] 
poly_int: get_inner_reference & co.: fix known_eq typo/bug

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267447 138bc75d-0d04-0410-961f-82ee72b054a4

6 years agoCleanup libgomp's coalesce chunk data structures
tschwinge [Fri, 28 Dec 2018 11:33:54 +0000 (11:33 +0000)] 
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267446 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago[libbacktrace] Reduce memory usage in build_address_map
vries [Fri, 28 Dec 2018 03:43:56 +0000 (03:43 +0000)] 
[libbacktrace] Reduce memory usage in build_address_map

In build_address_map we allocate a unit, and then look for addresses in the
unit, which we store in the addrs vector, with the elements pointing to the
unit.  However, if we cannot find addresses in the unit, the allocated unit is
not used.

Fix this by detecting if the allocated unit has been used, and reusing it
otherwise.

Bootstrapped and reg-tested on x86_64.

2018-12-28  Tom de Vries  <tdevries@suse.de>

* dwarf.c (build_address_map): Reuse unused units.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267445 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago[libbacktrace] Simplify memory management in build_address_map
vries [Fri, 28 Dec 2018 03:43:41 +0000 (03:43 +0000)] 
[libbacktrace] Simplify memory management in build_address_map

In the main loop in build_address_map, we first read the abbrevs into a local
variable abbrevs, and then allocate the corresponding unit, after which we assign
the abbrevs to the unit.  This results in dedicated free-upon-failure
handling for the variable, and extra code to make sure that free-upon-failure
doesn't trigger once the unit has taken ownership of the abbrevs.

Simplify this by reversing the order of abbrev reading and unit allocation,
and eliminating the abbrevs local variable.

Bootstrapped and reg-tested on x86_64.

2018-12-28  Tom de Vries  <tdevries@suse.de>

* dwarf.c (build_address_map): Simplify by removing local variable
abbrevs.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267444 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago[libbacktrace] Fix memory leak in loop in build_address_map
vries [Fri, 28 Dec 2018 03:43:26 +0000 (03:43 +0000)] 
[libbacktrace] Fix memory leak in loop in build_address_map

When failing in build_address_map, we free the unit that's currently being
handled in the loop, but the ones that already have been allocated are leaked.

Fix this by keeping track of allocated units in a vector, and releasing them
upon failure.

Also, now that we have a vector of allocated units, move the freeing upon
failure of the abbrevs associated with each unit to build_address_map, and
remove the now redundant call to free_unit_addrs_vector.

Bootstrapped and reg-tested on x86_64.

2018-12-28  Ian Lance Taylor  <iant@golang.org>
    Tom de Vries  <tdevries@suse.de>

PR libbacktrace/88063
* dwarf.c (free_unit_addrs_vector): Remove.
(build_address_map): Keep track of allocated units in vector.  Free
allocated units and corresponding abbrevs upon failure.  Remove now
redundant call to free_unit_addrs_vector.  Free addrs vector upon
failure.  Free allocated unit vector.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267443 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago[libbacktrace] Fix memory leak in build_address_map
vries [Fri, 28 Dec 2018 03:43:15 +0000 (03:43 +0000)] 
[libbacktrace] Fix memory leak in build_address_map

While upon failure in build_address_map we call free_unit_addrs_vector, this
does not actually free the addrs vector, but merely the abbrevs of the units
pointed at by the elements of the addrs vector.

Fix this by adding code to build_address_map to make sure that the addrs vector
is freed upon failure.

Bootstrapped and reg-tested on x86_64.

2018-12-28  Tom de Vries  <tdevries@suse.de>

* dwarf.c (build_address_map): Free addrs vector upon failure.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267442 138bc75d-0d04-0410-961f-82ee72b054a4

6 years agoDaily bump.
gccadmin [Fri, 28 Dec 2018 00:16:12 +0000 (00:16 +0000)] 
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267441 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago * ipa-devirt.c (polymorphic_call_target_d): Add n_odr_types.
hubicka [Thu, 27 Dec 2018 21:23:30 +0000 (21:23 +0000)] 
* ipa-devirt.c (polymorphic_call_target_d): Add n_odr_types.
(polymorphic_call_target_hasher::hash): Hash it.
(polymorphic_call_target_hasher::equal): Compare it.
(possible_polymorphic_call_targets): Set it.
* tree.c (free_lang_data): Rebuild type inheritance graph even on
non-LTO path.

* g++.dg/ipa/devirt-53.C: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267438 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago2018-12-27 Steven G. Kargl <kargl@gcc.gnu.org>
kargl [Thu, 27 Dec 2018 21:13:53 +0000 (21:13 +0000)] 
2018-12-27  Steven G. Kargl  <kargl@gcc.gnu.org>

PR fortran/81027
* expr.c (gfc_check_init_expr): Distinguish assumed-shape versus
deferred-shape dummy arguments in an error message.

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

PR fortran/81027
* gfortran.dg/pr81027.f90: New test.
* gfortran.dg/initialization_7.f90: Update error message.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267437 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago2018-12-27 Steven G. Kargl <kargl@gcc.gnu.org>
kargl [Thu, 27 Dec 2018 20:57:12 +0000 (20:57 +0000)] 
2018-12-27  Steven G. Kargl  <kargl@gcc.gnu.org>

* libgomp.fortran/aligned1.f03: Fix invalid code that now causes
an error after r267415.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267436 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago runtime: delete export_arm_test.go
ian [Thu, 27 Dec 2018 16:34:50 +0000 (16:34 +0000)] 
runtime: delete export_arm_test.go

    The only thing export_arm_test.go does is to export usplit,
    which does not exist in gccgo.

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267435 138bc75d-0d04-0410-961f-82ee72b054a4

6 years ago runtime: let ARM32 EABI personality function continue unwind when called from...
ian [Thu, 27 Dec 2018 16:31:50 +0000 (16:31 +0000)] 
runtime: let ARM32 EABI personality function continue unwind when called from traceback

    On ARM32 EABI, unlike other platforms, the personality function is
    called during _Unwind_Backtrace (libgcc/unwind-arm-common.inc:581).
    In this case, simply unwind the frame without returning any
    handlers. Otherwise traceback will loop if there is a frame with
    a defer on stack.

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267434 138bc75d-0d04-0410-961f-82ee72b054a4

6 years agoCherry pick libsanitizer patch (https://reviews.llvm.org/D54856).
marxin [Thu, 27 Dec 2018 09:47:20 +0000 (09:47 +0000)] 
Cherry pick libsanitizer patch (https://reviews.llvm.org/D54856).

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

  PR sanitizer/86229
* asan/asan_errors.cc (ErrorAllocTypeMismatch::Print): Cherry
pick rL350085.
* asan/asan_errors.h (struct ErrorAllocTypeMismatch): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267432 138bc75d-0d04-0410-961f-82ee72b054a4

6 years agoFix slowness in gcov (PR gcov-profile/88225).
marxin [Thu, 27 Dec 2018 08:59:35 +0000 (08:59 +0000)] 
Fix slowness in gcov (PR gcov-profile/88225).

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

PR gcov-profile/88225
* gcov.c(source_info::get_functions_at_location):
Use newly added line_to_function_map.
(source_info::add_function): New.
(output_json_intermediate_file): Use a pointer return
type for get_functions_at_location.
(process_all_functions): Use add_function instead
of direct push to a s->functions container.
(release_structures): Release ident_to_fn.
(read_graph_file): Register function into ident_to_fn.
(read_count_file): Use the map.
(output_lines): Handle pointer return type of
get_functions_at_location.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267431 138bc75d-0d04-0410-961f-82ee72b054a4

6 years agoComparison with an enum should mention enum value.
marxin [Thu, 27 Dec 2018 08:51:14 +0000 (08:51 +0000)] 
Comparison with an enum should mention enum value.

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

* builtins.c (expand_movstr): Compare with RETURN_BEGIN.
* expr.c (move_by_pieces): Likewise.
(store_by_pieces): Likewise.
(store_expr): Fix GNU coding style.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@267430 138bc75d-0d04-0410-961f-82ee72b054a4