From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 2168) id 5B8123858004; Sat, 12 Nov 2022 00:18:06 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 5B8123858004 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1668212286; bh=AgkFM3cZWcNFp+faSWsHomgPmO7png3Rqo3DIwaNoOE=; h=From:To:Subject:Date:From; b=hHxMcodqBSSzTt5kD2kYdh/PTDN8Nq0th7PCNZNbPqitU4uB1e3IQ77J9n7U9NY7f 8milBN5jD/yUs8w0YASVWxwgeCPZTtsw1IL1k9R5XPCZ0IJNYhupXgdp/fAEnNAIyk i7UQ/rAzPRMswHBC87490EprBR/2TsPdXJHrGMEY= MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="utf-8" From: GCC Administrator To: gcc-cvs@gcc.gnu.org, libstdc++-cvs@gcc.gnu.org Subject: [gcc r13-3916] Daily bump. X-Act-Checkin: gcc X-Git-Author: GCC Administrator X-Git-Refname: refs/heads/master X-Git-Oldrev: 8214ec0cf33482f60139ae18a40567317e63c1ff X-Git-Newrev: 5b6ce16adece24e24a4980a22792b2cb2a84b6d5 Message-Id: <20221112001806.5B8123858004@sourceware.org> Date: Sat, 12 Nov 2022 00:18:06 +0000 (GMT) List-Id: https://gcc.gnu.org/g:5b6ce16adece24e24a4980a22792b2cb2a84b6d5 commit r13-3916-g5b6ce16adece24e24a4980a22792b2cb2a84b6d5 Author: GCC Administrator Date: Sat Nov 12 00:17:25 2022 +0000 Daily bump. Diff: --- ChangeLog | 12 +++++ contrib/ChangeLog | 7 +++ gcc/ChangeLog | 141 ++++++++++++++++++++++++++++++++++++++++++++++++ gcc/DATESTAMP | 2 +- gcc/analyzer/ChangeLog | 49 +++++++++++++++++ gcc/c-family/ChangeLog | 6 +++ gcc/jit/ChangeLog | 10 ++++ gcc/testsuite/ChangeLog | 76 ++++++++++++++++++++++++++ libstdc++-v3/ChangeLog | 82 ++++++++++++++++++++++++++++ 9 files changed, 384 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index c664c897411..a57f8c7e071 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,15 @@ +2022-11-11 Martin Liska + + * doc/indices-and-tables.rst: Rename Indexes to Indices. + +2022-11-11 Martin Liska + + * doc/Makefile: Update comment. + +2022-11-11 Martin Liska + + * doc/Makefile: Disable -j auto. + 2022-11-10 Martin Liska * doc/baseconf.py: Modernize by using pathlib. diff --git a/contrib/ChangeLog b/contrib/ChangeLog index da85fa83a93..fa98ff2c3bd 100644 --- a/contrib/ChangeLog +++ b/contrib/ChangeLog @@ -1,3 +1,10 @@ +2022-11-11 Martin Liska + + * gcc-changelog/git_commit.py: Check for a space after leading + tab. + * gcc-changelog/test_email.py: Likewise. + * gcc-changelog/test_patches.txt: Likewise. + 2022-11-06 Jakub Jelinek * gcc-changelog/git_update_version.py: Add diff --git a/gcc/ChangeLog b/gcc/ChangeLog index e314cfae70e..3cace85140f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,144 @@ +2022-11-11 David Malcolm + + PR analyzer/106147 + * doc/gcc/gcc-command-options/options-that-control-static-analysis.rst: + Add -Wanalyzer-infinite-recursion. + * doc/gcc/gcc-command-options/options-to-request-or-suppress-warnings.rst + (-Winfinite-recursion): Mention -Wanalyzer-infinite-recursion. + +2022-11-11 David Malcolm + + PR analyzer/106147 + * Makefile.in (ANALYZER_OBJS): Add analyzer/infinite-recursion.o. + +2022-11-11 Andrew MacLeod + + PR tree-optimization/107523 + * gimple-range.cc (gimple_ranger::update_stmt): Use fur_stmt + rather than fur_depend. + +2022-11-11 Andrew MacLeod + + * tree-vrp.cc (rvrp_folder::rvrp_folder): Init m_last_bb_stmt. + (rvrp_folder::pre_fold_bb): Set m_last_bb_stmt. + (rvrp_folder::pre_fold_stmt): Check for transitive inferred ranges. + (rvrp_folder::fold_stmt): Check in pre_fold_stmt instead. + +2022-11-11 Srinath Parvathaneni + + * config/aarch64/aarch64-cores.def (AARCH64_CORE): Add Cortex-X1C + CPU. + * config/aarch64/aarch64-tune.md: Regenerate. + * doc/gcc/gcc-command-options/machine-dependent-options/aarch64-options.rst: + Document Cortex-X1C CPU. + +2022-11-11 Srinath Parvathaneni + + * config/aarch64/aarch64-cores.def (AARCH64_CORE): Add Cortex-A715 + CPU. + * config/aarch64/aarch64-tune.md: Regenerate. + * doc/gcc/gcc-command-options/machine-dependent-options/aarch64-options.rst: + Document Cortex-A715 CPU. + +2022-11-11 Richard Biener + Nikita Voronov + + PR tree-optimization/107554 + * tree-ssa-strlen.cc (strlen_pass::count_nonzero_bytes): + Use unsigned HOST_WIDE_INT type for the strlen. + +2022-11-11 Richard Biener + + PR tree-optimization/105142 + * gimple-fold.cc (fosa_unwind): New global. + (follow_outer_ssa_edges): When the SSA definition to follow + is does not dominate fosa_bb, temporarily clear flow-sensitive + info. Make sure to not expand stmts with not defined overflow. + (maybe_fold_comparisons_from_match_pd): Set up unwind stack + for follow_outer_ssa_edges and unwind flow-sensitive info + clearing after matching. + +2022-11-11 Aldy Hernandez + + * range-op.cc (operator_mult::fold_range): Remove. + (operator_div::fold_range): Remove. + (operator_bitwise_and): Remove. + +2022-11-11 Aldy Hernandez + + * range-op.cc (update_known_bitmask): Avoid unnecessary intersection. + +2022-11-11 Aldy Hernandez + + * range-op.cc (range_operator::fold_range): Call + update_known_bitmask. + (operator_bitwise_and::fold_range): Avoid setting nonzero bits + when range is undefined. + +2022-11-11 Aldy Hernandez + + * range-op.cc (class operator_div): Remove tree code. + (operator_div::wi_op_overflows): Handle EXACT_DIV_EXPR as + TRUNC_DIV_EXPR. + +2022-11-11 Aldy Hernandez + + * range-op.cc: (range_op_table::set): Set m_code. + (integral_table::integral_table): Handle shared entries. + (pointer_table::pointer_table): Same. + * range-op.h (class range_operator): Add m_code. + +2022-11-11 Richard Biener + + PR tree-optimization/107618 + * tree-ssa-copy.cc (stmt_may_generate_copy): Simulate all + assignments with a single SSA use. + (copy_prop_visit_assignment): Use gimple_fold_stmt_to_constant_1 + to perform simple constant folding. + (copy_prop::visit_stmt): Visit all assignments. + +2022-11-11 Richard Biener + + PR tree-optimization/84646 + * tree-ssa-dce.cc (pass_dce::set_pass_param): Add param + wheter to run update-address-taken. + (pass_dce::execute): Honor it. + * passes.def: Exchange last DCE and CD-DCE invocations. + Swap pass_tail_calls and the last DCE. + +2022-11-11 Ju-Zhe Zhong + Monk Chiang + + * config/riscv/riscv-v.cc (emit_pred_move): Adjust for scalable register spilling. + (legitimize_move): Ditto. + * config/riscv/riscv.cc (riscv_v_adjust_scalable_frame): New function. + (riscv_first_stack_step): Adjust for scalable register spilling. + (riscv_expand_prologue): Ditto. + (riscv_expand_epilogue): Ditto. + (riscv_dwarf_poly_indeterminate_value): New function. + (TARGET_DWARF_POLY_INDETERMINATE_VALUE): New target hook support for register spilling. + * config/riscv/riscv.h (RISCV_DWARF_VLENB): New macro. + (RISCV_PROLOGUE_TEMP2_REGNUM): Ditto. + (RISCV_PROLOGUE_TEMP2): Ditto. + * config/riscv/vector-iterators.md: New iterators. + * config/riscv/vector.md (*mov): Fix it for register spilling. + (*mov_whole): New pattern. + (*mov_fract): New pattern. + (@pred_mov): Fix it for register spilling. + +2022-11-11 Jonathan Wakely + + PR c/85487 + * doc/cpp/pragmas.rst (Pragmas): Document region pragmas. + +2022-11-11 Haochen Jiang + + * config/i386/i386-builtin.def (BDESC): Add + OPTION_MASK_ISA2_PREFETCHI for prefetchi builtin. + * config/i386/i386-expand.cc (ix86_expand_builtin): + Add ISA check before emit_insn. + * config/i386/prfchiintrin.h: Add target for intrin. + 2022-11-10 David Malcolm PR analyzer/99671 diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index 361ef5a71d9..0e48d446545 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20221111 +20221112 diff --git a/gcc/analyzer/ChangeLog b/gcc/analyzer/ChangeLog index 99dbe7c95f4..39dbe829b64 100644 --- a/gcc/analyzer/ChangeLog +++ b/gcc/analyzer/ChangeLog @@ -1,3 +1,52 @@ +2022-11-11 David Malcolm + + * sm-fd.dot: Fix typo in comment. + * sm-file.dot: New file. + * varargs.cc: Fix typo in comment. + * varargs.dot: New file. + +2022-11-11 David Malcolm + + * checker-path.h: Split out checker_event and its subclasses to... + * checker-event.h: ...this new header. + +2022-11-11 David Malcolm + + PR analyzer/106147 + * analyzer.opt (Wanalyzer-infinite-recursion): New. + * call-string.cc (call_string::count_occurrences_of_function): + New. + * call-string.h (call_string::count_occurrences_of_function): New + decl. + * checker-path.cc (function_entry_event::function_entry_event): + New ctor. + (checker_path::add_final_event): Delete. + * checker-path.h (function_entry_event::function_entry_event): New + ctor. + (function_entry_event::get_desc): Drop "final". + (checker_path::add_final_event): Delete. + * diagnostic-manager.cc + (diagnostic_manager::emit_saved_diagnostic): Create the final + event via a new pending_diagnostic::add_final_event vfunc, rather + than checker_path::add_final_event. + (diagnostic_manager::add_events_for_eedge): Create function entry + events via a new pending_diagnostic::add_function_entry_event + vfunc. + * engine.cc (exploded_graph::process_node): When creating a new + PK_BEFORE_SUPERNODE node, call + exploded_graph::detect_infinite_recursion on it after adding the + in-edge. + * exploded-graph.h (exploded_graph::detect_infinite_recursion): + New decl. + (exploded_graph::find_previous_entry_to): New decl. + * infinite-recursion.cc: New file. + * pending-diagnostic.cc + (pending_diagnostic::add_function_entry_event): New. + (pending_diagnostic::add_final_event): New. + * pending-diagnostic.h + (pending_diagnostic::add_function_entry_event): New vfunc. + (pending_diagnostic::add_final_event): New vfunc. + 2022-11-10 David Malcolm PR analyzer/99671 diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog index 84e264abbeb..e0f10b36469 100644 --- a/gcc/c-family/ChangeLog +++ b/gcc/c-family/ChangeLog @@ -1,3 +1,9 @@ +2022-11-11 Jonathan Wakely + + PR c/85487 + * c-pragma.cc (handle_pragma_ignore): New function. + (init_pragma): Register region and endregion pragmas. + 2022-11-09 Martin Liska * c-target.def: Port to RST. diff --git a/gcc/jit/ChangeLog b/gcc/jit/ChangeLog index 05ddd844e95..bedd9540d20 100644 --- a/gcc/jit/ChangeLog +++ b/gcc/jit/ChangeLog @@ -1,3 +1,13 @@ +2022-11-11 Martin Liska + + * doc/cp/index.rst: Remove trailing .rst in toctree. + * doc/cp/intro/index.rst: Likewise. + * doc/cp/topics/index.rst: Likewise. + * doc/index.rst: Likewise. + * doc/intro/index.rst: Likewise. + * doc/topics/index.rst: Likewise. + * doc/indices-and-tables.rst: New file. + 2022-11-09 Martin Liska * Make-lang.in: diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 71b45de5451..f2101bc9d59 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,79 @@ +2022-11-11 David Malcolm + + PR analyzer/106147 + * g++.dg/analyzer/infinite-recursion-1.C: New test. + * g++.dg/analyzer/infinite-recursion-2.C: New test, copied from + g++.dg/warn/Winfinite-recursion-2.C. + * g++.dg/analyzer/infinite-recursion-3.C: New test, adapted from + g++.dg/warn/Winfinite-recursion-3.C. + * gcc.dg/analyzer/infinite-recursion-2.c: New test. + * gcc.dg/analyzer/infinite-recursion-3.c: New test. + * gcc.dg/analyzer/infinite-recursion-4-limited-buggy.c: New test. + * gcc.dg/analyzer/infinite-recursion-4-limited.c: New test. + * gcc.dg/analyzer/infinite-recursion-4-unlimited-buggy.c: New test. + * gcc.dg/analyzer/infinite-recursion-4-unlimited.c: New test. + * gcc.dg/analyzer/infinite-recursion-5.c: New test, adapted from + gcc.dg/Winfinite-recursion.c. + * gcc.dg/analyzer/infinite-recursion-alloca.c: New test. + * gcc.dg/analyzer/infinite-recursion-inlining.c: New test. + * gcc.dg/analyzer/infinite-recursion-multiline-1.c: New test. + * gcc.dg/analyzer/infinite-recursion-multiline-2.c: New test. + * gcc.dg/analyzer/infinite-recursion-variadic.c: New test. + * gcc.dg/analyzer/infinite-recursion.c: Add dg-warning directives + where infinite recursions occur. + * gcc.dg/analyzer/malloc-ipa-12.c: Likewise. + * gcc.dg/analyzer/pr105365.c: Likewise. + * gcc.dg/analyzer/pr105366.c: Likewise. + * gcc.dg/analyzer/pr97029.c: Likewise. + +2022-11-11 Andrew MacLeod + + PR tree-optimization/107523 + * gcc.dg/pr107523.c: New. + +2022-11-11 Richard Biener + Nikita Voronov + + PR tree-optimization/107554 + * gcc.dg/pr107554.c: New testcase. + +2022-11-11 Richard Biener + + PR tree-optimization/107618 + * gcc.dg/pr107618.c: New testcase. + +2022-11-11 Richard Biener + + PR tree-optimization/84646 + * g++.dg/tree-ssa/pr106922.C: Continue to scan earlier DCE dump. + * gcc.dg/tree-ssa/20030808-1.c: Likewise. + +2022-11-11 Ju-Zhe Zhong + Monk Chiang + + * gcc.target/riscv/rvv/base/macro.h: New test. + * gcc.target/riscv/rvv/base/spill-1.c: New test. + * gcc.target/riscv/rvv/base/spill-10.c: New test. + * gcc.target/riscv/rvv/base/spill-11.c: New test. + * gcc.target/riscv/rvv/base/spill-12.c: New test. + * gcc.target/riscv/rvv/base/spill-2.c: New test. + * gcc.target/riscv/rvv/base/spill-3.c: New test. + * gcc.target/riscv/rvv/base/spill-4.c: New test. + * gcc.target/riscv/rvv/base/spill-5.c: New test. + * gcc.target/riscv/rvv/base/spill-6.c: New test. + * gcc.target/riscv/rvv/base/spill-7.c: New test. + * gcc.target/riscv/rvv/base/spill-8.c: New test. + * gcc.target/riscv/rvv/base/spill-9.c: New test. + +2022-11-11 Jonathan Wakely + + PR c/85487 + * c-c++-common/pragma-region.c: New test. + +2022-11-11 Haochen Jiang + + * gcc.target/i386/prefetchi-5.c: New test. + 2022-11-10 David Malcolm * gcc.dg/analyzer/deref-before-check-1.c: New test. diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index f562aca2cd2..8732fe6ae30 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,85 @@ +2022-11-11 Jonathan Wakely + + PR libstdc++/95048 + * include/experimental/bits/fs_path.h (path::_Cvt::_S_wconvert): + Construct codecvt directly instead of getting it from the + locale. + +2022-11-11 Nathaniel Shead + + PR libstdc++/103295 + * include/bits/basic_string.h (_M_use_local_data): Set active + member to _M_local_buf. + +2022-11-11 Jonathan Wakely + + PR libstdc++/95048 + * include/bits/fs_path.h (path::_Codecvt): New class template + that selects the kind of code conversion done. + (path::_Codecvt): Select based on sizeof(wchar_t). + (_GLIBCXX_CONV_FROM_UTF8): New macro to allow the same code to + be used for Windows and POSIX. + (path::_S_convert(const EcharT*, const EcharT*)): Simplify by + using _Codecvt and _GLIBCXX_CONV_FROM_UTF8 abstractions. + (path::_S_str_convert(basic_string_view, const A&)): + Simplify nested conditions. + * include/experimental/bits/fs_path.h (path::_Cvt): Define + nested typedef controlling type of code conversion done. + (path::_Cvt::_S_wconvert): Use new typedef. + (path::string(const A&)): Likewise. + * testsuite/27_io/filesystem/path/construct/95048.cc: New test. + * testsuite/experimental/filesystem/path/construct/95048.cc: New + test. + +2022-11-11 Jonathan Wakely + + * testsuite/20_util/tuple/swap.cc (MoveOnly::operator==): Add + const qualifier. + * testsuite/26_numerics/valarray/87641.cc (X::operator==): + Likewise. + +2022-11-11 Jonathan Wakely + + * include/std/charconv (__from_chars_alnum_to_val_table::value): + [!__cpp_inline_variables]: Add non-inline definition. + +2022-11-11 Jonathan Wakely + + * testsuite/experimental/propagate_const/observers/107525.cc: + Use type trait instead of C++17 variable template. + +2022-11-11 Jonathan Wakely + + PR libstdc++/103755 + * config/abi/pre/gnu.ver: Tighten patterns for facets in the + base version. Add exports for __try_use_facet. + * include/bits/basic_ios.tcc (basic_ios::_M_cache_locale): Use + __try_use_facet instead of has_facet and use_facet. + * include/bits/fstream.tcc (basic_filebuf::basic_filebuf()): + Likewise. + (basic_filebuf::imbue): Likewise. + * include/bits/locale_classes.h (locale, locale::id) + (locale::_Impl): Declare __try_use_facet as a friend. + * include/bits/locale_classes.tcc (__try_use_facet): Define new + function template with special cases for default facets. + (has_facet, use_facet): Call __try_use_facet. + * include/bits/locale_facets.tcc (__try_use_facet): Declare + explicit instantiations. + * include/bits/locale_facets_nonio.tcc (__try_use_facet): + Likewise. + * src/c++11/locale-inst-monetary.h (INSTANTIATE_FACET_ACCESSORS): + Use new macro for facet accessor instantiations. + * src/c++11/locale-inst-numeric.h (INSTANTIATE_FACET_ACCESSORS): + Likewise. + * src/c++11/locale-inst.cc (INSTANTIATE_USE_FACET): Define new + macro for instantiating __try_use_facet and use_facet. + (INSTANTIATE_FACET_ACCESSORS): Define new macro for also + defining has_facet. + * src/c++98/compatibility-ldbl.cc (__try_use_facet): + Instantiate. + * testsuite/22_locale/ctype/is/string/89728_neg.cc: Adjust + expected errors. + 2022-11-10 Jonathan Wakely * include/std/concepts (__detail::__destructible_impl)