From f2d118932e7166f2166fae05c227945dd3ac56f7 Mon Sep 17 00:00:00 2001 From: GCC Administrator Date: Mon, 13 May 2024 08:45:27 +0000 Subject: [PATCH] Daily bump. --- ChangeLog | 8 + contrib/ChangeLog | 7 + gcc/ChangeLog | 261 ++++++++++++++++++++++++++ gcc/DATESTAMP | 2 +- gcc/ada/ChangeLog | 396 ++++++++++++++++++++++++++++++++++++++++ gcc/cp/ChangeLog | 102 +++++++++++ gcc/fortran/ChangeLog | 54 ++++++ gcc/m2/ChangeLog | 6 + gcc/testsuite/ChangeLog | 173 ++++++++++++++++++ libgcc/ChangeLog | 8 + 10 files changed, 1016 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 0dde7128be5..626b3b34d75 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2024-05-13 Xiao Zeng + + * MAINTAINERS: Add myself. + +2024-05-09 H.J. Lu + + * MAINTAINERS: Add myself to DCO. + 2024-05-06 YunQiang Su * config-ml.in: Insert an -B option with multi-os-dir into diff --git a/contrib/ChangeLog b/contrib/ChangeLog index c97aac8ddcd..2c8b7d643da 100644 --- a/contrib/ChangeLog +++ b/contrib/ChangeLog @@ -1,3 +1,10 @@ +2024-05-09 Jakub Jelinek + + * gcc-changelog/git_update_version.py: Replace + 9dbff9c05520a74e6cd337578f27b56c941f64f3 with + 39f81924d88e3cc197fc3df74204c9b5e01e12f7 and + 109f1b28fc94c93096506e3df0c25e331cef19d0 in IGNORED_COMMITS. + 2024-05-09 Jakub Jelinek * gcc-changelog/git_update_version.py: Add diff --git a/gcc/ChangeLog b/gcc/ChangeLog index fff1592f837..68c11340a9c 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,264 @@ +2024-05-13 YunQiang Su + + Revert: + 2024-05-09 YunQiang Su + + * config/mips/constraints.md: Add new constraint 'w'. + +2024-05-12 Roger Sayle + Kyrill Tkachov + + * config/arm/arm.md (*arm_zeroextractsi2_8_8, *arm_signextractsi2_8_8, + *arm_zeroextractsi2_8_16, *arm_signextractsi2_8_16, + *arm_zeroextractsi2_16_8, *arm_signextractsi2_16_8): New. + +2024-05-12 Jeff Law + + * config/riscv/riscv.cc (riscv_build_integer_1): Use slli.uw more. + +2024-05-12 Jeff Law + + * config/riscv/riscv.cc (riscv_build_integer_1): Fix thinko in testing + when lui can be used to set several bits in bseti path. + +2024-05-12 Mark Wielaard + + * config/mingw/cygming.opt.urls: Regenerate. + * config/mingw/mingw.opt.urls: Likewise. + +2024-05-11 Mark Harmstone + + * dwarf2codeview.cc (DEBUG_S_SYMBOLS): Define. + (S_COMPILE3, CV_CFL_80386, CV_CFL_X64): Likewise. + (CV_CFL_C, CV_CFL_CXX): Likewise. + (SYMBOL_START_LABEL, SYMBOL_END_LABEL): Likewise. + (start_processor, language_constant): New functions. + (write_compile3_symbol, write_codeview_symbols): Likewise. + (codeview_debug_finish): Call write_codeview_symbols. + +2024-05-11 Mark Harmstone + + * dwarf2codeview.cc (DEBUG_S_LINES, LINE_LABEL): Define. + (END_FUNC_LABEL): Likewise. + (struct codeview_line, codeview_line_block): New structures. + (codeview_function): Likewise. + (line_label_num, func_label_num, funcs, last_func): New variables. + (last_filename, last_file_id): Likewise. + (codeview_source_line, write_line_numbers): New functions. + (codeview_switch_text_section, codeview_end_epilogue): Likewise. + (codeview_debug_finish): Call write_line_numbers. + * dwarf2codeview.h (codeview_source_line): Prototype. + (codeview_switch_text_secction, codeview_end_epilogue): Likewise. + * dwarf2out.cc (dwarf2_end_epilogue): Add codeview support. + (dwarf2out_switch_text_section): Likewise. + (dwarf2out_source_line): Likewise. + * opts.cc (finish_options): Handle codeview debugging symbols. + +2024-05-11 Mark Harmstone + + * dwarf2codeview.cc (DEBUG_S_STRINGTABLE): Define. + (DEBUG_S_FILECHKSMS, CHKSUM_TYPE_MD5, HASH_SIZE): Likewise. + (codeview_string, codeview_source_file): New structures. + (struct string_hasher): New class for codeview_string hashing. + (files, last_file, num_files, string_offset): New variables. + (strings_hstab, strings, last_string): Likewise. + (add_string, codevie_start_source_file): New functions. + (write_strings_tabe, write_soruce_files): Likewise. + (codeview_debug_finish): Call new functions. + * dwarf2codeview.h (codeview_start_source_file): Prototype. + * dwarf2out.cc (dwarf2out_start_source_file): Handle codeview. + +2024-05-11 Mark Harmstone + + * Makefile.in (OBJS): Add dwarf2codeview.o. + (GTFILES): Add dwarf2codeview.cc + * config/i386/cygming.h (CODEVIEW_DEBUGGING_INFO): Define. + * dwarf2codeview.cc: New file. + * dwarf2codeview.h: New file. + * dwarf2out.cc: Include dwarf2codeview.h. + (dwarf2out_finish): Call codeview_debug_finish as needed. + * flag-types.h (DINFO_TYPE_CODEVIEW): Add enum member. + (CODEVIEW_DEBUG): Define. + * flags.h (codeview_debuginfo_p): Proottype. + * opts.cc (debug_type_names): Add codeview. + (debug_type_masks): Add CODEVIEW_DEBUG. + (df_set_names): Add codeview. + (codeview_debuginfo_p): New function. + (dwarf_based_debuginfo_p): Add CODEVIEW clause. + (set_debug_level): Handle CODEVIEW_DEBUG. + * toplev.cc (process_options): Handle codeview. + +2024-05-11 dzhao.ampere + + PR tree-optimization/114760 + * tree-ssa-loop-niter.cc (is_lshift_by_1): New function + to check if STMT is equivalent to x << 1. + (is_rshift_by_1): New function to check if STMT is + equivalent to x >> 1. + (number_of_iterations_cltz): Enhance the identification + of logical shift by one. + (number_of_iterations_cltz_complement): Enhance the + identification of logical shift by one. + +2024-05-11 Aldy Hernandez + + * range-op-ptr.cc (range_operator::fold_range): Return false. + +2024-05-11 Aldy Hernandez + + * range-op.cc (TRAP_ON_UNHANDLED_POINTER_OPERATORS): New + (range_op_handler::fold_range): Use it. + (range_op_handler::op1_range): Same. + (range_op_handler::op2_range): Same. + (range_op_handler::lhs_op1_relation): Same. + (range_op_handler::lhs_op2_relation): Same. + (range_op_handler::op1_op2_relation): Same. + +2024-05-10 Jeff Law + + * config/riscv/riscv.cc (riscv_build_integer_1): Recognize cases where + we can use shNadd to improve constant synthesis. + (riscv_move_integer): Handle code generation for shNadd. + +2024-05-10 Roger Sayle + Hongtao Liu + + * config/i386/i386-expand.cc (ix86_expand_vecop_qihi_partial): + Don't attempt ix86_expand_vec_shift_qihi_constant on SSE4.1. + +2024-05-10 Dimitar Dimitrov + + * config/pru/predicates.md (pru_mulsrc0_operand): Use register + class instead of register number for the check. + (pru_mulsrc1_operand): Ditto. + +2024-05-10 Vladimir N. Makarov + + PR target/114942 + * lra-constraints.cc (struct input_reload): Add new member early_clobber_p. + (get_reload_reg): Add new arg early_clobber_p, don't reuse input + reload with true early_clobber_p member value, use the arg for new + element of curr_insn_input_reloads. + (match_reload): Assign false to early_clobber_p member. + (process_addr_reg, simplify_operand_subreg, curr_insn_transform): + Adjust get_reload_reg calls. + +2024-05-10 Aldy Hernandez + + PR tree-optimization/115026 + * value-range.cc (prange::update_bitmask): Use operand bitmask. + +2024-05-10 Richard Biener + + PR tree-optimization/114998 + * tree-loop-distribution.cc (free_rdg): Take loop argument. + Reset UIDs of stmts still in the IL rather than all stmts + referenced from the RDG. + (loop_distribution::build_rdg): Pass loop to free_rdg. + (loop_distribution::distribute_loop): Likewise. + (loop_distribution::transform_reduction_loop): Likewise. + +2024-05-10 Richard Biener + + * tree-vect-patterns.cc (vect_pattern_recog_1): Do not + remove reductions involving patterns. + * tree-vect-loop.cc (vectorizable_reduction): Reject SLP + reduction groups with multiple lane-reducing reductions. + * tree-vect-slp.cc (vect_analyze_slp_instance): When discovering + SLP reduction groups avoid including lane-reducing ones. + +2024-05-10 Jose E. Marchesi + + * config/bpf/bpf.cc (bpf_print_operand_address): Include + surrounding parenthesis around mem operands in pseudoc asm + dialect. + * config/bpf/bpf.md (*mov): Adapt accordingly. + (zero_extendhidi2): Likewise. + (zero_extendqidi2): Likewise. + (*extendsidi2): Likewise. + (*extendsidi2): Likewise. + (extendhidi2): Likewise. + (extendqidi2): Likewise. + (extendhisi2): Likewise. + * config/bpf/atomic.md (atomic_add): Likewise. + (atomic_and): Likewise. + (atomic_or): Likewise. + (atomic_xor): Likewise. + (atomic_fetch_add): Likewise. + (atomic_fetch_and): Likewise. + (atomic_fetch_or): Likewise. + (atomic_fetch_xor): Likewise. + +2024-05-10 Jakub Jelinek + + PR target/114968 + * target.def (use_atexit_for_cxa_atexit): Remove spurious space + from comment. + (adjust_cdtor_callabi_fntype): New cxx target hook. + * targhooks.h (default_cxx_adjust_cdtor_callabi_fntype): Declare. + * targhooks.cc (default_cxx_adjust_cdtor_callabi_fntype): New + function. + * doc/tm.texi.in (TARGET_CXX_ADJUST_CDTOR_CALLABI_FNTYPE): Add. + * doc/tm.texi: Regenerate. + * config/i386/i386.cc (ix86_cxx_adjust_cdtor_callabi_fntype): New + function. + (TARGET_CXX_ADJUST_CDTOR_CALLABI_FNTYPE): Redefine. + +2024-05-10 Aldy Hernandez + + PR tree-optimization/115009 + * value-range-storage.cc (prange_storage::alloc): Do not assume + all pointers are the same size. + (prange_storage::prange_storage): Same. + (prange_storage::fits_p): Same. + +2024-05-10 Kito Cheng + + * config/riscv/riscv-vsetvl.cc: Fix typos in comments. + (get_all_predecessors): Ditto. + (pre_vsetvl::m_unknow_info): Rename to... + (pre_vsetvl::m_unknown_info): this. + (pre_vsetvl::compute_vsetvl_def_data): Rename m_unknow_info to + m_unknown_info. + (pre_vsetvl::cleaup): Rename to... + (pre_vsetvl::cleanup): this. + (pre_vsetvl::compute_vsetvl_def_data): Fix typos. + (pass_vsetvl::lazy_vsetvl): Update function name and fix typos. + * config/riscv/riscv.cc: Fix typos in comments. + (struct machine_function): Fix typo in comments. + (riscv_valid_lo_sum_p): Ditto. + (riscv_force_address): Ditto. + (riscv_immediate_operand_p): Ditto. + (riscv_in_small_data_p): Ditto. + (riscv_first_stack_step): Ditto. + (riscv_expand_prologue): Ditto. + (riscv_convert_vector_chunks): Ditto. + (riscv_override_options_internal): Ditto. + (get_common_costs): Ditto. + +2024-05-10 Xi Ruoyao + + PR driver/114980 + * opts-common.cc (prune_options): Move -fdiagnostics-urls= + early like -fdiagnostics-color=. + +2024-05-10 Jeff Law + + * config/riscv/bitmanip.md: Add splitter for shadd feeding another + add instruction. + +2024-05-09 Roger Sayle + + * simplify-rtx.cc (simplify_const_binary_operation): Constant + fold binary operations where the LHS is CONST_VECTOR and the + RHS is CONST_INT (or CONST_DOUBLE) such as vector shifts. + +2024-05-09 Martin Jambor + + * tree-sra.cc (sra_modify_assign): Remove the original statement + also when dealing with a store to a fully covered aggregate from a + non-candidate. + 2024-05-09 YunQiang Su * config/mips/constraints.md: Add new constraint 'w'. diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index 73da64a4ae1..70e23263719 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20240509 +20240513 diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index db414f25452..da19ddddf6c 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,399 @@ +2024-05-13 Eric Botcazou + + * accessibility.adb: Remove clauses for Exp_Ch3. + * exp_ch3.ads (Init_Proc_Level_Formal): Move declaration to... + * exp_ch3.adb (Init_Proc_Level_Formal): Move body to... + * exp_util.ads (Init_Proc_Level_Formal): ...here. + (Inside_Init_Proc): Alphabetize. + * exp_util.adb (Init_Proc_Level_Formal): ...here. + +2024-05-13 Piotr Trojanek + + * sem_util.adb (Is_Potentially_Unevaluated): Remove code for + recovering the original structure of expressions with AND THEN. + +2024-05-13 Piotr Trojanek + + * sem_attr.adb (Attribute_22): Remove Put_Image and Object_Size. + * sem_attr.ads (Attribute_Imp_Def): Restore Object_Size. + +2024-05-13 Eric Botcazou + + * exp_ch7.adb: Adjust the description of finalization management. + (Build_Finalizer): Rename scope master into master throughout. + * rtsfind.ads (RE_Id): Replace RE_Finalization_Scope_Master with + RE_Finalization_Master. + (RE_Unit_Table): Replace entry for RE_Finalization_Scope_Master with + entry for RE_Finalization_Master. + * libgnat/s-finpri.ads (Finalization_Scope_Master): Rename into... + (Finalization_Master): ...this. + (Attach_Object_To_Master): Adjust to above renaming. + (Chain_Node_To_Master): Likewise. + (Finalize_Master): Likewise. + * libgnat/s-finpri.adb (Attach_Object_To_Master): Likewise. + (Chain_Node_To_Master): Likewise. + (Finalize_Master): Likewise. + +2024-05-13 Eric Botcazou + + * libgnat/s-imaged.ads (System.Image_D): Add Uns formal parameter. + * libgnat/s-imaged.adb: Add with clauses for System.Image_I, + System.Value_I_Spec and System.Value_U_Spec. + (Uns_Spec): New instance of System.Value_U_Spec. + (Int_Spec): New instance of System.Value_I_Spec. + (Image_I): New instance of System.Image_I. + (Set_Image_Integer): New renaming. + (Set_Image_Decimal): Replace 'Image with call to Set_Image_Integer. + * libgnat/s-imde32.ads (Uns32): New subtype. + (Impl): Pass Uns32 as second actual paramter to Image_D. + * libgnat/s-imde64.ads (Uns64): New subtype. + (Impl): Pass Uns64 as second actual paramter to Image_D. + * libgnat/s-imde128.ads (Uns128): New subtype. + (Impl): Pass Uns128 as second actual paramter to Image_D. + * libgnat/s-imagef.adb (Set_Image_Fixed): Document bounds for the + A, D and AF local constants. + +2024-05-13 Piotr Trojanek + + * sem_attr.adb (Attribute_22): Add Put_Image and Object_Size. + * sem_attr.ads (Attribute_Imp_Def): Remove Object_Size. + +2024-05-13 Piotr Trojanek + + * aspects.adb (Copy_Aspects): Style fix. + * contracts.adb (Analyze_Contracts): Style fix. + (Save_Global_References_In_Contract): Remove extra guards. + * par_sco.adb (Traverse_Aspects): Move guard to the caller and + make it consistent with Save_Global_References_In_Contract. + * sem_ch12.adb (Has_Contracts): Remove extra guards. + * sem_ch3.adb (Delayed_Aspect_Present, Get_Partial_View_Aspect, + Check_Duplicate_Aspects): Likewise. + * sem_disp.adb (Check_Dispatching_Operation): Likewise. + +2024-05-13 Bob Duff + + * errout.adb (Output_Messages): Protect against the total going + negative. + +2024-05-13 Piotr Trojanek + + * contracts.adb (Append_Enabled_Item): Remove use of Split_PPC; + simplify. + * gen_il-fields.ads (Opt_Field_Enum): Remove flag definition. + * gen_il-gen-gen_nodes.adb (N_Aspect_Specification, N_Pragma): + Remove Split_PPC flags. + * gen_il-internals.adb (Image): Remove use of Split_PPC. + * par_sco.adb (Traverse_Aspects): Likewise. + * sem_ch13.adb (Make_Aitem_Pragma): Likewise. + * sem_ch6.adb (List_Inherited_Pre_Post_Aspects): Likewise. + * sem_prag.adb (Analyze_Pre_Post_Condition, Analyze_Pragma, + Find_Related_Declaration_Or_Body): Likewise. + * sem_util.adb (Applied_On_Conjunct): Likewise. + * sinfo.ads: Remove flag documentation. + * treepr.adb (Image): Remove use of Split_PPC. + +2024-05-13 Piotr Trojanek + + * exp_ch6.adb (Append_Message): Build the location string from + scratch and not rely on the one produced while splitting the + aspect into pragmas. + * exp_prag.adb (Expand_Pragma_Check): Split pre/post checks in + expansion. + * sem_ch13.adb (Analyze_Aspect_Specification): Don't split + pre/post expressions into conjuncts; don't add message with + location to the corresponding pragma. + * sem_prag.adb (Build_Pragma_Check_Equivalent): Inherited + pragmas no longer have messages that would need to be updated. + * sinput.adb (Build_Location_String): Adjust to keep previous + messages while using with inherited pragmas. + +2024-05-13 Piotr Trojanek + + * contracts.adb (Inherit_Subprogram_Contract): Fix style. + * sem_ch5.adb (Analyze_Iterator_Specification): Likewise. + +2024-05-13 Piotr Trojanek + + * sem_util.adb (Has_No_Output): Iteration with + First_Formal/Next_Formal involves Entity_Ids. + +2024-05-13 Piotr Trojanek + + * sem_prag.adb (Analyze_Pragma): When processing pragma + Lock_Free, check if restriction No_Implementation_Pragmas is + enabled. + +2024-05-13 Piotr Trojanek + + * gen_il-fields.ads (Opt_Field_Enum): + Remove Is_Expanded_Contract from the list of flags. + * gen_il-gen-gen_nodes.adb (N_Contract): Remove + Is_Expanded_Contract from the list of N_Contract fields. + * sinfo.ads (Is_Expanded_Contract): Remove comments for the flag + and its single occurrence in N_Contract. + +2024-05-13 Piotr Trojanek + + * exp_ch9.adb (Build_Protected_Subprogram_Body, + Build_Protected_Subprogram_Call_Cleanup): Reuse refactored + routine. + * sem_util.adb + (Has_Enabled_Aspect): Refactored repeated code. + (Is_Static_Function): Reuse refactored routine. + * sem_util.ads (Has_Enabled_Aspect): + New query routine refactored from repeated code. + +2024-05-13 Piotr Trojanek + + * exp_ch9.adb (Build_Protected_Subprogram_Call_Cleanup): If + aspect Exclusive_Functions is present then the cleanup of a + protected function now services queued entries, just like the + cleanup of a protected procedure. + +2024-05-13 Bob Duff + + * sem_util.ads (Append_Entity_Name): Fix comment to reflect new + semantics. The comment said, "The qualification stops at an + enclosing scope has no source name (block or loop)." There seems + to be no reason for stopping; instead, we should SKIP things with + no source name. And the "loop" part was wrong. + * sem_util.adb (Append_Entity_Name): Do not stop the recursion; + skip to next-outer scope instead. Misc cleanup/simplification. + +2024-05-13 Eric Botcazou + + * libgnat/s-finpri.adb (Finalize): Replace "master" by "collection" + in comments and add a comment about the form of the loop. + * libgnat/s-stposu.adb (Allocate_Any_Controlled): Tweak comment. + +2024-05-13 Eric Botcazou + + * Makefile.rtl (GNATRTL_NONTASKING_OBJS): Remove s-finmas$(objext). + * einfo.ads (Anonymous_Masters): Rename into Anonymous_Collections. + (Finalization_Master): Rename into Finalization_Collection. + * gen_il-fields.ads (Opt_Field_Enum): Replace Anonymous_Masters + with Anonymous_Collections; and Finalization_Master with + Finalization_Collection. + * gen_il-gen-gen_entities.adb (Access_Kind): Likewise. + (E_Function): Likewise. + (E_Procedure): Likewise. + (E_Package): Likewise. + (E_Subprogram_Body): Likewise. + * exp_ch3.adb (Build_Heap_Or_Pool_Allocator): Adjust to renamings. + (Freeze_Type): Likewise. + (Stream_Operation_OK): Remove obsolete test. + * exp_ch4.adb (Expand_Allocator_Expression): Adjust to renamings. + (Expand_N_Allocator): Likewise. + * exp_ch6.ads (BIP_Formal_Kind): Replace BIP_Finalization_Master + with BIP_Collection. + (Needs_BIP_Finalization_Master): Rename into... + (Needs_BIP_Collection): ...this. + * exp_ch6.adb (BIP_Finalization_Master_Suffix): Delete. + (BIP_Collection_Suffix): New constant string. + (Add_Finalization_Master_Actual_To_Build_In_Place_Call): Rename to + (Add_Collection_Actual_To_Build_In_Place_Call): ...this and adjust. + (BIP_Formal_Suffix): Replace BIP_Finalization_Master alternative + with BIP_Collection alternative. + (BIP_Suffix_Kind): Replace test on BIP_Finalization_Master_Suffix + with test on BIP_Collection_Suffix. + (Is_Build_In_Place_Entity): Likewise. + (Make_Build_In_Place_Call_In_Allocator): Call Needs_BIP_Collection + and Add_Collection_Actual_To_Build_In_Place_Call. + (Make_Build_In_Place_Call_In_Anonymous_Context): Likewise. + (Make_Build_In_Place_Call_In_Assignment): Likewise. + (Make_Build_In_Place_Call_In_Object_Declaration): Likewise. + (Needs_BIP_Finalization_Master): Rename into... + (Needs_BIP_Collection): ...this. + (Needs_BIP_Alloc_Form): Call Needs_BIP_Collection. + * exp_ch7.ads (Build_Anonymous_Master): Rename into... + (Build_Anonymous_Collection): ...this. + (Build_Finalization_Master): Rename into... + (Build_Finalization_Collection): ...this. + * exp_ch7.adb (Allows_Finalization_Master): Rename into... + (Allows_Finalization_Collection): ...this. + (Build_BIP_Cleanup_Stmts): Adjust to renamings. + (Build_Anonymous_Master): Rename into... + (Build_Anonymous_Collection): ...this. Adjust to renamings. + (Build_Finalization_Master): Rename into... + (Build_Finalization_Collection): ...this. Adjust to renamings. + (Build_Finalizer): Adjust comment to renamings. + * exp_ch13.adb (Expand_N_Free_Statement): Adjust to renamings. + * exp_util.adb (Build_Allocate_Deallocate_Proc): Likewise. + (Requires_Cleanup_Actions): Adjust comment to renamings. + * freeze.adb (Freeze_All): Likewise. + * rtsfind.ads (RTU_Id): Remove System_Finalization_Masters. + (RE_Id): Remove RE_Finalization_Master & RE_Finalization_Master_Ptr + add RE_Finalization_Collection & RE_Finalization_Collection_Ptr. + Adjust RE_Add_Offset_To_Address and RE_Finalization_Scope_Master. + (RE_Unit_Table): Remove entries for RE_Finalization_Master & + RE_Finalization_Master_Ptr, add ones for RE_Finalization_Collection + & RE_Finalization_Collection_Ptr. Also adjust those of + RE_Add_Offset_To_Address and RE_Finalization_Scope_Master. + * sem_ch3.adb (Access_Type_Declaration): Adjust to renamings. + * sem_ch6.adb (Create_Extra_Formals): Likewise. + * sem_util.adb (Designated_Subtype_Mark): Likewise. + * libgnat/s-finpri.ads: Add clauses for Ada.Finalization and + System.Storage_Elements. + (Finalization_Collection): New limited controlled type. + (Finalization_Collection_Ptr): Likewise. + (Initialize): New overriding procedure. + (Finalize): Likewise. + (Finalization_Started): Likewise. + (Collection_Node): New type. + (Collection_Node_Ptr): Likewise. + (Attach_Node_To_Collection): New procedure. + (Detach_Node_From_Collection): Likewise. + (Header_Size): New function. + (Add_Offset_To_Address): Likewise. + * libgnat/s-finpri.adb (Add_Offset_To_Address): New function. + (Attach_Node_To_Collection): New procedure. + (Detach_Node_From_Collection): Likewise. + (Finalization_Started): Likewise. + (Finalize): New overriding procedure. + (Header_Size): New function. + (Initialize): New overriding procedure. + * libgnat/s-spsufi.ads (Finalize_And_Deallocate): Adjust comment. + * libgnat/s-spsufi.adb: Remove clause for Finalization_Masters and + add clause for Finalization_Primitives. + (Finalize_And_Deallocate): Finalize the Collection component. + * libgnat/s-stposu.ads: Remove clause for Finalization_Masters and + add clause for Finalization_Primitives. + (Root_Subpool): Replace Master component with Collection. + (Allocate_Any_Controlled): Replace Context_Master parameter with + Context_Collection parameter. + * libgnat/s-stposu.adb: Remove clauses for Finalization_Masters and + add clauses for Finalization_Primitives. + (Address_To_FM_Node_Ptr): Delete. + (To_Collection_Node_Ptr): New instance of Ada.Unchecked_Conversion. + (Adjust_Controlled_Dereference): Adjust comment to renamings. + (Allocate_Any_Controlled): Replace Context_Master parameter with + Context_Collection parameter. Adjust to renamings. + (Deallocate_Any_Controlled): Adjust to renamings. + (Print_Subpool): Likewise. + * libgnat/s-finmas.ads: Delete. + * libgnat/s-finmas.adb: Likewise. + +2024-05-13 Ashley Gay + + * Makefile.rtl: remove i-vxinco.* from the build + * doc/gnat_rm/the_gnat_library.rst: Remove i-vxinco.ads from + the units documentation. + * impunit.adb: Remove i-vxinco from the list of available units + in GNATstudio. + * libgnarl/i-vxinco.adb: Remove. + * libgnarl/i-vxinco.ads: Ditto. + * libgnarl/s-interr__vxworks.adb: enrich comment + * libgnarl/s-vxwext__kernel.ads: fix comment + * libgnat/i-vxwork.ads: Remove deprecated interrupt connections + API, as well as an example. + * libgnat/i-vxwork__x86.ads: Ditto and add the paragma + Obscolescent to Attach_Handler + * gnat_rm.texi: Regenerate. + +2024-05-13 Eric Botcazou + + * exp_ch3.adb (Build_Heap_Or_Pool_Allocator): Use the BIPstoragepool + formal parameter to retrieve the pool in the presence of a master. + * exp_ch6.adb (Make_Build_In_Place_Call_In_Allocator): Always pass + a pool reference along with the master reference. + (Make_Build_In_Place_Call_In_Object_Declaration): Likewise. + * exp_ch7.adb (Build_BIP_Cleanup_Stmts): Use the BIPstoragepool + formal parameter to retrieve the pool in the presence of a master. + (Create_Anonymous_Master): Do not call Set_Base_Pool. + (Build_Finalization_Master): Likewise. + * rtsfind.ads (RE_Id): Remove RE_Base_Pool and RE_Set_Base_Pool. + (RE_Unit_Table): Remove associated entries. + * libgnat/s-finmas.ads: Remove clause for System.Storage_Pools. + (Any_Storage_Pool_Ptr): Delete. + (Finalization_Master): Remove Base_Pool component. + (Base_Pool): Delete. + (Set_Base_Pool): Likewise. + * libgnat/s-finmas.adb (Base_Pool): Likewise. + (Set_Base_Pool): Likewise. + (Print_Master): Do not print Base_Pool. + +2024-05-13 Eric Botcazou + + * exp_ch6.adb (Add_Unconstrained_Actuals_To_Build_In_Place_Call): + Rename Pool_Actual into Pool_Exp and use Empty as default value. + (Add_Finalization_Master_Actual_To_Build_In_Place_Call): Change the + names of the first two parameters and use a simpler code structure. + (Make_Build_In_Place_Call_In_Allocator): Rename the local variable + for the pool actual and set it to Empty if it is not used. + (Make_Build_In_Place_Call_In_Object_Declaration): Rename the local + variable for the master actual. + +2024-05-13 Eric Botcazou + + * exp_ch3.adb (Expand_N_Object_Declaration): In the case of a + return object of a BIP function that needs finalization, save + the assignment statement made to initialize it, if any. + * exp_ch6.ads (BIP_Formal_Kind): Adjust description. + * exp_ch6.adb (Make_Build_In_Place_Call_In_Allocator): Make a + couple of adjustments to the commentary. + (Needs_BIP_Alloc_Form): Also return true if the function needs + a BIP_Finalization_Master parameter. + * exp_ch7.adb (Build_BIP_Cleanup_Stmts): Remove now always true + test on Needs_BIP_Alloc_Form. + (Attach_Object_To_Master_Node): Remove duplication in comment. + +2024-05-13 Piotr Trojanek + + * sem_util.adb (Get_Index_Bounds): Guard against missing Entity, + which happens on illegal constrained type declaration. + +2024-05-13 Eric Botcazou + + * sem_attr.adb (Eval_Attribute): Treat Alignment like Component_Size + for array types. + +2024-05-13 Steve Baird + + * sem_case.adb: Replace all tests of Core_Extensions_Allowed with + corresponding tests of All_Extensions_Allowed. + * sem_ch5.adb: Likewise. + * doc/gnat_rm/gnat_language_extensions.rst: update documentation. + * gnat_rm.texi: Regenerate. + +2024-05-13 Eric Botcazou + + * sem_ch13.adb (New_Put_Image_Subprogram): In the nondeferred case + coming from an aspect and for a type with delaying freezing, also + freeze the subprogram immediately. + +2024-05-13 Piotr Trojanek + + * libgnat/a-direct.adb (Start_Search_Internal): Combine subtype + and object declaration. + * libgnat/g-dirope.adb (Read): Replace convoluted unchecked + conversion with an overlay. + +2024-05-13 Piotr Trojanek + + * libgnat/g-dirope.adb (Read): Use null-excluding, + access-to-constant type; replace element-by-element copy with + array assignments. + +2024-05-13 Gary Dismukes + + * exp_aggr.adb (Expand_Container_Aggregate): Move determination of + whether the aggregate is an indexed aggregate earlier in the + procedure. Test Is_Indexed_Aggregate as a criterion for generating + a call to the container type's New_Indexed function, add proper + computation of bounds to pass in to the function, and remove later + code for generating such a call. Add and improve comments. + (Aggregate_Size): Remove special treatment of case where there is + exactly one component association, and instead loop over all + component associations to determine whether any of them have a + nonstatic length. If there is at least one such nonstatic + association, return -1. + (Build_Siz_Exp): Accumulate a sum of the sizes of each of the + component associations in Siz_Exp (which will only be used if + there any associations that are of Nkind + N_Iterated_Component_Association with a nonstatic range). + (Expand_Range_Component): Fix typos in the procedure's spec + comment and block comment. + 2024-05-07 Piotr Trojanek * sem_util.adb (Number_Of_Elements_In_Array): Fix counting of diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 616b1f73cb3..a9f54d8f14a 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,105 @@ +2024-05-11 Ken Matsui + + * cp-trait.def: Define __is_nothrow_invocable. + * constraint.cc (diagnose_trait_expr): Handle + CPTK_IS_NOTHROW_INVOCABLE. + * semantics.cc (trait_expr_value): Likewise. + (finish_trait_expr): Likewise. + +2024-05-11 Ken Matsui + + * cp-trait.def: Define __is_invocable. + * constraint.cc (diagnose_trait_expr): Handle CPTK_IS_INVOCABLE. + * semantics.cc (trait_expr_value): Likewise. + (finish_trait_expr): Likewise. + * cp-tree.h (build_invoke): New function. + * method.cc (build_invoke): New function. + +2024-05-11 Ken Matsui + + * cp-trait.def: Define __array_rank. + * constraint.cc (diagnose_trait_expr): Handle CPTK_RANK. + * semantics.cc (trait_expr_value): Likewise. + (finish_trait_expr): Likewise. + +2024-05-11 Ken Matsui + + * cp-trait.def: Define __decay. + * semantics.cc (finish_trait_type): Handle CPTK_DECAY. + +2024-05-11 Ken Matsui + + * cp-trait.def: Define __add_rvalue_reference. + * semantics.cc (finish_trait_type): Handle + CPTK_ADD_RVALUE_REFERENCE. + +2024-05-11 Ken Matsui + + * cp-trait.def: Define __add_lvalue_reference. + * semantics.cc (finish_trait_type): Handle + CPTK_ADD_LVALUE_REFERENCE. + +2024-05-11 Ken Matsui + + * cp-trait.def: Define __remove_all_extents. + * semantics.cc (finish_trait_type): Handle + CPTK_REMOVE_ALL_EXTENTS. + +2024-05-11 Ken Matsui + + * cp-trait.def: Define __remove_extent. + * semantics.cc (finish_trait_type): Handle CPTK_REMOVE_EXTENT. + +2024-05-11 Ken Matsui + + * cp-trait.def: Define __add_pointer. + * semantics.cc (finish_trait_type): Handle CPTK_ADD_POINTER. + (object_type_p): New function. + (referenceable_type_p): Likewise. + (trait_expr_value): Use object_type_p. + +2024-05-11 Ken Matsui + + * cp-trait.def: Define __is_unbounded_array. + * constraint.cc (diagnose_trait_expr): Handle + CPTK_IS_UNBOUNDED_ARRAY. + * semantics.cc (trait_expr_value): Likewise. + (finish_trait_expr): Likewise. + +2024-05-10 Jakub Jelinek + + PR target/114968 + * cp-tree.h (atexit_fn_ptr_type_node, cleanup_type): Adjust macro + comments. + (get_cxa_atexit_fn_ptr_type): Declare. + * decl.cc (get_atexit_fn_ptr_type): Adjust function comment, only + build type for atexit argument. + (get_cxa_atexit_fn_ptr_type): New function. + (get_atexit_node): Call get_cxa_atexit_fn_ptr_type rather than + get_atexit_fn_ptr_type when using __cxa_atexit. + (get_thread_atexit_node): Call get_cxa_atexit_fn_ptr_type + rather than get_atexit_fn_ptr_type. + (start_cleanup_fn): Add ob_parm argument, call + get_cxa_atexit_fn_ptr_type or get_atexit_fn_ptr_type depending + on it and create PARM_DECL also based on that argument. + (register_dtor_fn): Adjust start_cleanup_fn caller, use + get_cxa_atexit_fn_ptr_type rather than get_atexit_fn_ptr_type + for use_dtor casts. + * except.cc (build_throw): Use get_cxa_atexit_fn_ptr_type (). + +2024-05-09 Marek Polacek + + PR c++/114983 + * pt.cc (tsubst_expr) : Use copy_warning. + * semantics.cc (finish_parenthesized_expr): Also suppress + -Wsizeof-array-div. + +2024-05-09 Marek Polacek + + PR c++/85889 + * lambda.cc (add_capture): Add a pedwarn for capturing structured + bindings. + 2024-05-08 Marek Polacek PR c++/113582 diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 242df7ead8b..fbaee11d262 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,57 @@ +2024-05-13 Paul Thomas + + PR fortran/113363 + * trans-array.cc (gfc_array_init_size): Use the expr3 dtype so + that the correct element size is used. + * trans-expr.cc (gfc_conv_procedure_call): Remove restriction + that ss and ss->loop be present for the finalization of class + array function results. + (trans_class_assignment): Use free and malloc, rather than + realloc, for character expressions assigned to unlimited poly + entities. + * trans-stmt.cc (gfc_trans_allocate): Build a correct rhs for + the assignment of an unlimited polymorphic 'source'. + +2024-05-12 Harald Anlauf + + * primary.cc (gfc_match_varspec): Replace 'ref' argument to + is_inquiry_ref() by NULL when the result is not needed to avoid + a memleak. + +2024-05-12 Paul Thomas + + PR fortran/84006 + PR fortran/100027 + PR fortran/98534 + * iresolve.cc (gfc_resolve_transfer): Emit a TODO error for + unlimited polymorphic mold. + * trans-expr.cc (gfc_resize_class_size_with_len): Use the fold + even if a block is not available in which to fix the result. + (trans_class_assignment): Enable correct assignment of + character expressions to unlimited polymorphic variables using + lhs _len field and rse string_length. + * trans-intrinsic.cc (gfc_conv_intrinsic_storage_size): Extract + the class expression so that the unlimited polymorphic class + expression can be used in gfc_resize_class_size_with_len to + obtain the storage size for character payloads. Guard the use + of GFC_DECL_SAVED_DESCRIPTOR by testing for DECL_LANG_SPECIFIC + to prevent the ICE. Also, invert the order to use the class + expression extracted from the argument. + (gfc_conv_intrinsic_transfer): In same way as 'storage_size', + use the _len field to obtaining the correct length for arg 1. + Add a branch for the element size in bytes of class expressions + with provision to make use of the unlimited polymorphic _len + field. Again, the class references are explicitly identified. + 'mold_expr' was already declared. Use it instead of 'arg'. Do + not fix 'dest_word_len' for deferred character sources because + reallocation on assign makes use of it before it is assigned. + +2024-05-11 Harald Anlauf + + PR fortran/115039 + * expr.cc (gfc_traverse_expr): An inquiry ref does not constitute + a dependency and cannot collide with a symbol. + 2024-05-05 Harald Anlauf PR fortran/114827 diff --git a/gcc/m2/ChangeLog b/gcc/m2/ChangeLog index d8b5c970c34..a95f5324e02 100644 --- a/gcc/m2/ChangeLog +++ b/gcc/m2/ChangeLog @@ -1,3 +1,9 @@ +2024-05-09 Gaius Mulley + + PR modula2/115003 + * gm2-compiler/SymbolTable.mod (GetScope): Add UndefinedSym + case clause and return NulSym. + 2024-05-03 Gaius Mulley PR modula2/114929 diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 9f87260fa17..62655d5399d 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,176 @@ +2024-05-13 Paul Thomas + + PR fortran/113363 + * gfortran.dg/pr113363.f90: New test. + +2024-05-13 YunQiang Su + + Revert: + 2024-05-13 YunQiang Su + + * gcc.target/mips/msa-inline-asm.c: New test. + +2024-05-12 Roger Sayle + Kyrill Tkachov + Roger Sayle + Kyrill Tkachov + + * gcc.target/arm/extend-ror.c: New test. + +2024-05-12 Jeff Law + + * gcc.target/riscv/synthesis-5.c: New test. + +2024-05-12 Jeff Law + + * gcc.target/riscv/synthesis-4.c: New test + +2024-05-12 Paul Thomas + + PR fortran/84006 + PR fortran/100027 + PR fortran/98534 + * gfortran.dg/storage_size_7.f90: New test. + * gfortran.dg/transfer_class_4.f90: New test. + +2024-05-11 Harald Anlauf + + PR fortran/115039 + * gfortran.dg/statement_function_5.f90: New test. + +2024-05-11 Mark Harmstone + + * gcc.dg/debug/codeview/codeview-1.c: New test. + * gcc.dg/debug/codeview/codeview.exp: New testsuite driver. + +2024-05-11 dzhao.ampere + + PR tree-optimization/114760 + * gcc.dg/tree-ssa/pr114760-1.c: New test. + * gcc.dg/tree-ssa/pr114760-2.c: New test. + +2024-05-11 Ken Matsui + + * g++.dg/ext/has-builtin-1.C: Test existence of + __is_nothrow_invocable. + * g++.dg/ext/is_nothrow_invocable.C: New test. + +2024-05-11 Ken Matsui + + * g++.dg/ext/has-builtin-1.C: Test existence of __is_invocable. + * g++.dg/ext/is_invocable1.C: New test. + * g++.dg/ext/is_invocable2.C: New test. + * g++.dg/ext/is_invocable3.C: New test. + * g++.dg/ext/is_invocable4.C: New test. + +2024-05-11 Ken Matsui + + * g++.dg/ext/has-builtin-1.C: Test existence of __array_rank. + * g++.dg/ext/rank.C: New test. + +2024-05-11 Ken Matsui + + * g++.dg/ext/has-builtin-1.C: Test existence of __decay. + * g++.dg/ext/decay.C: New test. + +2024-05-11 Ken Matsui + + * g++.dg/ext/has-builtin-1.C: Test existence of + __add_rvalue_reference. + * g++.dg/ext/add_rvalue_reference.C: New test. + +2024-05-11 Ken Matsui + + * g++.dg/ext/has-builtin-1.C: Test existence of + __add_lvalue_reference. + * g++.dg/ext/add_lvalue_reference.C: New test. + +2024-05-11 Ken Matsui + + * g++.dg/ext/has-builtin-1.C: Test existence of + __remove_all_extents. + * g++.dg/ext/remove_all_extents.C: New test. + +2024-05-11 Ken Matsui + + * g++.dg/ext/has-builtin-1.C: Test existence of __remove_extent. + * g++.dg/ext/remove_extent.C: New test. + +2024-05-11 Ken Matsui + + * g++.dg/ext/has-builtin-1.C: Test existence of __add_pointer. + * g++.dg/ext/add_pointer.C: New test. + +2024-05-11 Ken Matsui + + * g++.dg/ext/has-builtin-1.C: Test existence of + __is_unbounded_array. + * g++.dg/ext/is_unbounded_array.C: New test. + +2024-05-10 Jeff Law + + * gcc.target/riscv/synthesis-1.c: Also count shNadd instructions. + * gcc.target/riscv/synthesis-3.c: New test. + +2024-05-10 Roger Sayle + Hongtao Liu + + * gcc.target/i386/vect-shiftv4qi.c: Specify -mno-avx512vl. + * gcc.target/i386/vect-shiftv8qi.c: Likewise. + * gcc.target/i386/vect-shiftv4qi-2.c: New test case. + * gcc.target/i386/vect-shiftv8qi-2.c: Likewise. + +2024-05-10 Vladimir N. Makarov + + PR target/114942 + * gcc.target/i386/pr114942.c: New. + +2024-05-10 Richard Biener + + PR tree-optimization/114998 + * gcc.dg/torture/pr114998.c: New testcase. + +2024-05-10 Richard Biener + + * gcc.dg/vect/vect-reduc-sad-9.c: New testcase. + +2024-05-10 Georg-Johann Lay + + PR target/114981 + * gcc.target/avr/pr114981-powif.c: New test. + +2024-05-10 Jeff Law + + * gcc.target/riscv/zba-shadduw.c: New test. + +2024-05-09 Marek Polacek + + PR c++/114983 + * g++.dg/warn/Wsizeof-array-div3.C: New test. + +2024-05-09 Jakub Jelinek + + PR target/84508 + * gcc.target/i386/pr84508-1.c: Move to ... + * gcc.dg/ubsan/pr84508-1.c: ... here. Restrict to i?86/x86_64 + non-ia32 targets. + * gcc.target/i386/pr84508-2.c: Move to ... + * gcc.dg/ubsan/pr84508-2.c: ... here. Restrict to i?86/x86_64 + non-ia32 targets. + +2024-05-09 Marek Polacek + + PR c++/85889 + * g++.dg/cpp2a/decomp3.C: Use -Wno-c++20-extensions. + * g++.dg/cpp1z/decomp60.C: New test. + +2024-05-09 Martin Jambor + + * g++.dg/tree-ssa/pr109849.C: Also check that the aggeegate store + to cur disappears. + * gcc.dg/tree-ssa/ssa-dse-26.c: Instead of relying on DSE, + check that the unwanted stores were removed at early SRA time. + 2024-05-09 Pan Li * gcc.target/riscv/rvv/autovec/vls-vlmax/full-vec-move1.c: diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog index b41b8f0186b..0897d7f7db4 100644 --- a/libgcc/ChangeLog +++ b/libgcc/ChangeLog @@ -1,3 +1,11 @@ +2024-05-10 Georg-Johann Lay + + PR target/114981 + * config/avr/t-avr (LIB2FUNCS_EXCLUDE): Add _powisf2. + (LIB1ASMFUNCS) [!avrtiny]: Add _powif. + * config/avr/lib1funcs.S (mov4): New .macro. + (L_powif, __powisf2) [!avrtiny]: New module and function. + 2024-05-07 Zac Walker * config.host: Add aarch64-w64-mingw32 target. Adjust targets