1. 03 Jan, 2019 16 commits
  2. 02 Jan, 2019 24 commits
    • gimple-fold.c (strlen_range_kind): Remove SRK_LENRANGE_2. · 84de9426
      	* 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
      Martin Sebor committed
    • PR c++/81486 - CTAD failing with (). · fbf3e66f
      	* g++.dg/cpp1z/class-deduction60.C: New test.
      	* g++.dg/cpp1z/class-deduction61.C: New test.
      
      From-SVN: r267535
      Marek Polacek committed
    • PR c++/88631 - CTAD failing for value-initialization. · 29bb9224
      	* 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
      Marek Polacek committed
    • PR c++/88612 - ICE with -Waddress-of-packed-member. · 5b81a980
      	* 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
      Marek Polacek committed
    • gimple-fold.c (gimple_fold_builtin_strlen): Use set_strlen_range rather than set_range_info. · d4bf6975
      	* 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
      Martin Sebor committed
    • re PR testsuite/87304 (gcc.dg/vect/bb-slp-over-widen-1.c fails starting with r262371) · ec1faddf
      	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
      Jakub Jelinek committed
    • parse.c (decode_statement): Suppress "Unclassifiable statement" error if… · f8fdc8c9
      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
      Steven G. Kargl committed
    • * es.po: Update. · aaf83eb7
      From-SVN: r267521
      Joseph Myers committed
    • re PR middle-end/88663 (internal compiler error: in check, at tree-vrp.c:188) · 03c4a945
      	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
      Martin Sebor committed
    • re PR c++/86875 (ICE in tsubst_copy, at cp/pt.c:15478) · 905969f9
      	PR c++/86875
      	* g++.dg/cpp1y/lambda-generic-86875.C: New test.
      
      From-SVN: r267519
      Marek Polacek committed
    • Add more testcases for class template argument deduction of maps · b3e2dc1e
      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
      Jonathan Wakely committed
    • re PR fortran/48543 (Collapse identical strings) · 3f11aa6a
      2019-01-02  Thomas Koenig  <tkoenig@gcc.gnu.org>
      
      	PR fortran/48543
      	* gfortran.dg/const_chararacter_merge.f90: New test.
      
      From-SVN: r267517
      Thomas Koenig committed
    • re PR lto/88130 (ICE in copy_function_or_variable, at lto-streamer-out.c:2315 since r260963) · 3b456f8d
      
      	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
      Jan Hubicka committed
    • Calculate prediction remainder at proper place (PR tree-optimization/88650). · 0588e288
      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
      Martin Liska committed
    • re PR tree-optimization/88651 (tree-data-ref.c:3764:26: runtime error: signed… · 17067056
      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
      Richard Biener committed
    • Fix g++.dg/gcov/pr88263.C compilation on Solaris · dcff404e
      	* g++.dg/gcov/pr88263.C: Rename namespace log to logging.
      
      From-SVN: r267511
      Rainer Orth committed
    • re PR tree-optimization/88621 (wrong code at -O1 and above on x86_64-linux-gnu… · 4c3643a5
      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
      Richard Biener committed
    • re PR target/87545 (-mtune=intel regressions) · 3ff59baa
      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
      Richard Biener committed
    • Fix year range in copyright header · 362eea7c
      	* testsuite/experimental/string_view/element_access/char/empty.cc:
      	Fix year range in copyright header.
      
      From-SVN: r267508
      Jonathan Wakely committed
    • re PR ipa/88561 (PGO devirtualization miscompilation of firefox) · 0958fc85
      	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
      Jakub Jelinek committed
    • re PR lto/85574 (LTO bootstapped binaries differ) · 9e1f4e00
      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
      Richard Biener committed
    • gimple-fold.c (get_range_strlen_tree): Record if the computed length is optimistic. · eef2da67
      	* 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
      Martin Sebor committed
    • Fix year range in libstdc++v3/testsuite/.../empty.cc copyright header · 2667a5d0
      libstdc++-v3/ChangeLog:
      
              * testsuite/21_strings/basic_string_view/element_access/char/empty.cc:
              Fix year range in copyright header.
      
      From-SVN: r267504
      Joel Brobecker committed
    • gimple-fold.h (get_range_strlen): Update prototype. · 5d6655eb
      	* 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
      Martin Sebor committed