From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 2168) id 7DC73385842E; Fri, 2 Dec 2022 11:25:42 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 7DC73385842E DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1669980342; bh=1XNb3lmUDaZzGgt8uMei00Xm9gOheoI9Zunfj6fcQjc=; h=From:To:Subject:Date:From; b=SrxtXLcqaVbMp9UebP5Zsu4tPRzt0qVu9eHLSjZi6gwN+L0MqN/bhYzXEhObX8E8V SaPTvdZfA0zAz1U9w//dnRRcoKhWO2mFo62ITMEi2hpT7GB+KIJfao8zCajfYjoyiF fxOm1eJVk4VcFfTT5/fAsipwCM7NV3mKsIRIPWHw= MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="utf-8" From: GCC Administrator To: gcc-cvs@gcc.gnu.org, libstdc++-cvs@gcc.gnu.org Subject: [gcc r13-4463] Daily bump. X-Act-Checkin: gcc X-Git-Author: GCC Administrator X-Git-Refname: refs/heads/master X-Git-Oldrev: b3237a2c6847993f92218b65f96ece9831a8bfb0 X-Git-Newrev: b35680ec3ddaebc7a863d88627bcd58160e2edcf Message-Id: <20221202112542.7DC73385842E@sourceware.org> Date: Fri, 2 Dec 2022 11:25:42 +0000 (GMT) List-Id: https://gcc.gnu.org/g:b35680ec3ddaebc7a863d88627bcd58160e2edcf commit r13-4463-gb35680ec3ddaebc7a863d88627bcd58160e2edcf Author: GCC Administrator Date: Fri Dec 2 11:25:05 2022 +0000 Daily bump. Diff: --- gcc/ChangeLog | 155 ++++++++++++++++++++++++++++++++++++++++++++++++ gcc/DATESTAMP | 2 +- gcc/ada/ChangeLog | 41 +++++++++++++ gcc/analyzer/ChangeLog | 124 ++++++++++++++++++++++++++++++++++++++ gcc/c-family/ChangeLog | 7 +++ gcc/cp/ChangeLog | 36 +++++++++++ gcc/testsuite/ChangeLog | 142 ++++++++++++++++++++++++++++++++++++++++++++ libstdc++-v3/ChangeLog | 8 +++ 8 files changed, 514 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 33e0e3eb585..b349a15edbf 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,158 @@ +2022-12-02 Jakub Jelinek + + PR target/106577 + * config/i386/i386-expand.cc (ix86_vector_duplicate_value): Save/restore + recog_data around recog_memoized calls. + +2022-12-02 Michael Collison + + * match.pd ((x & 0x1) == 0) ? y : z y + -> (-(typeof(y))(x & 0x1) & z) y. + +2022-12-02 Richard Biener + + PR tree-optimization/107946 + * params.opt (-param=max-unswitch-depth=): New. + * doc/invoke.texi (--param=max-unswitch-depth): Document. + * tree-ssa-loop-unswitch.cc (init_loop_unswitch_info): Honor + --param=max-unswitch-depth + +2022-12-02 Eric Gallager + + PR bootstrap/59447 + * configure: Regenerate. + * configure.ac: Document --with-dwarf2 flag as also + applying to later DWARF standards. + * doc/install.texi: Likewise. + +2022-12-02 liuhongt + + PR target/107934 + * config/i386/i386.md (extendbfsf2_1): Change type from + sseishft to sseishft1. + +2022-12-01 Alex Coplan + + * varasm.cc (assemble_variable): Fix type confusion bug when + checking for ".vtable_map_vars" section. + +2022-12-01 Ju-Zhe Zhong + + * config/riscv/riscv-v.cc (emit_pred_op): Adapt for mask mode. + * config/riscv/vector.md: Remove Tail && make policy operand for mask mode mov. + +2022-12-01 Ju-Zhe Zhong + + * config/riscv/riscv-protos.h (enum vlmul_type): New enum. + (get_vlmul): New function. + (get_ratio): Ditto. + * config/riscv/riscv-v.cc (struct mode_vtype_group): New struct. + (ENTRY): Adapt for attributes. + (enum vlmul_type): New enum. + (get_vlmul): New function. + (get_ratio): New function. + * config/riscv/riscv-vector-switch.def (ENTRY): Adapt for attributes. + * config/riscv/riscv.cc (ENTRY): Ditto. + * config/riscv/vector.md (false,true): Add attributes. + +2022-12-01 Ju-Zhe Zhong + + * config/riscv/constraints.md (Wdm): New constraint. + * config/riscv/predicates.md (direct_broadcast_operand): New predicate. + * config/riscv/riscv-protos.h (RVV_VLMAX): New macro. + (emit_pred_op): Refine function. + * config/riscv/riscv-selftests.cc (run_const_vector_selftests): New function. + (run_broadcast_selftests): Ditto. + (BROADCAST_TEST): New tests. + (riscv_run_selftests): More tests. + * config/riscv/riscv-v.cc (emit_pred_move): Refine function. + (emit_vlmax_vsetvl): Ditto. + (emit_pred_op): Ditto. + (expand_const_vector): New function. + (legitimize_move): Add constant vector support. + * config/riscv/riscv.cc (riscv_print_operand): New asm print rule for const vector. + * config/riscv/riscv.h (X0_REGNUM): New macro. + * config/riscv/vector-iterators.md: New attribute. + * config/riscv/vector.md (vec_duplicate): New pattern. + (@pred_broadcast): New pattern. + +2022-12-01 Paul-Antoine Arras + + * config/gcn/gcn-opts.h (TARGET_FIJI): -march=fiji. + (TARGET_VEGA10): -march=gfx900. + (TARGET_VEGA20): -march=gfx906. + (TARGET_GFX908): -march=gfx908. + (TARGET_GFX90a): -march=gfx90a. + * config/gcn/gcn.h (TARGET_CPU_CPP_BUILTINS): Define a builtin that + uniquely maps to '-march'. + +2022-12-01 Richard Biener + + PR tree-optimization/107937 + * gimple-predicate-analysis.h (predicate::is_true): New. + (predicate::is_false): Likewise. + (predicate::empty_val): Likewise. + (uninit_analysis::uninit_analysis): Properly initialize + def_preds. + * gimple-predicate-analysis.cc (simplify_1b): Indicate + whether the chain became empty. + (predicate::simplify): Release emptied chain before removing it. + (predicate::normalize): Replace temporary object with assertion. + (uninit_analysis::is_use_guarded): Deal with predicates + that simplify to true/false. + +2022-12-01 Richard Biener + + PR tree-optimization/107935 + * tree-ssa-sccvn.cc (visit_phi): Honor forced VARYING on + backedges. + +2022-12-01 Jakub Jelinek + + PR target/107627 + * config/i386/i386.md (*concat3_1, *concat3_2): + For operands which are zero_extend arguments allow memory if + output operand is a register. + (*concat3_3, *concat3_4): Likewise. If + both input operands are memory, use early clobber on output operand. + * config/i386/i386-expand.cc (split_double_concat): Deal with corner + cases where one input is memory and the other is not and the address + of the memory input uses a register we'd overwrite before loading + the memory into a register. + +2022-12-01 Haochen Gui + + * config/rs6000/rs6000-call.cc (swap_endian_selector_for_mode): + Corrects comments of this function and make them clear. + +2022-12-01 liuhongt + + PR target/107863 + * config/i386/i386-expand.cc (ix86_expand_vec_set_builtin): + Convert op1 to target mode whenever mode mismatch. + +2022-12-01 David Malcolm + + PR analyzer/106626 + * diagnostic-path.h + (diagnostic_path::get_first_event_in_a_function): New decl. + * diagnostic.cc (diagnostic_path::get_first_event_in_a_function): + New. + (diagnostic_path::interprocedural_p): Ignore leading events that + are outside of any function. + +2022-12-01 David Malcolm + + * Makefile.in (ANALYZER_OBJS): Add analyzer/bounds-checking.o. + +2022-12-01 Haochen Gui + + PR target/100866 + * config/rs6000/rs6000-call.cc (swap_endian_selector_for_mode): + Generate permute index directly for little endian targets. + * config/rs6000/vsx.md (revb_): Call vprem directly with + corresponding permute indexes. + 2022-11-30 John David Anglin * config/pa/pa.md (addvdi3): Force operand 2 to a register. diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index f0a26d37c16..c7106babaa0 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20221201 +20221202 diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 00b37566a42..e9c804bc8ae 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,44 @@ +2022-12-01 Eric Botcazou + + * gcc-interface/trans.cc (get_storage_model_access): Strip any type + conversion around the node before looking into it. + +2022-12-01 Steve Baird + + * sem_ch13.adb + (Validate_Aspect_Aggregate): Reject illegal case where none of + Add_Named, Add_Unnamed, and Assign_Indexed are specified. + +2022-12-01 Eric Botcazou + + * doc/gnat_ugn/gnat_and_program_execution.rst (Non-Symbolic + Traceback): Add compilation line. + (Symbolic Traceback): Remove obsolete stuff. + * doc/gnat_ugn/gnat_utility_programs.rst (gnatsymbolize): Adjust. + * gnat_ugn.texi: Regenerate. + +2022-12-01 Ronan Desplanques + + * lib-xref.adb (Generate_Reference): Fix misphrasing in comment. + +2022-12-01 Gary Dismukes + + * sem_attr.adb (Analyze_Attribute, Attribute_Address): In the case + where the attribute's prefix is a dereference of a value of an + access type that has aspect Designated_Storage_Model (or a + renaming of such a dereference), set the attribute's type to the + corresponding Storage_Model_Type's associated address type rather + than System.Address. + +2022-12-01 Ronan Desplanques + + * doc/gnat_rm/the_gnat_library.rst: Fix minor issues. + * gnat_rm.texi: Regenerate. + +2022-12-01 Josue Nava Bello + + * doc/share/conf.py: minor updates + 2022-11-28 Eric Botcazou * libgnat/g-traceb.ads: Minor tweaks in the commentary. diff --git a/gcc/analyzer/ChangeLog b/gcc/analyzer/ChangeLog index a7724cd1f45..921b052af95 100644 --- a/gcc/analyzer/ChangeLog +++ b/gcc/analyzer/ChangeLog @@ -1,3 +1,127 @@ +2022-12-02 David Malcolm + + PR analyzer/107948 + * region-model-manager.cc + (region_model_manager::maybe_fold_binop): Fold (0 - VAL) to -VAL. + * region-model.cc (region_model::eval_condition): Handle e.g. + "-X <= 0" as equivalent to X >= 0". + +2022-12-01 David Malcolm + + PR analyzer/106626 + * bounds-checking.cc + (symbolic_past_the_end::describe_final_event): Delete, moving to + symbolic_buffer_overflow::describe_final_event and + symbolic_buffer_over_read::describe_final_event, eliminating + composition of text strings via "byte_str" and "m_dir_str". + (symbolic_past_the_end::m_dir_str): Delete field. + (symbolic_buffer_overflow::symbolic_buffer_overflow): Drop + m_dir_str. + (symbolic_buffer_overflow::describe_final_event): New, as noted + above. + (symbolic_buffer_over_read::symbolic_buffer_overflow): Drop + m_dir_str. + (symbolic_buffer_over_read::describe_final_event): New, as noted + above. + +2022-12-01 David Malcolm + + * bounds-checking.cc (class out_of_bounds): Split out from... + (class concrete_out_of_bounds): New abstract subclass. + (class past_the_end): Rename to... + (class concrete_past_the_end): ...this, and make a subclass of + concrete_out_of_bounds. + (class buffer_overflow): Rename to... + (class concrete_buffer_overflow): ...this, and make a subclass of + concrete_past_the_end. + (class buffer_over_read): Rename to... + (class concrete_buffer_over_read): ...this, and make a subclass of + concrete_past_the_end. + (class buffer_underwrite): Rename to... + (class concrete_buffer_underwrite): ...this, and make a subclass + of concrete_out_of_bounds. + (class buffer_under_read): Rename to... + (class concrete_buffer_under_read): ...this, and make a subclass + of concrete_out_of_bounds. + (class symbolic_past_the_end): Convert to a subclass of + out_of_bounds. + (symbolic_buffer_overflow::get_kind): New. + (symbolic_buffer_over_read::get_kind): New. + (region_model::check_region_bounds): Update for renamings. + * engine.cc (impl_sm_context::set_next_state): Eliminate + "new_ctxt", passing NULL to get_rvalue instead. + (impl_sm_context::warn): Likewise. + +2022-12-01 David Malcolm + + PR analyzer/106626 + * bounds-checking.cc (out_of_bounds::get_memory_space): New. + (buffer_overflow::emit): Use it. + (class buffer_overread): Rename to... + (class buffer_over_read): ...this. + (buffer_over_read::emit): Specify which memory space the read is + from, where known. Change "overread" to "over-read". + (class buffer_underflow): Rename to... + (class buffer_underwrite): ...this. + (buffer_underwrite::emit): Specify which memory space the write is + to, where known. Change "underflow" to "underwrite". + (class buffer_underread): Rename to... + (class buffer_under_read): Rename to... + (buffer_under_read::emit): Specify which memory space the read is + from, where known. Change "underread" to "under-read". + (symbolic_past_the_end::get_memory_space): New. + (symbolic_buffer_overflow::emit): Use it. + (class symbolic_buffer_overread): Rename to... + (class symbolic_buffer_over_read): ...this. + (symbolic_buffer_over_read::emit): Specify which memory space the + read is from, where known. Change "overread" to "over-read". + (region_model::check_symbolic_bounds): Update for class renaming. + (region_model::check_region_bounds): Likewise. + +2022-12-01 David Malcolm + + PR analyzer/106626 + * bounds-checking.cc (out_of_bounds::maybe_describe_array_bounds): + New. + (buffer_overflow::emit): Call maybe_describe_array_bounds. + (buffer_overread::emit): Likewise. + (buffer_underflow::emit): Likewise. + (buffer_underread::emit): Likewise. + +2022-12-01 David Malcolm + + PR analyzer/106626 + * bounds-checking.cc (buffer_overflow::emit): Use inform_n. + Update wording to clarify that we're talking about the size of + the bad access, rather than its position. + (buffer_overread::emit): Likewise. + +2022-12-01 David Malcolm + + * bounds-checking.cc: New file, taken from region-model.cc. + * region-model.cc (class out_of_bounds): Move to + bounds-checking.cc. + (class past_the_end): Likewise. + (class buffer_overflow): Likewise. + (class buffer_overread): Likewise. + (class buffer_underflow): Likewise. + (class buffer_underread): Likewise. + (class symbolic_past_the_end): Likewise. + (class symbolic_buffer_overflow): Likewise. + (class symbolic_buffer_overread): Likewise. + (region_model::check_symbolic_bounds): Likewise. + (maybe_get_integer_cst_tree): Likewise. + (region_model::check_region_bounds): Likewise. + * region-model.h: Add comment. + +2022-12-01 David Malcolm + + PR analyzer/107928 + * sm-fd.cc (fd_state_machine::on_bind): Handle m_constant_fd in + the "success" outcome. + (fd_state_machine::on_connect): Likewise. + * sm-fd.dot: Add "constant_fd" state and its transitions. + 2022-11-30 David Malcolm * region-model-impl-calls.cc (class kf_fgets): Move to sm-file.cc. diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog index 008b26efc07..9ca32b16a34 100644 --- a/gcc/c-family/ChangeLog +++ b/gcc/c-family/ChangeLog @@ -1,3 +1,10 @@ +2022-12-02 Jakub Jelinek + + PR c++/84469 + * c-omp.cc (c_omp_is_loop_iterator): For range for with structured + binding return TREE_VEC_LENGTH (d->declv) even if decl is equal + to any of the structured binding decls. + 2022-11-30 Iskander Shakirzyanov Franz Sirl diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 0cc1897e243..bccd9023e4c 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,39 @@ +2022-12-02 Jakub Jelinek + + PR c++/84469 + * parser.cc (cp_convert_omp_range_for): After do_auto_deduction if + !processing_template_decl call cp_finish_decomp with + processing_template_decl temporarily incremented. + +2022-12-02 Jakub Jelinek + + PR c++/84469 + * parser.cc (do_range_for_auto_deduction): Add DECOMP_FIRST_NAME + and DECOMP_CNT arguments. Call cp_finish_decomp if DECL + is a structured binding. + (cp_parser_range_for): Adjust do_range_for_auto_deduction caller. + (cp_convert_omp_range_for): Likewise. + +2022-12-02 Patrick Palka + + PR c++/107539 + * constraint.cc (norm_hasher::hash, norm_hasher::equal): Set + comparing_specializations. + (sat_hasher::hash, sat_hasher::equal): Likewise. + * cp-tree.h (atom_hasher::hash, atom_hasher::equal): Likewise. + * pt.cc (ctp_hasher::hash, ctp_hasher::equal): Likewise. + +2022-12-01 Martin Liska + + * Make-lang.in: Remove extra object dependency. + +2022-12-01 Jason Merrill + + * contracts.cc (remove_contract_attributes): Actually prepend + to the list. + * pt.cc (tsubst_contract): Only look for a postcondition if type is + nonnull. + 2022-11-30 Patrick Palka PR c++/107542 diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index fdcc303fdeb..b16bc0bd194 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,145 @@ +2022-12-02 Jakub Jelinek + + PR target/106577 + * gcc.target/i386/pr106577.c: New test. + +2022-12-02 Jakub Jelinek + + PR c++/84469 + * g++.dg/gomp/for-21.C (f3, f6, f9): Adjust expected diagnostics. + * g++.dg/gomp/for-22.C: New test. + +2022-12-02 Jakub Jelinek + + PR c++/84469 + * g++.dg/cpp1z/decomp56.C: New test. + * g++.dg/gomp/pr84469.C: New test. + +2022-12-02 Michael Collison + + * gcc.dg/tree-ssa/branchless-cond.c: New test. + +2022-12-02 David Malcolm + + PR analyzer/107948 + * gcc.dg/analyzer/feasibility-pr107948.c: New test. + +2022-12-02 David Malcolm + + * gcc.dg/analyzer/string-ops-concat-pair.c: New test. + * gcc.dg/analyzer/string-ops-dup.c: New test. + +2022-12-02 liuhongt + + * gcc.target/i386/pr107934.c: New test. + +2022-12-02 Patrick Palka + + PR c++/107539 + * g++.dg/template/canon-type-19.C: New test. + +2022-12-01 Ju-Zhe Zhong + + * gcc.target/riscv/rvv/base/dup-1.c: New test. + * gcc.target/riscv/rvv/base/dup-2.c: New test. + +2022-12-01 Christophe Lyon + + * gcc.target/arm/simd/mve-compare-1.c: Update. + * gcc.target/arm/simd/mve-compare-scalar-1.c: Update. + * gcc.target/arm/simd/mve-vabs.c: Update. + * gcc.target/arm/simd/mve-vadd-1.c: Update. + * gcc.target/arm/simd/mve-vadd-scalar-1.c: Update. + * gcc.target/arm/simd/mve-vcmp.c: Update. + * gcc.target/arm/simd/pr101325.c: Update. + +2022-12-01 Richard Biener + + PR tree-optimization/107937 + * gcc.dg/pr107937.c: New testcase. + +2022-12-01 Richard Biener + + PR tree-optimization/107935 + * gcc.dg/torture/pr107935.c: New testcase. + +2022-12-01 Jakub Jelinek + + PR target/107627 + * gcc.target/i386/pr107627-1.c: New test. + * gcc.target/i386/pr107627-2.c: New test. + +2022-12-01 liuhongt + + * gcc.target/i386/pr107863.c: New test. + +2022-12-01 David Malcolm + + PR analyzer/106626 + * gcc.dg/analyzer/out-of-bounds-multiline-1.c: New test. + +2022-12-01 David Malcolm + + PR analyzer/106626 + * gcc.dg/analyzer/call-summaries-2.c: Update expected results. + * gcc.dg/analyzer/out-of-bounds-1.c: Likewise. + * gcc.dg/analyzer/out-of-bounds-2.c: Likewise. + * gcc.dg/analyzer/out-of-bounds-3.c: Likewise. + * gcc.dg/analyzer/out-of-bounds-4.c: Likewise. + * gcc.dg/analyzer/out-of-bounds-5.c: Likewise. + * gcc.dg/analyzer/out-of-bounds-container_of.c: Likewise. + * gcc.dg/analyzer/out-of-bounds-read-char-arr.c: Likewise. Rename + functions from "int_arr_" to "char_arr_". + * gcc.dg/analyzer/out-of-bounds-read-int-arr.c: Update expected + results. + * gcc.dg/analyzer/out-of-bounds-read-struct-arr.c: New test. + * gcc.dg/analyzer/out-of-bounds-write-char-arr.c: Update expected + results. Rename functions from "int_arr_" to "char_arr_". + * gcc.dg/analyzer/out-of-bounds-write-int-arr.c: Update expected + results. + * gcc.dg/analyzer/out-of-bounds-write-struct-arr.c: New test. + * gcc.dg/analyzer/pr101962.c: Update expected results. + * gcc.dg/analyzer/realloc-5.c: Update expected results. + * gcc.dg/analyzer/zlib-3.c: Update expected results. + +2022-12-01 David Malcolm + + PR analyzer/106626 + * gcc.dg/analyzer/call-summaries-2.c: Add dg-message for expected + note about valid indexes. + * gcc.dg/analyzer/out-of-bounds-1.c: Likewise, fixing up existing + dg-message directives. + * gcc.dg/analyzer/out-of-bounds-write-char-arr.c: Likewise. + * gcc.dg/analyzer/out-of-bounds-write-int-arr.c: Likewise. + +2022-12-01 David Malcolm + + PR analyzer/106626 + * gcc.dg/analyzer/out-of-bounds-read-char-arr.c: Update for + changes to expected wording. + * gcc.dg/analyzer/out-of-bounds-read-int-arr.c: Likewise. + * gcc.dg/analyzer/out-of-bounds-write-char-arr.c: Likewise. + * gcc.dg/analyzer/out-of-bounds-write-int-arr.c: Likewise. + +2022-12-01 David Malcolm + + PR analyzer/107928 + * gcc.dg/analyzer/fd-bind-pr107928.c: New test. + * gcc.dg/analyzer/fd-connect-pr107928.c: New test. + * gcc.dg/analyzer/fd-stream-socket-active-open.c + (test_active_open_from_connect_constant): New, adapted from + test_active_open_from_connect. + * gcc.dg/analyzer/fd-stream-socket-passive-open.c + (test_passive_open_from_bind_constant): New, adapted from + test_passive_open_from_bind. + (test_passive_open_from_listen_constant): New, adapted from + test_passive_open_from_listen. + +2022-12-01 Haochen Gui + + PR target/100866 + * gcc.target/powerpc/pr100866-1.c: New. + 2022-11-30 Kyrylo Tkachov * gcc.target/aarch64/mops_5.c: New test. diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 8c764b67845..4ddb404752e 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,11 @@ +2022-12-02 Björn Schäpers + Jonathan Wakely + + * include/std/stacktrace (stacktrace_entry::_S_err_handler): New + static function. + (stacktrace_entry, basic_stacktrace): Pass &_S_err_handler to + all calls to libbacktrace. + 2022-11-29 Jonathan Wakely PR libstdc++/107852