From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 2168) id 55E0C3858407; Thu, 16 Jun 2022 00:17:19 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 55E0C3858407 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-1125] Daily bump. X-Act-Checkin: gcc X-Git-Author: GCC Administrator X-Git-Refname: refs/heads/master X-Git-Oldrev: ce3867d414bd7d9e5b6fb2a51b1fb3d9e9e1eae9 X-Git-Newrev: 499b9c5f099c1b3e1ec14977abafe62a4c712bdd Message-Id: <20220616001719.55E0C3858407@sourceware.org> Date: Thu, 16 Jun 2022 00:17:19 +0000 (GMT) X-BeenThere: libstdc++-cvs@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Libstdc++-cvs mailing list List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 16 Jun 2022 00:17:19 -0000 https://gcc.gnu.org/g:499b9c5f099c1b3e1ec14977abafe62a4c712bdd commit r13-1125-g499b9c5f099c1b3e1ec14977abafe62a4c712bdd Author: GCC Administrator Date: Thu Jun 16 00:16:44 2022 +0000 Daily bump. Diff: --- gcc/ChangeLog | 160 ++++++++++++++++++++++++++++++++++++++++++++++++ gcc/DATESTAMP | 2 +- gcc/analyzer/ChangeLog | 50 +++++++++++++++ gcc/cp/ChangeLog | 5 ++ gcc/d/ChangeLog | 58 ++++++++++++++++++ gcc/testsuite/ChangeLog | 79 ++++++++++++++++++++++++ libgomp/ChangeLog | 9 +++ libphobos/ChangeLog | 10 +++ libstdc++-v3/ChangeLog | 16 +++++ 9 files changed, 388 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index c14407afb1c..2d8c237df60 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,163 @@ +2022-06-15 Takayuki 'January June' Suwa + + * config/xtensa/xtensa.md (DSC): New split pattern and mode iterator. + +2022-06-15 Takayuki 'January June' Suwa + + * config/xtensa/predicates.md (reload_operand): + New predicate. + * config/xtensa/xtensa.md: New peephole2 pattern. + +2022-06-15 Takayuki 'January June' Suwa + + * config/xtensa/xtensa.md (*round_up_to_even): + New insn-and-split pattern. + (*signed_ge_zero): Ditto. + +2022-06-15 Takayuki 'January June' Suwa + + * config/xtensa/xtensa-protos.h (xtensa_prepare_expand_call, + xtensa_emit_sibcall): New prototypes. + (xtensa_expand_epilogue): Add new argument that specifies whether + or not sibling call. + * config/xtensa/xtensa.cc (TARGET_FUNCTION_OK_FOR_SIBCALL): + New macro definition. + (xtensa_prepare_expand_call): New function in order to share + the common code. + (xtensa_emit_sibcall, xtensa_function_ok_for_sibcall): + New functions. + (xtensa_expand_epilogue): Add new argument sibcall_p and use it + for sibling call handling. + * config/xtensa/xtensa.md (call, call_value): + Use xtensa_prepare_expand_call. + (call_internal, call_value_internal): + Add the condition in order to be disabled if sibling call. + (sibcall, sibcall_value, sibcall_epilogue): New expansions. + (sibcall_internal, sibcall_value_internal): New insn patterns, + and split ones in order to take care of the indirect sibcalls. + +2022-06-15 Takayuki 'January June' Suwa + + * doc/invoke.texi: Document -mextra-l32r-costs= option. + +2022-06-15 David Malcolm + + PR analyzer/105962 + * doc/invoke.texi: Add -fno-analyzer-undo-inlining. + * tree-diagnostic-path.cc (default_tree_diagnostic_path_printer): + Extend -fdiagnostics-path-format=separate-events so that with + -fdiagnostics-show-path-depths it prints fndecls as well as stack + depths. + +2022-06-15 David Malcolm + + * value-relation.h: Add "final" and "override" to relation_oracle + vfunc implementations as appropriate. + +2022-06-15 Richard Sandiford + + PR middle-end/105975 + Revert everything apart from the expand_fn_using_insn and + expand_direct_optab_fn changes from: + * internal-fn.def (DEF_INTERNAL_INSN_FN): New macro. + (GOMP_SIMT_ENTER_ALLOC, GOMP_SIMT_EXIT, GOMP_SIMT_LANE) + (GOMP_SIMT_LAST_LANE, GOMP_SIMT_ORDERED_PRED, GOMP_SIMT_VOTE_ANY) + (GOMP_SIMT_XCHG_BFLY, GOMP_SIMT_XCHG_IDX): Use it. + * internal-fn.h (direct_internal_fn_info::directly_mapped): New + member variable. + (direct_internal_fn_info::vectorizable): Reduce to 1 bit. + (direct_internal_fn_p): Also return true for internal functions + that map directly to instructions defined target-insns.def. + (direct_internal_fn): Adjust comment accordingly. + * internal-fn.cc (direct_insn, optab1, optab2, vectorizable_optab1) + (vectorizable_optab2): New local macros. + (not_direct): Initialize directly_mapped. + (mask_load_direct, load_lanes_direct, mask_load_lanes_direct) + (gather_load_direct, len_load_direct, mask_store_direct) + (store_lanes_direct, mask_store_lanes_direct, vec_cond_mask_direct) + (vec_cond_direct, scatter_store_direct, len_store_direct) + (vec_set_direct, unary_direct, binary_direct, ternary_direct) + (cond_unary_direct, cond_binary_direct, cond_ternary_direct) + (while_direct, fold_extract_direct, fold_left_direct) + (mask_fold_left_direct, check_ptrs_direct): Use the macros above. + (expand_GOMP_SIMT_ENTER_ALLOC, expand_GOMP_SIMT_EXIT): Delete + (expand_GOMP_SIMT_LANE, expand_GOMP_SIMT_LAST_LANE): Likewise; + (expand_GOMP_SIMT_ORDERED_PRED, expand_GOMP_SIMT_VOTE_ANY): Likewise. + (expand_GOMP_SIMT_XCHG_BFLY, expand_GOMP_SIMT_XCHG_IDX): Likewise. + (direct_internal_fn_types): Handle functions that map to instructions + defined in target-insns.def. + (direct_internal_fn_types): Likewise. + (direct_internal_fn_supported_p): Likewise. + (internal_fn_expanders): Likewise. + (expand_fn_using_insn): New function, + split out and adapted from... + (expand_direct_optab_fn): ...here. + (expand_GOMP_SIMT_ENTER_ALLOC): Use it. + (expand_GOMP_SIMT_EXIT): Likewise. + (expand_GOMP_SIMT_LANE): Likewise. + (expand_GOMP_SIMT_LAST_LANE): Likewise. + (expand_GOMP_SIMT_ORDERED_PRED): Likewise. + (expand_GOMP_SIMT_VOTE_ANY): Likewise. + (expand_GOMP_SIMT_XCHG_BFLY): Likewise. + (expand_GOMP_SIMT_XCHG_IDX): Likewise. + +2022-06-15 Richard Earnshaw + + PR target/105981 + * config/arm/arm.cc (gen_cpymem_ldrd_strd): Rename low_reg and hi_reg + to first_reg and second_reg respectively. Initialize them correctly + when generating big-endian code. + +2022-06-15 Richard Earnshaw + + PR target/105974 + * config/arm/arm.cc (arm_bfi_1_p): Use UINTVAL instead of XUINT. + +2022-06-15 Richard Biener + + PR tree-optimization/105971 + * tree-ssa-alias.cc (refs_may_alias_p_2): Put bail-out for + FUNCTION_DECL and LABEL_DECL refs after decl-decl disambiguation + to leak less surprising alias results. + +2022-06-15 Richard Biener + + PR tree-optimization/105969 + * gimple-ssa-sprintf.cc (get_origin_and_offset_r): Avoid division + by zero in overflow check. + +2022-06-15 Richard Sandiford + + PR tree-optimization/105254 + PR tree-optimization/105940 + Revert: + * config/aarch64/aarch64.cc + (aarch64_vector_costs::determine_suggested_unroll_factor): Take a + loop_vec_info as argument. Restrict the unroll factor to values + that divide the VF. + (aarch64_vector_costs::finish_cost): Update call accordingly. + +2022-06-15 Richard Sandiford + + * read-rtl.cc (find_int): Substitute symbolic constants + before converting the string to an integer. + +2022-06-15 Roger Sayle + Richard Biener + + * match.pd (convert (lshift @1 INTEGER_CST@2)): Narrow integer + left shifts by a constant when the result is truncated, and the + shift constant is well-defined. + * tree-vect-patterns.cc (vect_recog_rotate_pattern): Add + support for rotations of signed integer types, by lowering + using unsigned vector shifts. + +2022-06-15 liuhongt + + PR target/105953 + * config/i386/sse.md (*avx_cmp3_ltint_not): Force_reg + operands[3]. + 2022-06-14 Surya Kumari Jangala PR rtl-optimization/105041 diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index fa673f38835..3d567999025 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20220615 +20220616 diff --git a/gcc/analyzer/ChangeLog b/gcc/analyzer/ChangeLog index 53b3ffb487b..eca4b946894 100644 --- a/gcc/analyzer/ChangeLog +++ b/gcc/analyzer/ChangeLog @@ -1,3 +1,53 @@ +2022-06-15 David Malcolm + + PR analyzer/105962 + * analyzer.opt (fanalyzer-undo-inlining): New option. + * checker-path.cc: Include "diagnostic-core.h" and + "inlining-iterator.h". + (event_kind_to_string): Handle EK_INLINED_CALL. + (class inlining_info): New class. + (checker_event::checker_event): Move here from checker-path.h. + Store original fndecl and depth, and calculate effective fndecl + and depth based on inlining information. + (checker_event::dump): Emit original depth as well as effective + depth when they differ; likewise for fndecl. + (region_creation_event::get_desc): Use m_effective_fndecl. + (inlined_call_event::get_desc): New. + (inlined_call_event::get_meaning): New. + (checker_path::inject_any_inlined_call_events): New. + * checker-path.h (enum event_kind): Add EK_INLINED_CALL. + (checker_event::checker_event): Make protected, and move + definition to checker-path.cc. + (checker_event::get_fndecl): Use effective fndecl. + (checker_event::get_stack_depth): Use effective stack depth. + (checker_event::get_logical_location): Use effective stack depth. + (checker_event::get_original_stack_depth): New. + (checker_event::m_fndecl): Rename to... + (checker_event::m_original_fndecl): ...this. + (checker_event::m_depth): Rename to... + (checker_event::m_original_depth): ...this. + (checker_event::m_effective_fndecl): New field. + (checker_event::m_effective_depth): New field. + (class inlined_call_event): New checker_event subclass. + (checker_path::inject_any_inlined_call_events): New decl. + * diagnostic-manager.cc: Include "inlining-iterator.h". + (diagnostic_manager::emit_saved_diagnostic): Call + checker_path::inject_any_inlined_call_events. + (diagnostic_manager::prune_for_sm_diagnostic): Handle + EK_INLINED_CALL. + * engine.cc (tainted_args_function_custom_event::get_desc): Use + effective fndecl. + * inlining-iterator.h: New file. + +2022-06-15 David Malcolm + + * diagnostic-manager.cc (saved_diagnostic::dump_dot_id): New. + (saved_diagnostic::dump_as_dot_node): New. + * diagnostic-manager.h (saved_diagnostic::dump_dot_id): New decl. + (saved_diagnostic::dump_as_dot_node): New decl. + * engine.cc (exploded_node::dump_dot): Add nodes for saved + diagnostics. + 2022-06-02 David Malcolm * checker-path.cc (checker_event::get_meaning): New. diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index fab98152e59..6223cc224ac 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,8 @@ +2022-06-15 Nathan Sidwell + + * module.cc (module_state::write_readme): Use less confusing + importable unit names. + 2022-06-14 Nathan Sidwell * cp-tree.h (fini_modules): Add has_inits parm. diff --git a/gcc/d/ChangeLog b/gcc/d/ChangeLog index d84ac23702a..537ae39cc9c 100644 --- a/gcc/d/ChangeLog +++ b/gcc/d/ChangeLog @@ -1,3 +1,61 @@ +2022-06-15 Iain Buclaw + + * d-attribs.cc (d_langhook_attribute_table): Add no_sanitize. + (d_handle_no_sanitize_attribute): New function. + +2022-06-15 Iain Buclaw + + * d-attribs.cc (d_langhook_attribute_table): Add visibility. + (insert_type_attribute): Use decl_attributes instead of + merge_attributes. + (insert_decl_attribute): Likewise. + (apply_user_attributes): Do nothing when no UDAs applied. + (d_handle_visibility_attribute): New function. + * d-gimplify.cc (d_gimplify_binary_expr): Adjust. + * d-tree.h (set_visibility_for_decl): Declare. + * decl.cc (get_symbol_decl): Move setting of visibility flags to... + (set_visibility_for_decl): ... here. New function. + * types.cc (TypeVisitor::visit (TypeStruct *)): Call + set_visibility_for_decl(). + (TypeVisitor::visit (TypeClass *)): Likewise. + +2022-06-15 Iain Buclaw + + * typeinfo.cc (make_internal_typeinfo): Set TYPE_ARTIFICIAL. + +2022-06-15 Iain Buclaw + + * d-attribs.cc (apply_user_attributes): Set ATTR_FLAG_TYPE_IN_PLACE + only on incomplete types. + * d-codegen.cc (copy_aggregate_type): Set TYPE_STUB_DECL after copy. + * d-compiler.cc (Compiler::onParseModule): Adjust. + * d-tree.h (AGGREGATE_OR_ENUM_TYPE_CHECK): Define. + (TYPE_FORWARD_REFERENCES): Define. + * decl.cc (gcc_attribute_p): Update documentation. + (DeclVisitor::visit (StructDeclaration *)): Exit before building type + node if gcc.attributes symbol. + (DeclVisitor::visit (ClassDeclaration *)): Build type node and add + TYPE_NAME to current binding level before emitting anything else. + (DeclVisitor::visit (InterfaceDeclaration *)): Likewise. + (DeclVisitor::visit (EnumDeclaration *)): Likewise. + (build_type_decl): Move rest_of_decl_compilation() call to + finish_aggregate_type(). + * types.cc (insert_aggregate_field): Move layout_decl() call to + finish_aggregate_type(). + (insert_aggregate_bitfield): Likewise. + (layout_aggregate_members): Adjust. + (finish_incomplete_fields): New function. + (finish_aggregate_type): Handle forward referenced field types. Call + rest_of_type_compilation() after completing the aggregate. + (TypeVisitor::visit (TypeEnum *)): Don't set size and alignment until + after apply_user_attributes(). Call rest_of_type_compilation() after + completing the enumeral. + (TypeVisitor::visit (TypeStruct *)): Call build_type_decl() before + apply_user_attributes(). Don't set size, alignment, and mode until + after apply_user_attributes(). + (TypeVisitor::visit (TypeClass *)): Call build_type_decl() before + applly_user_attributes(). + 2022-06-13 Iain Buclaw * d-builtins.cc: Include builtins.h. diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 35457902419..c8664b31445 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,82 @@ +2022-06-15 Takayuki 'January June' Suwa + + * gcc.target/xtensa/sibcalls.c: New. + +2022-06-15 David Malcolm + + PR analyzer/105962 + * gcc.dg/analyzer/inlining-1-multiline.c: New test. + * gcc.dg/analyzer/inlining-1-no-undo.c: New test. + * gcc.dg/analyzer/inlining-1.c: New test. + * gcc.dg/analyzer/inlining-2-multiline.c: New test. + * gcc.dg/analyzer/inlining-2.c: New test. + * gcc.dg/analyzer/inlining-3-multiline.c: New test. + * gcc.dg/analyzer/inlining-3.c: New test. + * gcc.dg/analyzer/inlining-4-multiline.c: New test. + * gcc.dg/analyzer/inlining-4.c: New test. + * gcc.dg/analyzer/inlining-5-multiline.c: New test. + * gcc.dg/analyzer/inlining-5.c: New test. + * gcc.dg/analyzer/inlining-6-multiline.c: New test. + * gcc.dg/analyzer/inlining-6.c: New test. + * gcc.dg/analyzer/inlining-7-multiline.c: New test. + * gcc.dg/analyzer/inlining-7.c: New test. + +2022-06-15 David Malcolm + + * gcc.dg/analyzer/uninit-1.c: Add test coverage of attempts + to jump through an uninitialized function pointer, and of attempts + to pass an uninitialized value to a function call. + +2022-06-15 Iain Buclaw + + * gdc.dg/asan/attr_no_sanitize1.d: New test. + * gdc.dg/ubsan/attr_no_sanitize2.d: New test. + +2022-06-15 Iain Buclaw + + * gdc.dg/attr_visibility1.d: New test. + * gdc.dg/attr_visibility2.d: New test. + * gdc.dg/attr_visibility3.d: New test. + +2022-06-15 David Edelsohn + + * g++.dg/cpp1z/aligned-new9.C: Skip on AIX. + +2022-06-15 Iain Buclaw + + * gdc.dg/Wpadded.d: New test. + +2022-06-15 Richard Biener + + PR tree-optimization/105971 + * gcc.dg/torture/pr106971.c: New testcase. + +2022-06-15 Richard Biener + + PR tree-optimization/105969 + * gcc.dg/pr105969.c: New testcase. + +2022-06-15 Richard Sandiford + + * gcc.target/aarch64/sve/cost_model_14.c: New test. + +2022-06-15 Roger Sayle + Richard Biener + + * gcc.dg/fold-convlshift-4.c: New test case. + * gcc.dg/optimize-bswaphi-1.c: Update found bswap count. + * gcc.dg/tree-ssa/pr61839_3.c: Shift is now optimized before VRP. + * gcc.dg/vect/vect-over-widen-1-big-array.c: Remove obsolete tests. + * gcc.dg/vect/vect-over-widen-1.c: Likewise. + * gcc.dg/vect/vect-over-widen-3-big-array.c: Likewise. + * gcc.dg/vect/vect-over-widen-3.c: Likewise. + * gcc.dg/vect/vect-over-widen-4-big-array.c: Likewise. + * gcc.dg/vect/vect-over-widen-4.c: Likewise. + +2022-06-15 liuhongt + + * g++.target/i386/pr105953.C: New test. + 2022-06-14 Surya Kumari Jangala PR rtl-optimization/105041 diff --git a/libgomp/ChangeLog b/libgomp/ChangeLog index 245977060a1..893d20d8cc8 100644 --- a/libgomp/ChangeLog +++ b/libgomp/ChangeLog @@ -1,3 +1,12 @@ +2022-06-15 Jakub Jelinek + + * testsuite/libgomp.c-c++-common/get-mapped-ptr-1.c (main): Initialize + q to ddress of an automatic variable. Use -5 instead of -1 in + omp_get_mapped_ptr call. Add test with omp_initial_device. + * testsuite/libgomp.fortran/get-mapped-ptr-1.f90 (main): Use -5 instead + of -1 in omp_get_mapped_ptr call. Add test with omp_initial_device. + Renumber stop arguments afterwards. + 2022-06-13 Jakub Jelinek * omp.h.in (omp_initial_device, omp_invalid_device): New enumerators. diff --git a/libphobos/ChangeLog b/libphobos/ChangeLog index e56f2f25016..2450d4905eb 100644 --- a/libphobos/ChangeLog +++ b/libphobos/ChangeLog @@ -1,3 +1,13 @@ +2022-06-15 Iain Buclaw + + * libdruntime/gcc/attributes.d (no_sanitize): Define. + (noSanitize): Define. + +2022-06-15 Iain Buclaw + + * libdruntime/gcc/attributes.d (visibility): Define. + (hidden): Define. + 2022-06-13 Iain Buclaw * libdruntime/MERGE: Merge upstream druntime 454471d8. diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 490ab754ed3..80ca871a558 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,19 @@ +2022-06-15 François Dumont + + PR libstdc++/105717 + * include/bits/hashtable_policy.h (_ConvertToValueType): New. + * include/bits/hashtable.h (_Hashtable<>::_M_insert_unique_aux): New. + (_Hashtable<>::_M_insert(_Arg&&, const _NodeGenerator&, true_type)): Use latters. + (_Hashtable<>::_M_insert(_Arg&&, const _NodeGenerator&, false_type)): Likewise. + (_Hashtable(_InputIterator, _InputIterator, size_type, const _Hash&, const _Equal&, + const allocator_type&, true_type)): Use this.insert range. + (_Hashtable(_InputIterator, _InputIterator, size_type, const _Hash&, const _Equal&, + const allocator_type&, false_type)): Use _M_insert. + * testsuite/23_containers/unordered_map/cons/56112.cc: Check how many times conversion + is done. + * testsuite/23_containers/unordered_map/insert/105717.cc: New test. + * testsuite/23_containers/unordered_set/insert/105717.cc: New test. + 2022-06-14 Jonathan Wakely PR libstdc++/62187