https://gcc.gnu.org/g:945eb0c581570646c9c289340d9f63d79ef5671c commit 945eb0c581570646c9c289340d9f63d79ef5671c Author: GCC Administrator Date: Tue Jul 21 00:16:28 2020 +0000 Daily bump. Diff: --- gcc/ChangeLog | 130 ++++++++++++++++++++++++++++++++++++++++++++++++ gcc/DATESTAMP | 2 +- gcc/c-family/ChangeLog | 10 ++++ gcc/cp/ChangeLog | 20 ++++++++ gcc/po/ChangeLog | 4 ++ gcc/testsuite/ChangeLog | 63 +++++++++++++++++++++++ libcpp/ChangeLog | 7 +++ libcpp/po/ChangeLog | 4 ++ libstdc++-v3/ChangeLog | 33 ++++++++++++ 9 files changed, 272 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index a5c55f9ee2b..61dba01cf21 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,133 @@ +2020-07-20 Hans-Peter Nilsson + + * config/mmix/mmix.c (mmix_expand_prologue): Calculate the total + allocated size and set current_function_static_stack_size, if + flag_stack_usage_info. + +2020-07-20 Sergei Trofimovich + + PR target/96190 + * config/sparc/linux.h (ENDFILE_SPEC): Use GNU_USER_TARGET_ENDFILE_SPEC + to get crtendS.o for !no-pie mode. + * config/sparc/linux64.h (ENDFILE_SPEC): Ditto. + +2020-07-20 Yang Yang + + * tree-vect-stmts.c (vectorizable_simd_clone_call): Add + VIEW_CONVERT_EXPRs if the arguments types and return type + of simd clone function are distinct with the vectype of stmt. + +2020-07-20 Uroš Bizjak + + PR target/95750 + * config/i386/i386.h (TARGET_AVOID_MFENCE): + Rename from TARGET_USE_XCHG_FOR_ATOMIC_STORE. + * config/i386/sync.md (mfence_sse2): Disable for TARGET_AVOID_MFENCE. + (mfence_nosse): Enable also for TARGET_AVOID_MFENCE. Emit stack + referred memory in word_mode. + (mem_thread_fence): Do not generate mfence_sse2 pattern when + TARGET_AVOID_MFENCE is true. + (atomic_store): Update for rename. + * config/i386/x86-tune.def (X86_TUNE_AVOID_MFENCE): + Rename from X86_TUNE_USE_XCHG_FOR_ATOMIC_STORE. + +2020-07-20 Martin Sebor + + PR middle-end/95189 + PR middle-end/95886 + * builtins.c (inline_expand_builtin_string_cmp): Rename... + (inline_expand_builtin_bytecmp): ...to this. + (builtin_memcpy_read_str): Don't expect data to be nul-terminated. + (expand_builtin_memory_copy_args): Handle object representations + with embedded nul bytes. + (expand_builtin_memcmp): Same. + (expand_builtin_strcmp): Adjust call to naming change. + (expand_builtin_strncmp): Same. + * expr.c (string_constant): Create empty strings with nonzero size. + * fold-const.c (c_getstr): Rename locals and update comments. + * tree.c (build_string): Accept null pointer argument. + (build_string_literal): Same. + * tree.h (build_string): Provide a default. + (build_string_literal): Same. + +2020-07-20 Richard Biener + + * cfganal.c (rev_post_order_and_mark_dfs_back_seme): Remove + write-only post array. + +2020-07-20 Jakub Jelinek + + PR libstdc++/93121 + * gimple-fold.c (fold_const_aggregate_ref_1): For COMPONENT_REF + of a bitfield not aligned on byte boundaries try to + fold_ctor_reference DECL_BIT_FIELD_REPRESENTATIVE if any and + adjust it depending on endianity. + +2020-07-20 Jakub Jelinek + + PR libstdc++/93121 + * fold-const.c (native_encode_initializer): Handle bit-fields. + +2020-07-20 Kewen Lin + + * config/rs6000/rs6000.c (rs6000_option_override_internal): + Set param_vect_partial_vector_usage to 0 explicitly. + * doc/invoke.texi (vect-partial-vector-usage): Document new option. + * optabs-query.c (get_len_load_store_mode): New function. + * optabs-query.h (get_len_load_store_mode): New declare. + * params.opt (vect-partial-vector-usage): New. + * tree-vect-loop-manip.c (vect_set_loop_controls_directly): Add the + handlings for vectorization using length-based partial vectors, call + vect_gen_len for length generation, and rename some variables with + items instead of scalars. + (vect_set_loop_condition_partial_vectors): Add the handlings for + vectorization using length-based partial vectors. + (vect_do_peeling): Allow remaining eiters less than epilogue vf for + LOOP_VINFO_USING_PARTIAL_VECTORS_P. + * tree-vect-loop.c (_loop_vec_info::_loop_vec_info): Init + epil_using_partial_vectors_p. + (_loop_vec_info::~_loop_vec_info): Call release_vec_loop_controls + for lengths destruction. + (vect_verify_loop_lens): New function. + (vect_analyze_loop): Add handlings for epilogue of loop when it's + marked to use vectorization using partial vectors. + (vect_analyze_loop_2): Add the check to allow only one vectorization + approach using partial vectorization at the same time. Check param + vect-partial-vector-usage for partial vectors decision. Mark + LOOP_VINFO_EPIL_USING_PARTIAL_VECTORS_P if the epilogue is + considerable to use partial vectors. Call release_vec_loop_controls + for lengths destruction. + (vect_estimate_min_profitable_iters): Adjust for loop vectorization + using length-based partial vectors. + (vect_record_loop_mask): Init factor to 1 for vectorization using + mask-based partial vectors. + (vect_record_loop_len): New function. + (vect_get_loop_len): Likewise. + * tree-vect-stmts.c (check_load_store_for_partial_vectors): Add + checks for vectorization using length-based partial vectors. Factor + some code to lambda function get_valid_nvectors. + (vectorizable_store): Add handlings when using length-based partial + vectors. + (vectorizable_load): Likewise. + (vect_gen_len): New function. + * tree-vectorizer.h (struct rgroup_controls): Add field factor + mainly for length-based partial vectors. + (vec_loop_lens): New typedef. + (_loop_vec_info): Add lens and epil_using_partial_vectors_p. + (LOOP_VINFO_EPIL_USING_PARTIAL_VECTORS_P): New macro. + (LOOP_VINFO_LENS): Likewise. + (LOOP_VINFO_FULLY_WITH_LENGTH_P): Likewise. + (vect_record_loop_len): New declare. + (vect_get_loop_len): Likewise. + (vect_gen_len): Likewise. + +2020-07-20 Hans-Peter Nilsson + + * config/mmix/mmix.c (mmix_option_override): Reinstate default + integer-emitting targetm.asm_out pseudos when dumping detailed + assembly-code. + (mmix_assemble_integer): Update comment. + 2020-07-19 H.J. Lu PR target/95973 diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index 7ffcb878589..3afbc9c5f92 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20200720 +20200721 diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog index 9565a0bba84..7a0803038b0 100644 --- a/gcc/c-family/ChangeLog +++ b/gcc/c-family/ChangeLog @@ -1,3 +1,13 @@ +2020-07-20 Jason Merrill + + * c-cppbuiltin.c (c_cpp_builtins): Update + __cpp_nontype_template_args for C++20. + +2020-07-20 Martin Sebor + + PR c/96249 + * c.opt: Remove stray text. + 2020-07-14 Lewis Hyatt PR other/86904 diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 782546e1d76..81bc9b92a1c 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,23 @@ +2020-07-20 Jason Merrill + + * pt.c (type_dependent_expression_p): A pseudo-dtor can be + dependent. + * semantics.c (finish_call_expr): Use build_trivial_dtor_call for + pseudo-destructor. + (finish_pseudo_destructor_expr): Leave type NULL for dependent arg. + +2020-07-20 Jason Merrill + + * mangle.c (write_base_ref): New. + (write_expression): Use it for base field COMPONENT_REFs. + * pt.c (invalid_tparm_referent_p): Canonicalize the type + of array offsets. Allow subobjects. + +2020-07-20 Jason Merrill + + * pt.c (collect_ctor_idx_types): Add 'const' when deducing from + a string constant. + 2020-07-17 Marek Polacek PR c++/79815 diff --git a/gcc/po/ChangeLog b/gcc/po/ChangeLog index ced640580f8..15acbb3be98 100644 --- a/gcc/po/ChangeLog +++ b/gcc/po/ChangeLog @@ -1,3 +1,7 @@ +2020-07-20 Joseph Myers + + * gcc.pot: Regenerate. + 2020-07-08 Joseph Myers * sv.po: Update. diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 7e8dc55cf77..ad86c95d466 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,66 @@ +2020-07-20 Jason Merrill + + * g++.dg/opt/flifetime-dse7.C: New test. + +2020-07-20 Jason Merrill + + * g++.dg/cpp1z/nontype2.C: No error in C++20. + * g++.dg/template/nontype25.C: No error in C++20. + * g++.dg/template/nontype8.C: No error in C++20. + * g++.dg/cpp2a/nontype-subob1.C: New test. + * g++.dg/cpp2a/nontype-subob2.C: New test. + * g++.dg/cpp1z/nontype3.C: Now C++17-only. + * g++.dg/cpp2a/feat-cxx2a.C: Adjust expected value. + +2020-07-20 Jason Merrill + + * g++.dg/cpp2a/class-deduction-aggr7.C: New test. + +2020-07-20 Yang Yang + + * gcc.target/aarch64/sve/pr96195.c: New test. + +2020-07-20 Uroš Bizjak + + PR target/95750 + * gcc.target/i386/pr95750.c: New test. + +2020-07-20 Martin Sebor + + PR middle-end/95189 + PR middle-end/95886 + * gcc.dg/memcmp-pr95189.c: New test. + * gcc.dg/strncmp-3.c: New test. + * gcc.target/i386/memcpy-pr95886.c: New test. + +2020-07-20 Alex Coplan + + PR jit/69435 + * jit.dg/jit.exp (fixed_host_execute): Fix regex patterns to + always explicitly match newlines. + +2020-07-20 Jakub Jelinek + + PR libstdc++/93121 + * gcc.dg/tree-ssa/pr93121-2.c: New test. + +2020-07-20 Jakub Jelinek + + PR libstdc++/93121 + * gcc.dg/tree-ssa/pr93121-1.c: New test. + +2020-07-20 Hans-Peter Nilsson + + * gcc.dg/const-uniq-1.c: Adjust scanned pattern for mmix. + +2020-07-20 Hans-Peter Nilsson + + * gcc.dg/cdce3.c: Skip for mmix. + +2020-07-20 Hans-Peter Nilsson + + * gcc.dg/pr87485.c: Require scheduling. + 2020-07-19 H.J. Lu PR target/95973 diff --git a/libcpp/ChangeLog b/libcpp/ChangeLog index f1abcbdc56e..0a1892e6b3f 100644 --- a/libcpp/ChangeLog +++ b/libcpp/ChangeLog @@ -1,3 +1,10 @@ +2020-07-20 Nathan Sidwell + + * line-map.c (linemap_add): Simplify column overflow calculation. + Add comment about range and column bit init. + (linemap_ordinary_map_lookup): Refactor for RAII + (linemap_macro_map_lookup): Likewise. + 2020-07-14 Lewis Hyatt PR preprocessor/49973 diff --git a/libcpp/po/ChangeLog b/libcpp/po/ChangeLog index 6241652c8bf..ef050aac1e0 100644 --- a/libcpp/po/ChangeLog +++ b/libcpp/po/ChangeLog @@ -1,3 +1,7 @@ +2020-07-20 Joseph Myers + + * cpplib.pot: Regenerate. + 2020-05-15 Joseph Myers * sv.po: Update. diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index d2dbc746df7..76c3e5cb7c0 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,36 @@ +2020-07-20 Jonathan Wakely + + * acinclude.m4 (libtool_VERSION): Bump version. + * config.h.in: Regenerate. + * config/abi/pre/gnu.ver: Add GLIBCXX_3.4.29 version and new + exports. + * config/os/gnu-linux/ldbl-extra.ver: Add _GLIBCXX_LDBL_3.4.29 + version and new export. + * configure: Regenerate. + * configure.ac: Check for and uselocale. + * crossconfig.m4: Add macro or checks for uselocale. + * include/std/charconv (from_chars): Declare overloads for + float, double, and long double. + * src/c++17/Makefile.am: Add new file. + * src/c++17/Makefile.in: Regenerate. + * src/c++17/floating_from_chars.cc: New file. + (from_chars): Define for float, double, and long double. + * testsuite/20_util/from_chars/1_c++20_neg.cc: Prune extra + diagnostics caused by new overloads. + * testsuite/20_util/from_chars/1_neg.cc: Likewise. + * testsuite/20_util/from_chars/2.cc: Check leading '+'. + * testsuite/20_util/from_chars/4.cc: New test. + * testsuite/20_util/from_chars/5.cc: New test. + * testsuite/util/testsuite_abi.cc: Add new symbol versions. + +2020-07-20 Jonathan Wakely + + * include/bits/istream.tcc + (basic_istream::get(__streambuf_type&, char_type): Use unsigned + long long for counter and check if it would overflow _M_gcount. + * testsuite/27_io/basic_istream/get/char/lwg3464.cc: New test. + * testsuite/27_io/basic_istream/get/wchar_t/lwg3464.cc: New test. + 2020-07-17 Iain Sandoe * include/std/coroutine: Mark the methods of the