From: GCC Administrator Date: Sat, 20 Sep 2025 00:20:23 +0000 (+0000) Subject: Daily bump. X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=dcc231417fcb24f90ad2563c47edee04326426a1;p=thirdparty%2Fgcc.git Daily bump. --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 2dcca83ff42..fe02fbfd02d 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,148 @@ +2025-09-19 Alexandre Oliva + + * ira.cc (setup_reg_equiv): Retain function invariant + equivalences. + +2025-09-19 Andrew Pinski + + * tree-ssa-forwprop.cc (optimize_aggr_zeroprop): Take gimple* + instead of iterator. + (optimize_agr_copyprop): Likewise. + (simplify_builtin_call): Update call to optimize_aggr_zeroprop. + (pass_forwprop::execute): Update calls to optimize_aggr_zeroprop + and optimize_agr_copyprop. + +2025-09-19 Andrew Pinski + + * tree-ssa-forwprop.cc (optimize_aggr_zeroprop_1): Change return type + to void. + (optimize_aggr_zeroprop): Likewise. + (optimize_agr_copyprop_1): Likewise. + (optimize_agr_copyprop_arg): Likewise. + (optimize_agr_copyprop): Likewise. + (simplify_builtin_call): Handle update of the return type + of optimize_aggr_zeroprop. + (pass_forwprop::execute): Likewise and optimize_agr_copyprop. + +2025-09-19 Michael Eager + + PR target/118280 + * config/microblaze/iterators.md: New. + * config/microblaze/microblaze-protos.h: Add + microblaze_subword_address. + * config/microblaze/microblaze.cc: Ditto. + * config/microblaze/microblaze.md: constants: Add UNSPECV_CAS_BOOL, + UNSPECV_CAS_MEM, UNSPECV_CAS_VAL, UNSPECV_ATOMIC_FETCH_OP + type: add atomic + * config/microblaze/sync.md: Add atomic_fetch_si + atomic_test_and_set + +2025-09-19 Jan Hubicka + + * ipa-fnsummary.cc (estimate_edge_devirt_benefit): Handle speculative + edges correctly. + (estimate_edge_size_and_time): Even when not collecting hints, + devirtualization affects function size. + (estimate_calls_size_and_time): Do not use tables when devirtualization + is possible. + +2025-09-19 Jan Hubicka + + * cgraph.cc (cgraph_edge::make_direct): Do not ICE when there are + multiple speculations to comptaible targets + (cgraph_edge::combined_sreal_frequency): New member function. + * cgraph.h (cgraph_edge::combined_sreal_frequency): Declare. + * ipa-cp.cc (devirtualization_time_bonus): Return sreal; consider + profile. + (estimate_local_effects): Likewise. + +2025-09-19 Gaius Mulley + + PR modula2/121856 + * doc/gm2.texi (Compiler options): New item -fwideset. + +2025-09-19 Jeff Law + + PR target/121983 + * config/riscv/riscv.cc (riscv_macro_fusion_pair_p): Make sure + object is a REG before asking for its REGNO. Fix a trivial + whitespace nit. + +2025-09-19 Raphael Moreira Zinsly + + * config/riscv/riscv-v.cc + (shuffle_slide_patterns): Cover more permutations. + +2025-09-19 Jim Lin + + * config/riscv/riscv.cc (riscv_compute_frame_info): Remove the + dedicated calculation for RVE. + +2025-09-19 Jeff Law + + * config.gcc (riscv*); Add riscv-bclr-lowest-set-bit.o to extra_objs. + * config/riscv/riscv-bclr-lowest-set-bit.cc: New file. + * config/riscv/riscv-passes.def: Add new pass after combine. + * config/riscv/riscv-protos.h (make_pass_bclr_lowest_set_bit): Add + prototype. + * config/riscv/t-riscv: Add rules to build riscv-bclr-lowest-set-bit.o. + +2025-09-19 Richard Biener + + * tree-ssa-pre.cc (compute_antic_aux): Remove dead code. + +2025-09-19 Richard Biener + + * tree-vectorizer.h (_stmt_vec_info::store_count): Remove. + (DR_GROUP_STORE_COUNT): Likewise. + * tree-vect-stmts.cc (vect_transform_stmt): Remove non-SLP + path. + +2025-09-19 Richard Biener + + * tree-vectorizer.h (vect_get_num_copies): Remove unused + overload. Remove defaulted vectype argument and always + use the vector type of the SLP node. + * tree-vect-loop.cc (vect_reduction_update_partial_vector_usage): + Adjust. + (vectorizable_lane_reducing): Likewise. + (vect_transform_reduction): Likewise. + (vectorizable_nonlinear_induction): Likewise. + * tree-vect-stmts.cc (check_load_store_for_partial_vectors): + Likewise. + +2025-09-19 Richard Biener + + * tree-vectorizer.h (_slp_tree::vec_stmts_size): Remove. + (SLP_TREE_NUMBER_OF_VEC_STMTS): Likewise. + * tree-vect-loop.cc (vectorizable_reduction): Adjust. + (vect_transform_cycle_phi): Likewise. + (vect_transform_lc_phi): Likewise. + (vectorizable_recurr): Likewise. + (vectorizable_induction): Likewise. + (vectorizable_live_operation): Likewise. + * tree-vect-slp.cc (_slp_tree::_slp_tree): Do not set + SLP_TREE_NUMBER_OF_VEC_STMTS. + (vect_slp_analyze_node_operations_1): Likewise. + (vect_slp_analyze_node_operations): Likewise. + (vect_prologue_cost_for_slp): Adjust. + (vect_create_constant_vectors): Likewise. + (vect_get_slp_vect_def): Likewise. + (vect_transform_slp_perm_load_1): Likewise. + (vectorizable_slp_permutation_1): Likewise. + (vect_schedule_slp_node): Likewise. + (vectorize_slp_instance_root_stmt): Likewise. + * tree-vect-stmts.cc (vect_model_simple_cost): Likewise. + (vectorizable_bswap): Likewise. + (vectorizable_call): Likewise. + (vectorizable_conversion): Likewise. + (vectorizable_shift): Likewise. + (vectorizable_operation): Likewise. + (vectorizable_store): Likewise. + (vectorizable_load): Likewise. + (vectorizable_condition): Likewise. + (vectorizable_early_exit): Likewise. + 2025-09-18 David Malcolm * diagnostics/client-data-hooks.h (client_data_hooks::dump): New. diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index f340dc5a333..2ca53ee45db 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20250919 +20250920 diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 379816ed6be..084349c3886 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,228 @@ +2025-09-19 Eric Botcazou + + * gcc-interface/gigi.h (create_var_decl): Add LINKONCE_FLAG boolean + parameter. + (create_subprog_decl): Likewise. + * gcc-interface/decl.cc (gnat_to_gnu_entity): Adjust calls to + create_var_decl and create_subprog_decl. + (elaborate_expression_1): Likewise. + * gcc-interface/trans.cc (gigi): Likewise. + (build_raise_check): Likewise. + (Subprogram_Body_to_gnu): Likewise. + (create_temporary): Likewise. + (Exception_Handler_to_gnu): Likewise. + (Compilation_Unit_to_gnu): Likewise. + (gnat_to_gnu): Likewise. + (use_alias_for_thunk_p): Return false for a one-only target. + * gcc-interface/utils.cc (maybe_pad_type): Adjust call to + create_var_decl. + (create_var_decl): Add LINKONCE_FLAG boolean parameter. + (create_subprog_decl): Likewise. + +2025-09-19 Marc Poulhiès + + * gcc-interface/ada-tree.h (TYPE_EXTENDED_POINTER_P): New. + (TYPE_IS_EXTENDED_POINTER_P): New. + (TYPE_EXTENDED_UNCONSTRAINED_ARRAY): New. + (SET_TYPE_EXTENDED_UNCONSTRAINED_ARRAY): New. + (TYPE_DUMMY_EXT_POINTER_TO): New. + (SET_TYPE_DUMMY_EXT_POINTER_TO): New. + * gcc-interface/decl.cc (get_extended_unconstrained_array): New. + (gnat_to_gnu_entity): Handle extended access type. + (get_unpadded_extended_type): New. + (gnat_to_gnu_component_type): Handle extended access type. + (build_template_type): New. + (gnat_to_gnu_field): Handle extended access type. + (validate_size): Likewise. + (set_rm_size): Likewise. + (copy_and_substitute_in_layout): Likewise. + (rm_size): Likewise. + * gcc-interface/gigi.h (get_unpadded_extended_type): New. + (build_template_type): New. + (build_dummy_unc_pointer_types_ext): New. + (finish_extended_pointer_type): New. + (build_unc_object_type_from_ptr): Rename first parameter. + * gcc-interface/misc.cc (gnat_print_type): Handle extended access type. + * gcc-interface/trans.cc (Identifier_to_gnu): Likewise. + (Attribute_to_gnu): Likewise. + (gnat_to_gnu): Likewise. + * gcc-interface/utils.cc (convert_to_fat_pointer): Assert if converting an + extended pointer. + (build_dummy_unc_pointer_types_ext): New. + (finish_extended_pointer_type): New. + (finish_record_type): Handle extended access type. + (build_unc_object_type_from_ptr): Likewise. + (convert_to_extended_pointer): New. + (convert): Handle extended access type. + (gnat_pushdecl): Likewise. + (maybe_pad_type): Likewise. + * gcc-interface/utils2.cc (build_unary_op): Likewise. + (build_binary_op): Likewise. + (build_allocator): Likewise. + (gnat_save_expr): Likewise. + (gnat_protect_expr): Likewise. + (gnat_stabilize_reference_1): Likewise. + +2025-09-19 Eric Botcazou + + * sem_ch4.adb (Analyze_Selected_Component): Bail out if the prefix + has Void_Type. + +2025-09-19 Piotr Trojanek + + * sem_ch4.adb (Analyze_User_Defined_Binary_Op): Remove declare block. + +2025-09-19 Eric Botcazou + + * doc/gnat_rm/gnat_language_extensions.rst (Structural Generic + Instantiation): New entry + * einfo.ads (Is_Link_Once): New flag defined in entities. + * sinfo.ads (Is_Structural): New flag defined in instantiations. + * gen_il-fields.ads (Opt_Field_Enum): Add Is_Link_Once and + Is_Structural. + * gen_il-gen-gen_entities.adb (Entity_Kind): Add Is_Link_Once + semantic flag. + * gen_il-gen-gen_nodes.adb (N_Generic_Instantiation): Move up + Parent_Spec field and add Is_Structural semantic flag. + * frontend.adb: Add with clause for Sem_Ch12. + (Frontend): After analysis is complete and bodies are instantiated, + call Sem_Ch12.Mark_Link_Once on the declarations of the main unit. + * par.adb (P_Qualified_Simple_Name): Delete. + (P_Qualified_Simple_Name_Resync): Likewise + (P_Exception_Name): New function declaration. + (P_Label_Name): Likewise. + (P_Loop_Name): Likewise. + (P_Generic_Unit_Name): Likewise. + (P_Library_Unit_Name): Likewise. + (P_Package_Name): Likewise. + (P_Parent_Unit_Name): Likewise. + (P_Subtype_Name): Likewise. + (P_Subtype_Name_Resync): Likewise. + * par-ch3.adb (P_Subtype_Mark_Resync): Replace call to + P_Qualified_Simple_Name_Resync by P_Subtype_Name_Resync. + (P_Identifier_Declarations): Replace call to + P_Qualified_Simple_Name_Resync by P_Exception_Name. + (P_Derived_Type_Def_Or_Private_Ext_Decl): Replace call to + P_Qualified_Simple_Name by P_Subtype_Name. + (P_Interface_Type_Definition): Replace calls to + P_Qualified_Simple_Name by P_Subtype_Name. + * par-ch4.adb (P_Reduction_Attribute_Reference): Move around and + change name of parameter. + (P_Name): Document new grammar rule and make a couple of tweaks. + (P_Exception_Name): New function. + (P_Label_Name): Likewise. + (P_Loop_Name): Likewise. + (P_Generic_Unit_Name): Likewise. + (P_Library_Unit_Name): Likewise. + (P_Package_Name): Likewise. + (P_Parent_Unit_Name): Likewise. + (P_Subtype_Name): Likewise. + (P_Subtype_Name_Resync): Likewise. + (P_Qualified_Simple_Name): Rename into... + (P_Simple_Name): ...this. + (P_Qualified_Simple_Name_Resync): Rename into... + (P_Simple_Name_Resync): ...this. Accept left parenthesis and + dot as name extensions. + (P_Allocator): Replace call to P_Qualified_Simple_Name_Resync + by P_Subtype_Name_Resync. + * par-ch5.adb (P_Goto_Statement): Replace call to + P_Qualified_Simple_Name by P_Label_Name. + (Parse_Loop_Flow_Statement): Replace call to + P_Qualified_Simple_Name by P_Loop_Name. + * par-ch6.adb (P_Subprogram): Replace call to + P_Qualified_Simple_Name by P_Generic_Unit_Name. + * par-ch7.adb (P_Package): Replace calls to + P_Qualified_Simple_Name by P_Package_Name and P_Generic_Unit_Name. + * par-ch8.adb (P_Use_Package_Clause): Replace calls to + P_Qualified_Simple_Name by P_Package_Name. + * par-ch9.adb (P_Task): Replace call to + P_Qualified_Simple_Name by P_Subtype_Name. + (P_Protected): Likewise. + * par-ch10.adb (P_Context_Clause): Replace call to + P_Qualified_Simple_Name by P_Library_Unit_Name. + (P_Subunit): Replace call to P_Qualified_Simple_Name by + P_Parent_Unit_Name. + * par-ch12.adb (P_Generic): Replace call to + P_Qualified_Simple_Name by P_Generic_Unit_Name. + (P_Formal_Derived_Type_Definition): Replace call to + P_Qualified_Simple_Name by P_Subtype_Name. + (P_Formal_Package_Declaration): Replace call to + P_Qualified_Simple_Name by P_Generic_Unit_Name. + * sem_ch4.adb: Add with and use clauses for Sem_Ch12. + (Analyze_Call): Accept implicit instantiations with -gnatX0. + (Analyze_Indexed_Component_Form): Likewise. + * sem_ch8.adb (Analyze_Use_Package): Add guard before inserting + a with clause automatically when there is a use clause. + (Check_In_Previous_With_Clause): Retrieve original names. + (Check_Library_Unit_Renaming): Deal with structural instances. + (End_Use_Type): Minor tweak. + * sem_ch10.adb (Analyze_With_Clause): Remove useless test and + call Defining_Entity_Of_Instance. + * sem_ch12.ads (Build_Structural_Instantiation): New function. + (Mark_Link_Once): New procedure. + * sem_ch12.adb: Add with and use clauses for Exp_Dbug. + (Analyze_Associations): Add support for structural instantiations. + (Analyze_Package_Instantiation): Likewise. + (Analyze_Subprogram_Instantiation): Likewise. + (Analyze_Structural_Associations): New procedure. + (Need_Subprogram_Instance_Body): Return True for instantiation is + in the auxiliary declarations of the main unit. + (Build_Structural_Instantiation): New function. + (Mark_Link_Once): New procedure. + * sem_util.ads (Add_Local_Declaration): New procedure. + (Defining_Entity_Of_Instance): New function. + * sem_util.adb (Add_Local_Declaration): New procedure. + (Defining_Entity_Of_Instance): New function. + * gnat_rm.texi: Regenerate. + * gnat_ugn.texi: Regenerate. + +2025-09-19 Ronan Desplanques + + * aspects.ads: Fix comment. + +2025-09-19 Ronan Desplanques + + * aspects.ads: Remove comment. + +2025-09-19 Marc Poulhiès + + * libgnat/s-putima.ads (Ext_Access_Pointer): New. + (Put_Image_Extended_Access_Pointer): New. + * libgnat/s-putima.adb (Ext_Acc_Instance): New. + (Put_Image_Extended_Access_Pointer): New. + * rtsfind.ads (RE_Id, RE_Unit_Table): Set value for + RE_Put_Image_Extended_Access_Pointer. + * exp_put_image.adb (Build_Elementary_Put_Image_Call): Handle extended + access. + +2025-09-19 Marc Poulhiès + + * fe.h (Is_Extended_Access_Type): Add C bindings. + * sem_util.ads (Is_Extended_Access_Type): Add comment that any + change to the function must take care of the C binding. + +2025-09-19 Marc Poulhiès + + * layout.adb (Layout_Type): Adjust comment and code extended + accesses. + +2025-09-19 Ronan Desplanques + + * sem_ch3.adb (Add_Tag): Remove superfluous statements. + +2025-09-19 Steve Baird + + * exp_attr.adb (Interunit_Ref_OK): Treat a subunit like a body. + (Build_And_Insert_Type_Attr_Subp): When climbing up the + tree, go from an N_Subunit node to its stub (instead of to the + subunit's N_Compilation_Unit node). + +2025-09-19 Gary Dismukes + + * sem_attr.adb (Eval_Attribute): In the case of a VADS-specific + size attribute, only fold to the object size when the Esize field + is known. + 2025-09-16 Ronan Desplanques * exp_strm.ads (Get_Primitives): New function. diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index e142d8158b6..cb6b5a09dd6 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,10 @@ +2025-09-19 Paul Thomas + + PR fortran/83746 + * trans-array.cc (structure_alloc_comps): Add the pre and post + blocks to 'fnblock' for all the evaluations of parameterized + expressions in PDT component allocatation. + 2025-09-18 Paul Thomas PR fortran/114815 diff --git a/gcc/m2/ChangeLog b/gcc/m2/ChangeLog index f63381dd620..c13de980a90 100644 --- a/gcc/m2/ChangeLog +++ b/gcc/m2/ChangeLog @@ -1,3 +1,338 @@ +2025-09-19 Gaius Mulley + + PR modula2/121856 + * Make-lang.in (GM2-LIBS-BOOT-DEFS): Add M2Diagnostic.def. + Add Selective.def. + (GM2-LIBS-BOOT-MODS): Add M2Diagnostic.mod. + (GM2-LIBS-BOOT-C): Add Selective.c. + (GM2-LIBS-DEFS): Add Selective.def. + (GM2-LIBS-MODS): Add M2Diagnostic.mod. + (MC-LIB-MODS): Add M2Diagnostic.mod. + (m2/gm2-libs-boot/Selective.o): New rule. + (BUILD-PGE-O): Add m2/pge-boot/GM2Diagnostic.o. + Add m2/pge-boot/GM2Diagnostic.o. + Add m2/pge-boot/GStringConvert.o. + Add m2/pge-boot/Gdtoa.o. + Add m2/pge-boot/Gldtoa.o. + * Make-maintainer.in (PPG-LIB-DEFS): Add M2Diagnostic.def. + Add StringConvert.def. + (PPG-LIB-MODS): Add M2Diagnostic.mod. + Add StringConvert.mod. + (PGE-DEF): Add M2Diagnostic.def. + (PGE-DEPS): Add GM2Diagnostic.cc. + Add GM2Diagnostic.h. + * gm2-compiler/FifoQueue.def (PutSetIntoFifoQueue): New + procedure. + (GetSetFromFifoQueue): New procedure function. + * gm2-compiler/FifoQueue.mod (PutSetIntoFifoQueue): New + procedure. + (GetSetFromFifoQueue): New procedure function. + * gm2-compiler/M2ALU.def (KillValue): New procedure. + (PushSetTree): Rename parameter t to value. + (ConstructSetConstant): Rewrite comment. + * gm2-compiler/M2ALU.mod: Rewrite to use the new set type + and introduce memory diagnostics. + * gm2-compiler/M2Base.mod (InitBaseProcedures): Lookup M2WIDESET. + * gm2-compiler/M2CaseList.mod (CheckCaseBoundsResolved): Change + format specifier to allow the preceeding indefinite article to + have a n concatenated providing the following string substitute + begins with a vowel. + (checkTypes): Ditto. + * gm2-compiler/M2Check.mod (checkGenericUnboundedTyped): New + procedure function. + * gm2-compiler/M2Code.mod (OptimizationAnalysis): Replace with ... + (ResourceAnalysis): ... this. + * gm2-compiler/M2Comp.mod (PopulateResource): New procedure. + (compile): Call PopulateResource. + Call M2Diagnostic.Generate. + * gm2-compiler/M2GCCDeclare.mod: Rewrite for new set type. + * gm2-compiler/M2GenGCC.mod: Rewrite implementation for + becomes, incl, excl, and, or, not, xor for the new set type. + * gm2-compiler/M2MetaError.def: Extend comment documenting + the v format specifier. + * gm2-compiler/M2MetaError.mod (errorBlock): New field vowel. + (initErrorBlock): Initialize field vowel. + Reformat comments. + (pop): Call checkVowel. + (checkVowel): New procedure. + (isVowel): New procedure function. + (symDesc): Remove indefinite article. + (op): Set vowel field in case clause. + * gm2-compiler/M2Options.def (OptimizeSets): New global. + (TimeReport): Ditto. + (MemReport): Ditto. + (SetMemReport): New procedure. + (SetTimeReport): Ditto. + (SetWideset): Ditto. + (GetWideset): New procedure function. + * gm2-compiler/M2Options.mod (SetOptimizing): Assign + OptimizeSets depending upon the optimization level. + (SetMemReport): New procedure. + (SetTimeReport): Ditto. + (SetWideset): Ditto. + (GetWideset): New procedure function. + (OptimizeSets): Initialize to FALSE. + (TimeReport): Ditto. + (MemReport): Ditto. + * gm2-compiler/M2Quads.mod (M2Diagnostic): Import. + (QuadsMemDiag): New global variable. + (NewQuad): Bump QuadsMemDiag whenever a quad is allocated. + (BuildAssignmentBoolean): New procedure. + (doBuildAssignment): Ditto. + Add v to the format specifier. + (CheckCompatibleWithBecomes): Add v to the format specifier. + (CheckProcTypeAndProcedure): Ditto. + (BuildAddAdrFunction): Ditto. + (BuildSubAdrFunction): Ditto. + (BuildDifAdrFunction): Ditto. + (BuildDesignatorArrayStaticDynamic): Ditto. + (BuildDesignatorPointer): Ditto. + (CheckVariableOrConstantOrProcedure): Ditto. + (Init): Initialize QuadsMemDiag. + * gm2-compiler/M2Range.mod (CodeTypeAssign): Add v to the + format specifier. + * gm2-compiler/M2Scaffold.mod (DeclareScaffoldFunctions): + Generate more precise warning note. + * gm2-compiler/M2SymInit.mod (PrintSymInit): Add record + field warning. + * gm2-compiler/M2System.mod + (IsPseudoSystemFunctionConstExpression): Add TBitSize. + * gm2-compiler/NameKey.mod: Add MemDiagnostic code + commented out. + * gm2-compiler/P1SymBuild.mod (StartBuildProcedure): + Add v format specifier. + * gm2-compiler/P2SymBuild.mod (BuildFieldRecord): Ditto. + * gm2-compiler/P3Build.bnf (SetType): Reformat. + * gm2-compiler/PathName.def (Copyright): Added. + * gm2-compiler/PathName.mod: Remove blank line. + * gm2-compiler/SymbolConversion.mod (gdbhook): New procedure. + (BreakWhenSymBooked): Ditto. + (CheckBook): Ditto. + (Init): Rewrite. + * gm2-compiler/SymbolTable.def (GetSetArray): New procedure. + (PutSetArray): Ditto. + (MakeSetArray): New procedure function. + (PutSetInWord): New procedure. + (GetSetInWord): New procedure function. + (IsConstVar): Ditto. + * gm2-compiler/SymbolTable.mod (SymSet): SetInWord new field. + SetArray new field. + Align new field. + (SymMemDiag): New global variable. + (Init): Initialize SymMemDiag. + (IsConstVar): New procedure function. + (IsVariableSSA): Replace InternalError with Return FALSE. + (GetNthParamOrdered): Reimplement. + (GetNthParamAnyClosest): Ditto. + (GetOuterModuleScope): Ditto. + (MakeSet): Ditto. + (PutSetArray): New procedure. + (GetSetArray): New procedure function. + (MakeSetArray): Ditto. + (PutSetInWord): New procedure. + (GetSetInWord): New procedure function. + * gm2-gcc/init.cc (_M2_M2Diagnostic_init): Define + prototype. + (init_FrontEndInit):Call _M2_M2Diagnostic_init. + * gm2-gcc/m2block.cc (m2block_GetTotalConstants): New function. + (m2block_GetGlobalTypes): Ditto. + * gm2-gcc/m2block.def (GetTotalConstants): New procedure function. + (GetGlobalTypes): New procedure function. + * gm2-gcc/m2block.h (m2block_GetTotalConstants): New function + prototype. + (m2block_GetGlobalTypes): Ditto. + * gm2-gcc/m2convert.cc (converting_ISO_generic): Reimplement. + (m2convert_ToPIMByte): New function. + * gm2-gcc/m2convert.def (ToLoc): New procedure function. + (ToPIMByte): Ditto. + * gm2-gcc/m2convert.h (m2convert_ToPIMByte): Ditto. + * gm2-gcc/m2decl.h (m2decl_RememberVariables): Ditto. + * gm2-gcc/m2expr.cc (m2expr_BuildLogicalShift): Reimplement. + (m2expr_BuildLRotate): Ditto. + (m2expr_BuildLRLn): Ditto. + (m2expr_BuildLRRn): Ditto. + (m2expr_BuildLogicalRotate): Ditto. + (buildUnboundedArrayOf): Ditto. + (BuildIfBitInSetLower): New function. + (m2expr_BuildBinarySetDo): Reimplement. + (m2expr_BuildIfInSet): Ditto. + (m2expr_BuildIfNotInSet): New function. + (m2expr_Build4LogicalOr): Reimplement. + (m2expr_BuildSetNegate): Ditto. + (m2expr_BuildLogicalOrAddress): Ditto. + (m2expr_BuildLogicalOr): Ditto. + (m2expr_BuildLogicalAnd): Ditto. + (m2expr_BuildSymmetricDifference): Ditto. + (m2expr_BuildLogicalDifference): Ditto. + (boolean_enum_to_unsigned): Ditto. + (m2expr_BuildIsSuperset): Ditto. + (m2expr_BuildIsNotSuperset): Ditto. + (m2expr_BuildIsSubset): Ditto. + (m2expr_BuildIfBitInSetJump): Ditto. + (m2expr_BuildIfNotConstInVar): Ditto. + (m2expr_BuildIfVarInVar): Ditto. + (m2expr_BuildIfNotVarInVar): Remove. + (m2expr_BuildIfConstInVar): Remove. + (m2expr_BuildForeachWordInSetDoIfExpr): Ditto. + (m2expr_BuildBinaryForeachWordDo): Ditto. + (m2expr_BuildIfInRangeGoto): Reimplement. + (m2expr_BuildIfNotInRangeGoto): Ditto. + (m2expr_SetAndNarrow): Ditto. + (m2expr_GetBitsetZero): New function. + (m2expr_GetRValue): Ditto. + * gm2-gcc/m2expr.def (GetBitsetZero): New function. + (BuildSetNegate): Ditto. + (BuildLogicalOr): Reimplement. + (BuildLogicalAnd): Ditto. + (BuildSymmetricDifference): Ditto. + (BuildLogicalDifference): Ditto. + (BuildIfInSet): New procedure function. + (BuildIfNotInSet): Ditto. + (BuildEqualTo): Reimplement. + (BuildNotEqualTo): Ditto. + (BuildBinaryForeachWordDo): Remove. + (BuildBinarySetDo): Ditto. + (GetRValue): New procedure function. + * gm2-gcc/m2expr.h (m2expr_BuildBinaryForeachWordDo): Remove. + (m2expr_BuildForeachWordInSetDoIfExpr): Ditto. + (m2expr_BuildIfNotVarInVar): Ditto. + (m2expr_BuildIfVarInVar): Ditto. + (m2expr_BuildIfNotConstInVar): Ditto. + (m2expr_BuildIfConstInVar): Ditto. + (m2expr_BuildLogicalDifference): Reimplement. + (m2expr_BuildSymmetricDifference): Ditto. + (m2expr_BuildLogicalAnd): Ditto. + (m2expr_BuildLogicalOr): Ditto. + (m2expr_BuildLogicalOrAddress): Ditto. + (m2expr_BuildSetNegate): Ditto. + (m2expr_GetBitsetZero): New function. + (m2expr_GetRValue): Ditto. + (m2expr_BuildIfInSet): Ditto. + (m2expr_BuildIfNotInSet): Ditto. + * gm2-gcc/m2options.h (M2Options_SetTimeReport): New function. + (M2Options_SetMemReport): Ditto. + (M2Options_SetWideset): Ditto. + (M2Options_GetWideset): Ditto. + * gm2-gcc/m2pp.cc (m2pp_shiftrotate_expr): New function. + (m2pp_simple_expression): Ditto. + * gm2-gcc/m2statement.cc (m2statement_BuildStartFunctionCode): + Tidyup comments. + (m2statement_BuildEndFunctionCode): Ditto. + (m2statement_BuildPushFunctionContext): Ditto. + (copy_array): Ditto. + (CopyByField_Lower): Ditto. + (m2statement_BuildGoto): Ditto. + (m2statement_DeclareLabel): Ditto. + (m2statement_BuildParam): Ditto. + (nCount): Ditto. + (m2statement_BuildProcedureCallTree): Ditto. + (m2statement_BuildBuiltinCallTree): Ditto. + (m2statement_BuildFunctValue): Ditto. + (m2statement_BuildCall2): Ditto. + (m2statement_BuildCall3): Ditto. + (m2statement_BuildFunctionCallTree): Ditto. + (m2statement_SetLastFunction): Ditto. + (m2statement_SetParamList): Ditto. + (m2statement_GetLastFunction): Ditto. + (m2statement_GetParamList): Ditto. + (m2statement_GetCurrentFunction): Ditto. + (m2statement_GetParamTree): Ditto. + (m2statement_BuildTryFinally): Ditto. + (m2statement_BuildCleanUp): Ditto. + (m2statement_BuildUnaryForeachWordDo): Remove. + (m2statement_BuildExcludeVarConst): Ditto. + (m2statement_BuildExcludeVarVar): Ditto. + (m2statement_BuildIncludeVarConst): Ditto. + (m2statement_BuildIncludeVarVar): Ditto. + (m2statement_DoJump): Remove. + (m2statement_IfExprJump): New function. + (m2statement_IfBitInSetJump): Ditto. + * gm2-gcc/m2statement.def (DoJump): Remove. + (IfExprJump): New procedure function. + (BuildUnaryForeachWordDo): Remove. + (IfBitInSetJump): New procedure function. + * gm2-gcc/m2statement.h (m2statement_BuildForeachWordDo): Remove. + (m2statement_DoJump): Ditto. + (m2statement_IfExprJump): New function. + (m2statement_IfBitInSetJump): Ditto. + * gm2-gcc/m2treelib.cc (m2treelib_do_jump_if_bit): Reimplement. + (nCount): Replace with ... + (m2treelib_nCount): ... this. + (m2treelib_DoCall): Reimplement. + (m2treelib_get_rvalue): Remove. + * gm2-gcc/m2treelib.def (get_rvalue): Remove. + (nCount): New procedure function. + * gm2-gcc/m2treelib.h (m2treelib_get_rvalue): Remove. + (m2treelib_nCount): New function. + * gm2-gcc/m2type.cc (constructor_elements): Change type to vec. + (m2type_BuildEndArrayType): Reformat. + (build_m2_type_node_by_array): Ditto. + (m2type_GetBooleanEnumList): New procedure function. + (m2type_BuildEnumerator): Add const to char *. + (m2type_BuildSetConstructorElement): Reimplement. + (m2type_BuildEndSetConstructor): Ditto. + (build_record_constructor): New function. + (m2type_BuildEndRecordConstructor): Reimplement. + (m2type_BuildRecordConstructorElement): Ditto. + (m2type_BuildStartArrayConstructor): Reimplement. + (m2type_BuildEndArrayConstructor): Remove blank lines. + * gm2-gcc/m2type.def (BuildSetConstructorElement): Reimplement. + (BuildEndArrayType): Reformat. + (GetBooleanEnumList): New function. + * gm2-gcc/m2type.h (m2type_BuildEnumerator): Add const to char *. + (m2type_BuildSetConstructorElement): Reimplement. + (m2type_GetBooleanEnumList): New procedure function. + * gm2-lang.cc (OPT_fmem_report): New option. + (OPT_ftime_report): Ditto. + (OPT_fwideset): Ditto. + * gm2-libs-coroutines/SYSTEM.def (ShiftVal): Remove. + (ShiftLeft): Ditto. + (ShiftRight): Ditto. + (RotateVal): Ditto. + (RotateLeft): Ditto. + (RotateRight): Ditto. + * gm2-libs-coroutines/SYSTEM.mod: Reimplement. + * gm2-libs-iso/SYSTEM.def (ShiftVal): Remove. + (ShiftLeft): Ditto. + (ShiftRight): Ditto. + (RotateVal): Ditto. + (RotateLeft): Ditto. + (RotateRight): Ditto. + * gm2-libs-iso/SYSTEM.mod: Reimplement. + * gm2-libs/SYSTEM.def (ShiftVal): Remove. + (ShiftLeft): Ditto. + (ShiftRight): Ditto. + (RotateVal): Ditto. + (RotateLeft): Ditto. + (RotateRight): Ditto. + * gm2-libs/SYSTEM.mod: Reimplement. + * gm2-libs/SysStorage.def (DEALLOCATE): Improve comment. + * gm2-libs/SysStorage.mod: Improve comment. + * init/ppginit (M2Diagnostic): Add. + (StringConvert): Add. + * lang.opt (fmem-report): Add access to c.opt. + (ftime-report): Ditto. + (fwideset): New option. + * pge-boot/main.cc (_M2_M2Diagnostic_init): New function. + (_M2_M2Diagnostic_fini): Ditto. + (_M2_StringConvert_init): Ditto. + (_M2_StringConvert_fini): Ditto. + (main): Call _M2_M2Diagnostic_init. + Call _M2_StringConvert_init. + Call _M2_M2Diagnostic_fini. + Call _M2_StringConvert_fini. + * tools-src/makeSystem: Add -gdb option. + * gm2-libs/M2Diagnostic.def: New file. + * gm2-libs/M2Diagnostic.mod: New file. + * gm2-libs/M2WIDESET.def: New file. + * gm2-libs/M2WIDESET.mod: New file. + * mc-boot/GM2Diagnostic.cc: New file. + * mc-boot/GM2Diagnostic.h: New file. + * pge-boot/GM2Diagnostic.cc: New file. + * pge-boot/GM2Diagnostic.h: New file. + * pge-boot/GSelective.h: New file. + * pge-boot/GStringConvert.cc: New file. + 2025-08-29 Gaius Mulley PR modula2/121709 diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 7e1e193faee..26d06f92670 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,74 @@ +2025-09-19 Paul Thomas + + PR fortran/83746 + * gfortran.dg/pdt_48.f03: New test. + +2025-09-19 Gaius Mulley + + * gm2/errors/fail/testbit2.mod: Rewrite. + * gm2/iso/run/pass/shift4.mod: Rewrite adding more internal + tests. + * gm2/iso/run/pass/testsystem.mod (FindFirstElement): Add + bounds check. + * gm2/sets/run/pass/multisetrotate4.mod: Add more runtime + error messages. + * gm2/sets/run/pass/simplepacked.mod (testpset): Correct + setname. + * lib/gm2.exp (gm2_init_minx): Add -fno-wideset. + * gm2/iso/run/pass/assigncons.mod: New test. + * gm2/iso/run/pass/constructor3.mod: New test. + * gm2/iso/run/pass/proc_test.mod: New test. + * gm2/iso/run/pass/simplelarge2.mod: New test. + * gm2/iso/run/pass/simplelarge3.mod: New test. + * gm2/iso/run/pass/simplelarge4.mod: New test. + * gm2/pimlib/wideset/run/pass/bitset.mod: New test. + * gm2/pimlib/wideset/run/pass/bitset2.mod: New test. + * gm2/pimlib/wideset/run/pass/colorset.mod: New test. + * gm2/pimlib/wideset/run/pass/colorset2.mod: New test. + * gm2/pimlib/wideset/run/pass/colorset3.mod: New test. + * gm2/pimlib/wideset/run/pass/highbit.mod: New test. + * gm2/pimlib/wideset/run/pass/highbit2.mod: New test. + * gm2/sets/run/pass/multisetrotate5.mod: New test. + * gm2/sets/run/pass/setcard.mod: New test. + * gm2/sets/run/pass/setincl.mod: New test. + +2025-09-19 Jeff Law + + PR target/121983 + * gcc.target/riscv/pr121983.c: New test. + +2025-09-19 Raphael Moreira Zinsly + + * gcc.target/riscv/rvv/autovec/shuffle-slide-run.h: + New test. + * gcc.target/riscv/rvv/autovec/shuffle-slidedown-run.c: + Likewise. + * gcc.target/riscv/rvv/autovec/shuffle-slideup-run.c: + Likewise. + * gcc.target/riscv/rvv/autovec/vls-vlmax/shuffle-slide.h: + Likewise. + * gcc.target/riscv/rvv/autovec/vls-vlmax/shuffle-slidedown-1.c: + Likewise. + * gcc.target/riscv/rvv/autovec/vls-vlmax/shuffle-slidedown-2.c: + Likewise. + * gcc.target/riscv/rvv/autovec/vls-vlmax/shuffle-slidedown-perm.h: + Likewise. + * gcc.target/riscv/rvv/autovec/vls-vlmax/shuffle-slideup-1.c: + Likewise. + * gcc.target/riscv/rvv/autovec/vls-vlmax/shuffle-slideup-2.c: + Likewise. + * gcc.target/riscv/rvv/autovec/vls-vlmax/shuffle-slideup-perm.h: + Likewise. + +2025-09-19 Jim Lin + + * gcc.target/riscv/save-restore-cfi-3.c: New test. + * gcc.target/riscv/pr120811.c: New file. + +2025-09-19 Jeff Law + + * gcc.target/riscv/bclr-lowest-set-bit-1.c: New test. + 2025-09-18 Joseph Myers * gcc.dg/c2y-anon-init-1.c, gcc.dg/c2y-incomplete-2.c: diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog index 23f32f1a1e2..5b6dbf57a14 100644 --- a/libgcc/ChangeLog +++ b/libgcc/ChangeLog @@ -1,3 +1,8 @@ +2025-09-19 Jim Lin + + * config/riscv/save-restore.S: Only save/restore the registers + which are really used for ILP32E/LP64. + 2025-08-21 Dimitar Dimitrov * config/pru/libgcc-eabi.ver: Add __pruabi_softmpyi and diff --git a/libgm2/ChangeLog b/libgm2/ChangeLog index c068292c09e..a7d26c88090 100644 --- a/libgm2/ChangeLog +++ b/libgm2/ChangeLog @@ -1,3 +1,11 @@ +2025-09-19 Gaius Mulley + + * libm2pim/Makefile.am (M2MODS): Add M2Diagnostic.mod. + Add M2WIDESET.mod. + (M2DEFS): Add M2Diagnostic.def. + Add M2WIDESET.def. + * libm2pim/Makefile.in: Regenerate. + 2025-07-23 Gaius Mulley PR modula2/121164 diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 9f4a2d241ee..5c7193a240b 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,33 @@ +2025-09-19 Nathan Myers + + PR libstdc++/119744 + * include/bits/version.def: Redefine __cpp_lib_bind_front etc. + * include/bits/version.h: Ditto. + * include/std/functional: Add new bind_front etc. overloads + * testsuite/20_util/function_objects/bind_back/1.cc: + Check plumbing better + * testsuite/20_util/function_objects/bind_back/nttp.cc: New test. + * testsuite/20_util/function_objects/bind_back/nttp_neg.cc: New test. + * testsuite/20_util/function_objects/bind_front/1.cc: + Check plumbing better + * testsuite/20_util/function_objects/bind_front/nttp.cc: New test. + * testsuite/20_util/function_objects/bind_front/nttp_neg.cc: New test. + * testsuite/20_util/function_objects/not_fn/nttp.cc: New test. + * testsuite/20_util/function_objects/not_fn/nttp_neg.cc: New test. + * testsuite/20_util/headers/functional/synopsis.cc: New decls. + +2025-09-19 Jonathan Wakely + + * include/bits/chrono_io.h: Remove unused header. + (operator<<): Constrain overload for chrono::local_time. + * testsuite/std/time/clock/local/io.cc: Check constraints. + +2025-09-19 Jonathan Wakely + + * include/bits/version.def (start_lifetime_as): Move adjacent to + other C++23 macros. + * include/bits/version.h: Regenerate. + 2025-09-18 Jakub Jelinek PR c++/106658