From 37bbfd1c55d14b427ef209e8057cbe7acf72860f Mon Sep 17 00:00:00 2001 From: GCC Administrator Date: Sat, 16 Sep 2023 00:17:55 +0000 Subject: Daily bump. --- gcc/ChangeLog | 85 +++++++++++++++++++++++++++++++++ gcc/DATESTAMP | 2 +- gcc/ada/ChangeLog | 123 ++++++++++++++++++++++++++++++++++++++++++++++++ gcc/analyzer/ChangeLog | 44 +++++++++++++++++ gcc/fortran/ChangeLog | 16 +++++++ gcc/testsuite/ChangeLog | 68 ++++++++++++++++++++++++++ 6 files changed, 337 insertions(+), 1 deletion(-) (limited to 'gcc') diff --git a/gcc/ChangeLog b/gcc/ChangeLog index f398465..584c7d9 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,88 @@ +2023-09-15 Fei Gao + + * config/riscv/predicates.md: Restrict predicate + to allow 'reg' only. + +2023-09-15 Andrew Pinski + + * match.pd (zero_one_valued_p): Match a cast from a zero_one_valued_p. + Also match `a & zero_one_valued_p` too. + +2023-09-15 Andrew Pinski + + PR tree-optimization/111414 + * match.pd (`(1 >> X) != 0`): Check to see if + the integer_onep was an integral type (not a vector type). + +2023-09-15 Andrew MacLeod + + * gimple-range-fold.cc (fold_using_range::range_of_phi): Always + run phi analysis, and do it before loop analysis. + +2023-09-15 Andrew MacLeod + + * gimple-range-fold.cc (fold_using_range::range_of_phi): Fix + indentation. + +2023-09-15 Qing Zhao + + PR tree-optimization/111407 + * tree-ssa-math-opts.cc (convert_mult_to_widen): Avoid the transform + when one of the operands is subject to abnormal coalescing. + +2023-09-15 Lehua Ding + + * config/riscv/riscv-protos.h (enum insn_flags): Change name. + (enum insn_type): Ditto. + * config/riscv/riscv-v.cc (get_mask_mode_from_insn_flags): Removed. + (emit_vlmax_insn): Adjust. + (emit_nonvlmax_insn): Adjust. + (emit_vlmax_insn_lra): Adjust. + +2023-09-15 Lehua Ding + + * config/riscv/autovec-opt.md: Adjust. + * config/riscv/autovec.md: Ditto. + * config/riscv/riscv-protos.h (enum class): Delete enum reduction_type. + (expand_reduction): Adjust expand_reduction prototype. + * config/riscv/riscv-v.cc (need_mask_operand_p): New helper function. + (expand_reduction): Refactor expand_reduction. + +2023-09-15 Richard Sandiford + + PR target/111411 + * config/aarch64/aarch64.cc (aarch64_operands_ok_for_ldpstp): Require + the lower memory access to a mem-pair operand. + +2023-09-15 Yang Yujie + + * config.gcc: Pass the default ABI via TM_MULTILIB_CONFIG. + * config/loongarch/loongarch-driver.h: Invoke MLIB_SELF_SPECS + before the driver canonicalization routines. + * config/loongarch/loongarch.h: Move definitions of CC1_SPEC etc. + to loongarch-driver.h + * config/loongarch/t-linux: Move multilib-related definitions to + t-multilib. + * config/loongarch/t-multilib: New file. Inject library build + options obtained from --with-multilib-list. + * config/loongarch/t-loongarch: Same. + +2023-09-15 Lehua Ding + + PR target/111381 + * config/riscv/autovec-opt.md (*reduc_plus_scal_): + New combine pattern. + (*fold_left_widen_plus_): Ditto. + (*mask_len_fold_left_widen_plus_): Ditto. + * config/riscv/autovec.md (reduc_plus_scal_): + Change from define_expand to define_insn_and_split. + (fold_left_plus_): Ditto. + (mask_len_fold_left_plus_): Ditto. + * config/riscv/riscv-v.cc (expand_reduction): + Support widen reduction. + * config/riscv/vector-iterators.md (UNSPEC_WREDUC_SUM): + Add new iterators and attrs. + 2023-09-14 David Malcolm * diagnostic-event-id.h (diagnostic_thread_id_t): New typedef. diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index 987b801..b17e44d 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20230915 +20230916 diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index a457e1d..231ce8b 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,126 @@ +2023-09-15 Eric Botcazou + + * gcc-interface/utils.cc (finish_record_type): Round the size in + the padding case as well. + +2023-09-15 Piotr Trojanek + + * exp_aggr.adb (Build_Array_Aggr_Code): Don't build aggregate code + for null array aggregates. + * sem_aggr.adb (Resolve_Array_Aggregate): Don't examine formatting + of a null array aggregate. + +2023-09-15 Eric Botcazou + + * inline.adb (Expand_Inlined_Call): In the case of a function call + that returns an unconstrained type and initializes an object, set + the No_Initialization flag on the new declaration of the object. + +2023-09-15 Patrick Bernardi + + * exp_ch6.adb (Expand_N_Subprogram_Body): Do not perform + local-exception-to- goto optimization on barrier functions. + * exp_ch9.adb (Expand_Entry_Barrier): Simplify the if statement + around the simple barrier optimization and remove an old, no + longer relevant comment. + +2023-09-15 Patrick Bernardi + + * bindgen.adb (Gen_Adainit): Generate restrictions when standard + library is suppressed. + (Gen_Output_File_Ada): Ditto. + (Gen_Restrictions): Ditto. + +2023-09-15 Eric Botcazou + + * exp_util.adb (Component_May_Be_Bit_Aligned): Do not return false + for a small component of a record type with a variant part. + +2023-09-15 Eric Botcazou + + * exp_aggr.adb (Convert_To_Assignments): In the case of a + component association, call Is_Container_Aggregate on the parent's + parent. + (Expand_Array_Aggregate): Likewise. + +2023-09-15 Kévin Le Gouguec + + * doc/gnat_ugn/building_executable_programs_with_gnat.rst: Remove + extended discussion regarding mold run-time dependencies; + packaging changes in GNAT Pro have made them obsolete. + +2023-09-15 Eric Botcazou + + * sem_res.adb (Resolve_Call): When the target is an entity, do not + freeze it if the current scope is the inner wrapper function built + for an expression function with a Post or Refined_Post aspect. + +2023-09-15 Bob Duff + Ronan Desplanques + + * atree.adb (Node_Kind_Table): Specify parameter explicitly in + GNAT.Table instantiations. Use fully qualified references instead + of relying on use clauses. + (Get_Field_Value): Remove special case for F_Scope_Depth_Value. + That is, enable the Field_Present check in that case. + (It was already enabled for all other fields.) Violations of this + check were already fixed. + (Print_Node_Statistics): Sort the output in decreasing order of + frequencies. + (Print_Field_Statistics): Likewise (sort). + * accessibility.adb (Accessibility_Level): Pass Allow_Alt_Model in + recursive calls. Apparently, an oversight. + (Innermost_Master_Scope_Depth): Need to special-case the 'Old + attribute and allocators. + * einfo-utils.ads (Scope_Depth): Use Scope_Kind_Id to get + predicate checks. + (Scope_Depth_Set): Likewise. + (Scope_Depth_Default_0): Likewise. + * einfo-utils.adb: As for spec. + * frontend.adb (Frontend): Remove unnecessary "return;". + * gen_il-types.ads (Scope_Kind): New union type. + * gen_il-gen-gen_entities.adb (Scope_Kind): New union type. + * sem.ads: Move "with Einfo.Entities;" from body to spec. + (Scope_Stack_Entry): Declare Entity to be of Scope_Kind_Id to get + predicate checks. We had previously been putting non-scopes on the + scope stack; this prevents such anomalies. + * sem.adb: Move "with Einfo.Entities;" from body to spec. + * sem_ch8.ads: Move "with Einfo.Entities;" from body to spec. Add + "with Types;". + (Push_Scope): Use Scope_Kind_Id to get predicate checks. + * sem_ch8.adb: Move "with Einfo.Entities;" from body to spec. Add + "with Types;". + (Push_Scope): Use Scope_Kind_Id to get predicate checks. + (Pop_Scope): Use Scope_Kind_Id on popped entity to get predicate + checks. This prevents anomalies where a scope pushed onto the + stack is later mutated to a nonscope before being popped. + * sem_util.ads (Find_Enclosing_Scope): Add postcondition to ensure + that the enclosing scope of a node N is not the same node N. + Clearly, N does not enclose itself. + * sem_util.adb (Find_Enclosing_Scope): There were several bugs + where Find_Enclosing_Scope(N) = N. For example, if N is an entity, + then we would typically go up to its declaration, and then back + down to the Defining_Entity of the declaration, which is N itself. + There were other cases where Find_Enclosing_Scope of an entity + disagreed with Scope. Clearly, Find_Enclosing_Scope and Scope + should agree (when both are defined). Such bugs caused latent bugs + in accessibility.adb related to 'Old, and fixing bugs here caused + such bugs to be revealed. These are fixed by calling Scope when N + is an entity. + +2023-09-15 Javier Miranda + + * accessibility.ads (Needs_Result_Accessibility_Extra_Formal): + Removed. + * accessibility.adb (Needs_Result_Accessibility_Level_Param): + Removed. + (Needs_Result_Accessibility_Extra_Formal): Removed. + (Needs_Result_Accessibility_Level): Revert previous patch. + * sem_ch6.adb (Parent_Subprogram): Handle function overriding an + enumeration literal. + (Create_Extra_Formals): Ensure that the parent subprogram has all + its extra formals. + 2023-09-14 Yannick Moy * exp_util.adb (Is_Statically_Disabled): New function to detect a diff --git a/gcc/analyzer/ChangeLog b/gcc/analyzer/ChangeLog index 709004d..272c7fb 100644 --- a/gcc/analyzer/ChangeLog +++ b/gcc/analyzer/ChangeLog @@ -1,3 +1,47 @@ +2023-09-15 David Malcolm + + * analyzer.cc (get_stmt_location): Handle null stmt. + * diagnostic-manager.cc (saved_diagnostic::saved_diagnostic): Copy + m_loc from ploc. + (saved_diagnostic::operator==): Compare m_loc. + (saved_diagnostic::calc_best_epath): Only use m_stmt_finder if + m_loc is unknown. + (dedupe_key::dedupe_key): Initialize m_loc. + (dedupe_key::operator==): Compare m_loc. + (dedupe_key::get_location): Use m_loc if it's known. + (dedupe_key::m_loc): New field. + (diagnostic_manager::emit_saved_diagnostic): Only call + get_emission_location if m_loc is unknown, preferring to use m_loc + if it's available. + * diagnostic-manager.h (saved_diagnostic::m_loc): New field. + (pending_location::pending_location): Initialize m_loc. Add + overload taking a location_t rather than a stmt/stmt_finder. + (pending_location::m_loc): New field. + +2023-09-15 David Malcolm + + * analyzer.h (struct pending_location): New forward decl. + * diagnostic-manager.cc (saved_diagnostic::saved_diagnostic): + Replace params "enode", "snode", "stmt", and "stmt_finder" with + "ploc". + (diagnostic_manager::add_diagnostic): Likewise for both overloads. + * diagnostic-manager.h (saved_diagnostic::saved_diagnostic): + Likewise. + (struct pending_location): New. + (diagnostic_manager::add_diagnostic): Replace params "enode", + "snode", "stmt", and "stmt_finder" with "ploc". + * engine.cc (impl_region_model_context::warn): Update call to + add_diagnostic for above change. + (impl_sm_context::warn): Likewise. + (impl_region_model_context::on_state_leak): Likewise. + * infinite-recursion.cc + (exploded_graph::detect_infinite_recursion): Likewise. + +2023-09-15 David Malcolm + + * region-model.cc (region_model::get_gassign_result): Handle + volatile ops by using a conjured_svalue. + 2023-09-14 David Malcolm * checker-event.h (checker_event::get_thread_id): New. diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 3065282..0c95a3a 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,19 @@ +2023-09-15 Harald Anlauf + + PR fortran/30802 + * trans-array.cc (trans_array_bound_check): Add optional argument + COMPNAME for explicit specification of array component name. + (array_bound_check_elemental): Helper function for generating + bounds-checking code for elemental dimensions. + (gfc_conv_expr_descriptor): Use bounds-checking also for elemental + dimensions, i.e. those not handled by the scalarizer. + +2023-09-15 Mikael Morin + + PR fortran/108957 + * gfortran.h (gfc_symbol): Add comment documenting reference counting. + * parse.cc (parse_interface): Remove reference count incrementation. + 2023-09-12 Mikael Morin PR fortran/110996 diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 8a84fb9..98f8364 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,71 @@ +2023-09-15 David Malcolm + + * c-c++-common/analyzer/volatile-1.c: New test. + +2023-09-15 Harald Anlauf + + PR fortran/30802 + * gfortran.dg/bounds_check_fail_6.f90: New test. + +2023-09-15 Andrew Pinski + + * gcc.dg/tree-ssa/bool-13.c: Update testcase as we now do + the MIN/MAX during forwprop1. + +2023-09-15 Andrew Pinski + + PR tree-optimization/111414 + * gcc.c-torture/compile/pr111414-1.c: New test. + +2023-09-15 Qing Zhao + + PR tree-optimization/111407 + * gcc.dg/pr111407.c: New test. + +2023-09-15 Lehua Ding + + * gcc.target/riscv/rvv/vsetvl/wredsum_vlmax.c: New test. + +2023-09-15 Juzhe-Zhong + + * gcc.dg/vect/slp-35.c: Block SLP check for vect_strided5 targets. + +2023-09-15 Juzhe-Zhong + + * gcc.dg/vect/slp-34.c: Block check for vect_strided5. + +2023-09-15 Juzhe-Zhong + + * gcc.dg/vect/slp-34-big-array.c: Block SLP check for vect_strided5. + +2023-09-15 Juzhe-Zhong + + * gcc.dg/vect/slp-16.c: Block vect_strided6. + * lib/target-supports.exp: Add strided type. + +2023-09-15 Juzhe-Zhong + + * gcc.dg/vect/slp-1.c: Add vect_stried5. + +2023-09-15 Juzhe-Zhong + + * gcc.dg/Wstringop-overflow-47.c: Add riscv. + +2023-09-15 Richard Sandiford + + PR target/111411 + * gcc.dg/rtl/aarch64/pr111411.c: New test. + +2023-09-15 Lehua Ding + + PR target/111381 + * gcc.target/riscv/rvv/autovec/widen/widen_reduc-1.c: New test. + * gcc.target/riscv/rvv/autovec/widen/widen_reduc_order-1.c: New test. + * gcc.target/riscv/rvv/autovec/widen/widen_reduc_order-2.c: New test. + * gcc.target/riscv/rvv/autovec/widen/widen_reduc_order_run-1.c: New test. + * gcc.target/riscv/rvv/autovec/widen/widen_reduc_order_run-2.c: New test. + * gcc.target/riscv/rvv/autovec/widen/widen_reduc_run-1.c: New test. + 2023-09-14 David Malcolm * gcc.dg/plugin/diagnostic-test-paths-multithreaded-inline-events.c: -- cgit v1.1