https://gcc.gnu.org/g:e58b0dd3c0a8fb1bac5eca3e3a8b075e9c591c7a
commit r15-6611-ge58b0dd3c0a8fb1bac5eca3e3a8b075e9c591c7a Author: GCC Administrator <gccadmin@gcc.gnu.org> Date: Tue Jan 7 00:18:08 2025 +0000 Daily bump. Diff: --- gcc/ChangeLog | 66 +++++++++++ gcc/DATESTAMP | 2 +- gcc/ada/ChangeLog | 283 ++++++++++++++++++++++++++++++++++++++++++++++++ gcc/testsuite/ChangeLog | 41 +++++++ libgcc/ChangeLog | 4 + libsanitizer/ChangeLog | 34 ++++++ 6 files changed, 429 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index e87e48242987..2f26f8b99ac9 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,69 @@ +2025-01-06 Alexandre Oliva <ol...@adacore.com> + + PR middle-end/118006 + * cfgexpand.cc (expand_gimple_basic_block): Do not emit + pending stack adjustments after a barrier. + +2025-01-06 Akram Ahmad <akram.ah...@arm.com> + + * config/aarch64/aarch64-simd.md: (*aarch64_trunc_concat) + new insn definition. + +2025-01-06 Fangrui Song <mask...@gcc.gnu.org> + + PR gcov-profile/96092 + * coverage.cc (coverage_init): Remap getpwd(). + +2025-01-06 Jennifer Schmitz <jschm...@nvidia.com> + + * config/aarch64/aarch64-sve-builtins-base.cc + (svmul_impl::fold): Wrap code for folding to svneg in lambda + function and pass to gimple_folder::convert_and_fold to enable + the transform for unsigned types. + * config/aarch64/aarch64-sve-builtins.cc + (gimple_folder::convert_and_fold): New function that converts + operands to target type before calling callback function, adding the + necessary conversion statements. + (gimple_folder::redirect_call): Set fntype of redirected call. + (get_vector_type): Move from here to aarch64-sve-builtins.h. + * config/aarch64/aarch64-sve-builtins.h + (gimple_folder::convert_and_fold): Declare function. + (get_vector_type): Move here as inline function. + +2025-01-06 Martin Jambor <mjam...@suse.cz> + + * ipa-cp.cc (ipcp_print_widest_int): New function. + (ipcp_store_vr_results): Use it. + (ipcp_bits_lattice::print): Likewise. Fix formatting. + +2025-01-06 Mark Wielaard <m...@klomp.org> + + PR tree-optimization/118032 + * tree-switch-conversion.cc (jump_table_cluster::find_jump_tables): + Remove param_switch_lower_slow_alg_max_cases check. + +2025-01-06 Tamar Christina <tamar.christ...@arm.com> + + PR target/96342 + PR target/118272 + * config/aarch64/aarch64-sve.md (vec_init<mode><Vquad>, + vec_initvnx16qivnx2qi): New. + * config/aarch64/aarch64.cc (aarch64_sve_expand_vector_init_subvector): + Rewrite to support any arbitrary combinations. + * config/aarch64/iterators.md (SVE_NO2E): Update to use SVE_NO4E + (SVE_NO2E, Vquad): New. + +2025-01-06 Jakub Jelinek <ja...@redhat.com> + + PR tree-optimization/118224 + * tree-ssa-dce.cc (is_removable_allocation_p): Don't return true + for allocations with constant size argument larger than PTRDIFF_MAX + or for calloc with one of the arguments constant larger than + PTRDIFF_MAX or their product known constant above PTRDIFF_MAX. + Fix comment typos, furhter -> further and then -> than. + * lto-section-in.cc (lto_free_function_in_decl_state_for_node): + Fix comment typo, furhter -> further. + 2025-01-04 Hans-Peter Nilsson <h...@axis.com> * config/mmix/mmix.cc (mmix_asm_output_labelref): Replace '.' diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index 197d498df297..0bf88b7cb924 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20250106 +20250107 diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index ce841bbaf17b..4bfc74de859d 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,286 @@ +2025-01-06 Eric Botcazou <ebotca...@adacore.com> + + PR ada/118247 + * gcc-interface/Make-lang.in (GNATTOOLS_CROSS_MV): Copy gnatbind + instead of moving it. + +2025-01-06 Eric Botcazou <ebotca...@adacore.com> + + * exp_aggr.adb (Two_Pass_Aggregate_Expansion): Use the base type of + the index type to find the type used to compute the length. + +2025-01-06 Eric Botcazou <ebotca...@adacore.com> + + * libgnat/s-finpri.ads: Remove clause for Ada.Finalization. + (Finalization_Collection): Change to limited private type with the + Finalizable aspect. + (Initialize): Remove "overriding" keyword. + (Finalize): Likewise. + * libgnat/s-finpri.adb (Initialize): Likewise. + (Finalize): Likewise. + +2025-01-06 Eric Botcazou <ebotca...@adacore.com> + + PR ada/117569 + * sem_ch4.adb (Analyze_Indexed_Component_Form): Do not rewrite the + node as a type conversion if it is the current instance of a type + in a generic unit. + * sem_ch8.adb (Find_Selected_Component): Restrict the special case + of the current instance of a type to a generic unit. + +2025-01-06 Bob Duff <d...@adacore.com> + + * libgnat/s-imagef.adb (Set_Image_Integer): + Change "RM A.3.10" to be "RM A.10.9". + +2025-01-06 Alexandre Oliva <ol...@adacore.com> + + * libgnat/g-cppexc.adb (Convert_Caught_Object): Move... + * libgnat/g-cstyin.adb (Convert_Caught_Object): ... here. + Use object call notation. + (strcmp): New. + (Char_Arr, CharPtr, Char_Pointer, To_chars_ptr): Drop. Do not + import Interfaces.C.Pointers. + (To_Pointer): Convert from System.Address. + (Name_Starts_With_Asterisk): Rename local variable. + (Name_Past_Asterisk): Rewrite with System.Address and strcmp. + Import System.Storage_Elements. + (Equals): Use strcmp. + (Before): Fix logic error. Use strcmp. + (Name): Move conversion to String... + * libgnat/g-cppstd.adb (Name): ... here. Import + Interfaces.C.Strings. + * libgnat/g-cppstd.ads (Type_Info_Ptr): Disable heap + finalization. + * libgnat/g-cstyin.ads (Name): Change return type. + +2025-01-06 Claire Dross <dr...@adacore.com> + + * aspects.ads: Add aspect Aspect_Exit_Cases. + * contracts.adb (Analyze_Entry_Or_Subprogram_Contract): Handle Exit_Cases. + (Expand_Subprogram_Contract): Idem. + * einfo-utils.adb (Get_Pragma): Allow Pragma_Exit_Cases. + * einfo-utils.ads (Get_Pragma): Idem. + * exp_prag.adb (Expand_Pragma_Exit_Cases): Ignore the pragma, currently we don't expand it. + * exp_prag.ads (Expand_Pragma_Exit_Cases): Idem. + * inline.adb (Remove_Aspects_And_Pragmas): Add Exit_Cases to the list. + (Remove_Items): Idem. + * par-prag.adb (Last_Arg_Is_Reason): Idem. + * sem_ch12.adb: Idem. + * sem_ch13.adb: Idem. + * sem_util.adb: Idem. + * sem_util.ads: Idem. + * sinfo.ads: Idem. + * snames.ads-tmpl: Add names Name_Exit_Cases, Name_Exception_Raised, and Name_Normal_Return + as well as pragma Pragma_Exit_Cases. + * sem_prag.adb (Analyze_Exit_Cases_In_Decl_Part): Make sure that a + pragma or aspect Exit_Cases is well formed. + (Analyze_Pragma): Make sure that a pragma or aspect Exit_Cases is at the right place. + * sem_prag.ads (Analyze_Exit_Cases_In_Decl_Part): Declaration. + * doc/gnat_rm/implementation_defined_pragmas.rst: Document the Exit_Cases pragma. + * doc/gnat_rm/implementation_defined_aspects.rst: Document the Exit_Cases aspect. + * gnat_rm.texi: Regenerate. + +2025-01-06 Bob Duff <d...@adacore.com> + + * sem_util.adb (Copy_Subprogram_Spec): When copying + an N_Defining_Operator_Symbol, create an + N_Defining_Operator_Symbol rather than an N_Defining_Identifier. + This will cause Lib.Xref to "skip the initial quote for + navigation purposes" (as per comments in Lib.Xref body). + +2025-01-06 Eric Botcazou <ebotca...@adacore.com> + + * exp_aggr.adb (Case_Table_Type): Fix reference in comment. + (In_Place_Assign_OK): Move declaration around. + (Is_Build_In_Place_Aggregate_Return): Likewise and adjust. + (Expand_Array_Aggregate): Streamline for the sake of consistency. + (Aggr_Assignment_OK_For_Backend): Remove reference to Gigi/gcc. + (Backend_Processing_Possible): Likewise. + (Expand_Array_Aggregate): Add comment. + +2025-01-06 Bob Duff <d...@adacore.com> + + * sinfo.ads (Shift_Count_OK): Update comments. + (Is_Power_Of_2_For_Shift): Likewise. + +2025-01-06 Eric Botcazou <ebotca...@adacore.com> + + * debug.adb (dQ): Document usage. + * exp_ch4.ads (Build_Cleanup_For_Allocator): New declaration. + * exp_ch4.adb (Build_Cleanup_For_Allocator): New procedure. + (Expand_Allocator_Expression): Build a cleanup to deallocate the + memory when the evaluation of the expression raises an exception. + * exp_ch6.adb (Make_Build_In_Place_Call_In_Allocator): Likewise. + * exp_util.adb (Build_Allocate_Deallocate_Proc): Do not generate the + detachment if the deallocation is for the cleanup of an allocator. + * gen_il-fields.ads (Opt_Field_Enum): Add For_Allocator. + * gen_il-gen-gen_nodes.adb (N_Free_Statement): Likewise. + * sinfo.ads (For_Allocator): Document usage on N_Free_Statement. + +2025-01-06 Eric Botcazou <ebotca...@adacore.com> + + PR ada/117956 + * sem_util.adb (Is_Known_On_Entry): Be prepared for constants coming + from a renaming declaration. + +2025-01-06 Tonu Naks <n...@adacore.com> + + * adaint.c (__gnat_locate_exec_on_path): modify function signature + +2025-01-06 Piotr Trojanek <troja...@adacore.com> + + * sem_prag.adb (Resolve_State): Continue ordinary processing. + +2025-01-06 Javier Miranda <mira...@adacore.com> + + * sem_ch4.adb (Try_Object_Operation): if no candidate interpretation + matches the context, redo the same analysis with Report_Error True + to report the error. + +2025-01-06 Eric Botcazou <ebotca...@adacore.com> + + * exp_ch5.adb (Expand_Assign_Array): Bail out for controlled + components if the RHS is a function call and the assignment has + the No_Ctrl_Actions flag set. + +2025-01-06 Viljar Indus <in...@adacore.com> + + * diagnostics-json_utils.adb: Add new method + Write_Boolean_Attribute. + * diagnostics-json_utils.ads: Likewise. + * diagnostics-sarif_emitter.adb (Print_Invocations): print + the executionSuccesful property value without extra quotes. + +2025-01-06 Viljar Indus <in...@adacore.com> + + * diagnostics-sarif_emitter.adb (Print_Rule): Remove printing + of the level attribute since it does not match the SARIF schema. + +2025-01-06 Piotr Trojanek <troja...@adacore.com> + + * gen_il-gen.adb (Put_Tables): Add "not null" to the generated code. + * rtsfind.adb (Cstring_Ptr): Same for table with predefined RE_Id + error messages. + * impunit.adb (Aunit_Record): Same for array of alternative unit names. + +2025-01-06 Piotr Trojanek <troja...@adacore.com> + + * opt.ads (Ada_Version_Runtime): Now a constant, since it cannot + and should never be modified. + +2025-01-06 Bob Duff <d...@adacore.com> + + * par-ch10.adb (P_Compilation_Unit): Give an error for "is null". + * sem_ch10.adb (Analyze_Subunit): Remove check for "is null" + as a subunit. + * sem_ch6.adb (Analyze_Subprogram_Declaration): + Remove check for "is null" as a library unit. + +2025-01-06 Javier Miranda <mira...@adacore.com> + + * sem_ch6.adb (Analyze_Expression_Function): Set the parent of + the new node to be the parent of the original to get the proper + context, which is needed for complete error reporting and for + semantic analysis. Patch suggested by Eric Botcazou. + +2025-01-06 Alexandre Oliva <ol...@adacore.com> + Olivier Hainque <hain...@adacore.com> + + * Makefile.rtl (LLVM_BUILD): Define based on LLVM_CONFIG. + (GNATRTL_NONTASKING_OBJS): Make g-cpp, g-cppstd, and g-cstyin + conditional on -gcc or -arm EH, and on no LLVM_BUILD. + * raise-gcc.c (GXX_EH_INTEROP): Define as 0 on gnat-llvm or + CERT, and 1 otherwise. + (__gnat_get_cxx_dependent_exception) Omit on !GXX_EH_INTEROP. + (__gnat_maybe_get_cxx_dependent_exception): Likewise. + (__gnat_get_cxx_exception_type_info): Likewise. + (__gnat_obtain_caught_object): Likewise. + (is_handled_by): Omit eid parameter and G++ interop on + !GXX_EH_INTEROP. Adjust callers. + +2025-01-06 Eric Botcazou <ebotca...@adacore.com> + + * einfo.ads (Returns_By_Ref): Fix description. + * exp_ch3.adb (Build_Record_Init_Proc.Build_Assignment): Do not + adjust the component manually (if need be), set No_Finalize_Actions + instead of No_Ctrl_Actions for this purpose. Do not adjust when + the expression is a naked function call. + * exp_ch5.adb (Make_Tag_Ctrl_Assignment): Document the quirks of + the function. Assert that the LHS of the assignment does not have + side effects and replace calls to Duplicate_Subexpr_No_Checks with + calls to New_Copy_Tree. Rename local variable Asn to New_N. + (Expand_N_Assignment_Statement): In the tagged or controlled record + case, do remove side effects from both operands on entry. Remove + them in the controlled record case, except if the RHS is a function + call and the assignment has the No_Ctrl_Actions flag set. + * exp_ch6.adb (Expand_Ctrl_Function_Call): Bail out when the parent + node is an assignment statement with the No_Ctrl_Actions flag set. + * sem_util.adb (Statically_Different): Return True for a function + call that does not return its result by reference. + * sinfo.ads (No_Ctrl_Actions): Adjust description and add a note for + the code generator. + (No_Finalize_Actions): Likewise. + +2025-01-06 Bob Duff <d...@adacore.com> + + * gen_il-gen.adb: Fix too-long line. + +2025-01-06 Tonu Naks <n...@adacore.com> + + * adaint.c: void parameter on non-windows platforms + +2025-01-06 Bob Duff <d...@adacore.com> + + * gen_il-internals.ads: Split Fields field into two fields + Imm_Fields and Fields. + * gen_il-gen.adb: Modify the field-inheritance + algorithm to inherit at each level of the type hierarchy, + rather than just inheriting into concrete types. + For example, if C is a concrete type derived from B, + which is in turn derived from A, we now set the Fields + of B to include those of A. (We had always set the Fields + of C to include those of A and B, and we still do that.) + (Compute_Fields_For_One_Type): Detect cases where a given + field is declared for all descendants of a given abstract + type, in which case we should consider declaring it in + the abstract type, and inheriting it in those descendants. + (Exception_To_Inheritance_Rule): These are the cases where + we could inherit, but we don't want to. + * gen_il-gen-gen_nodes.adb: Move fields up the type hierarchy, + so they are inherited instead of being defined separately. + * gen_il-gen-gen_entities.adb: Likewise. + +2025-01-06 Viljar Indus <in...@adacore.com> + + * sem_ch6.adb (Analyze_Subprogram_Body_Helper): + Exchange_Limited_Views also in Ada 2005. + +2025-01-06 Eric Botcazou <ebotca...@adacore.com> + + * exp_ch6.adb (Expand_Call_Helper): Call Ultimate_Alias for the + detection of calls to subprograms specified for Constant_Indexing. + * exp_util.adb (Is_Indexed_Container): Likewise. + (Is_Iterated_Container): Likewise for Default_Iterator. + +2025-01-06 Ronan Desplanques <desplanq...@adacore.com> + + * doc/gnat_ugn/building_executable_programs_with_gnat.rst: Fix markup. + * gnat_ugn.texi: Regenerate. + +2025-01-06 Piotr Trojanek <troja...@adacore.com> + + * sem_ch13.adb (Validate_Unchecked_Conversions): Remove detection of + null arrays; remove tests for sizes being present, which are redundant + after calling Known_Static_RM_Size. + +2025-01-06 Eric Botcazou <ebotca...@adacore.com> + + PR ada/117936 + * doc/gnat_rm/implementation_defined_pragmas.rst + (Unimplemented_Unit): Adjust the description of the error message. + * gnat_rm.texi: Regenerate. + 2025-01-05 Estevan Castilho (Tevo) <estevan....@gmail.com> * libgnarl/s-taprop__dummy.adb: Remove use clause for diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 127c0cc35179..59359ef94a23 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,44 @@ +2025-01-06 Alexandre Oliva <ol...@adacore.com> + + PR middle-end/118006 + * gcc.target/i386/strub-pr118006.c: New. + +2025-01-06 Akram Ahmad <akram.ah...@arm.com> + + * gcc.target/aarch64/sve/truncated_concatenation_1.c: new test + for the above example and other modes covered by insn + definitions. + +2025-01-06 Jennifer Schmitz <jschm...@nvidia.com> + + * gcc.target/aarch64/sve/acle/asm/mul_u8.c: Adjust expected outcome. + * gcc.target/aarch64/sve/acle/asm/mul_u16.c: Likewise. + * gcc.target/aarch64/sve/acle/asm/mul_u32.c: Likewise. + * gcc.target/aarch64/sve/acle/asm/mul_u64.c: New test and adjust + expected outcome. + +2025-01-06 Tamar Christina <tamar.christ...@arm.com> + + PR target/96342 + PR target/118272 + * gcc.target/aarch64/vect-simd-clone-3.c: New test. + +2025-01-06 Jakub Jelinek <ja...@redhat.com> + + PR tree-optimization/118224 + * gcc.dg/pr118224.c: New test. + * c-c++-common/ubsan/vla-1.c (bar): Use noipa attribute instead + of noinline, noclone. + +2025-01-06 Kito Cheng <kito.ch...@sifive.com> + + * gcc.target/riscv/rvv/fortran/pr111395.f90: Move this file to... + * gfortran.target/riscv/rvv/pr111395.f90: ...here. + * gcc.target/riscv/rvv/fortran/pr111566.f90: Move this file to... + * gfortran.target/riscv/rvv/pr111566.f90: ...here. + * gcc.target/riscv/rvv/rvv-fortran.exp: Move this file to... + * gfortran.target/riscv/rvv/rvv.exp: ...here. + 2025-01-05 Iain Buclaw <ibuc...@symmetryinvestments.com> * gdc.dg/torture/pr96435.d: Add dg-warning. diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog index 406e459be7d2..5bcf1bb8b6ee 100644 --- a/libgcc/ChangeLog +++ b/libgcc/ChangeLog @@ -1,3 +1,7 @@ +2025-01-06 Stafford Horne <sho...@gmail.com> + + * config/or1k/lib1funcs.S: Add .note.GNU-stack section on linux. + 2024-12-12 Georg-Johann Lay <a...@gjlay.de> PR target/118001 diff --git a/libsanitizer/ChangeLog b/libsanitizer/ChangeLog index 5c4ccd2430f4..6e54604bf4b6 100644 --- a/libsanitizer/ChangeLog +++ b/libsanitizer/ChangeLog @@ -1,3 +1,37 @@ +2025-01-06 Stefan Schulze Frielinghaus <stefa...@gcc.gnu.org> + + PR sanitizer/117725 + * sanitizer_common/sanitizer_common_interceptors.inc: Cherry + picked from LLVM commit 65a2eb0b1589590ae78cc1e5f05cd004b3b3bec5. + +2025-01-06 Vitaly Buka <vitalyb...@google.com> + Stefan Schulze Frielinghaus <stefa...@linux.ibm.com> + + PR sanitizer/117725 + * asan/asan_interceptors.cpp: Cherry picked from LLVM commit + 6dec33834d1fd89f16e271dde9607c1de9554144. + * sanitizer_common/sanitizer_common_interceptors.inc: Ditto. + +2025-01-06 Stefan Schulze Frielinghaus <stefa...@gcc.gnu.org> + + PR sanitizer/117725 + * interception/interception.h: Cherry picked from LLVM commit + ce44640fe29550461120d22b0358e6cac4aed822. + * sanitizer_common/sanitizer_internal_defs.h: Ditto. + +2025-01-06 Stefan Schulze Frielinghaus <stefa...@gcc.gnu.org> + + PR sanitizer/117725 + * asan/asan_interceptors.cpp: Cherry picked LLVM commit + 9a156f6b2b0c892d8713ba907f07f027b24953d8. + * asan/asan_interceptors.h: Ditto. + * asan/asan_interceptors_memintrinsics.h: Ditto. + * sanitizer_common/sanitizer_common_interceptors.inc: Ditto. + * sanitizer_common/sanitizer_common_interceptors_memintrinsics.inc: + Ditto. + * sanitizer_common/sanitizer_platform_limits_posix.h: Ditto. + * tsan/tsan_interceptors_posix.cpp: Ditto. + 2024-11-25 Jakub Jelinek <ja...@redhat.com> PR sanitizer/117732