https://gcc.gnu.org/g:c64308e297a13d0f0e19ec871b5e81348b4da484
commit r16-5682-gc64308e297a13d0f0e19ec871b5e81348b4da484 Author: GCC Administrator <[email protected]> Date: Fri Nov 28 00:21:32 2025 +0000 Daily bump. Diff: --- gcc/ChangeLog | 126 ++++++++++++++++++++++++++++++++++++++++ gcc/DATESTAMP | 2 +- gcc/ada/ChangeLog | 150 ++++++++++++++++++++++++++++++++++++++++++++++++ gcc/analyzer/ChangeLog | 6 ++ gcc/c/ChangeLog | 6 ++ gcc/rust/ChangeLog | 15 +++++ gcc/testsuite/ChangeLog | 44 ++++++++++++++ libgcc/ChangeLog | 6 ++ libstdc++-v3/ChangeLog | 77 +++++++++++++++++++++++++ 9 files changed, 431 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 2333706380ae..af44c22d36ba 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,129 @@ +2025-11-27 Matthieu Longo <[email protected]> + + * config/aarch64/aarch64-c.cc (aarch64_define_unconditional_macros): Define + __ARM_BUILDATTR64_FV when BA support is detected in GAS. + +2025-11-27 Wilco Dijkstra <[email protected]> + + * config/aarch64/aarch64.md (ctz<mode>2): Use compact syntax. + +2025-11-27 Wilco Dijkstra <[email protected]> + + * config/aarch64/aarch64.md (ffs<mode>2): Use gen_ctz. + (ctz<mode>2): Model ctz as a single target instruction. + +2025-11-27 Wilco Dijkstra <[email protected]> + + * config/aarch64/atomics.md (*dmb): Expand release fence into dmb ishld + and dmb ishst. + +2025-11-27 Andrew Pinski <[email protected]> + + * tree-ssa-reassoc.cc (rewrite_expr_tree): Swap + oe1 and oe2 if commutative code and not in + canonical order. + +2025-11-27 Georg-Johann Lay <[email protected]> + + * config/avr/avr-mcus.def (AVR_MCUS): Add avr16la14, avr16la20, + avr16la28, avr16la32, avr32la14, avr32la20, avr32la28, avr32la32. + * doc/avr-mmcu.texi: Rebuild. + +2025-11-27 Robin Dapp <[email protected]> + + PR tree-optimization/122855 + PR tree-optimization/122850 + * tree-ssa-forwprop.cc (simplify_vector_constructor): Nop + convert input if necessary. + +2025-11-27 Andrew Stubbs <[email protected]> + + * config/gcn/gcn.cc (gcn_init_cumulative_args): Emit a warning if the + -mxnack setting looks wrong. + * config/gcn/mkoffload.cc: Include tree.h and omp-general.h. + (process_asm): Add omp_requires parameter. + Emit HSA_XNACK code into mkoffload_setup, as required. + (main): Modify HSACO_ATTR_OFF to preserve user-set -mxnack. + Pass omp_requires to process_asm. + +2025-11-27 Jakub Jelinek <[email protected]> + + PR target/122714 + * gimple-lower-bitint.cc (bitint_large_huge::limb_access): Adjust + MEM_REFs offset for bitint_big_endian if ltype doesn't have the + same byte size as m_limb_type. + +2025-11-27 Richard Biener <[email protected]> + + * tree-vect-stmts.cc (vectorizable_simd_clone_call): Fix + recording of the mask type again. Adjust placing of + mask arguments for non-masked calls. + +2025-11-27 Dhruv Chawla <[email protected]> + + PR tree-optimization/122733 + * match.pd ((y << x) {<,<=,>,>=} x): Remove. + ((y << x) {==,!=} x): Call constant_boolean_node instead of + build_one_cst/build_zero_cst and combine into one pattern. + +2025-11-27 Jakub Jelinek <[email protected]> + + * fold-const.h (expr_not_equal_to): Add gimple * argument defaulted + to NULL. + * fold-const.cc (expr_not_equal_to): Likewise, pass it through to + range_of_expr. + * generic-match-head.cc (gimple_match_ctx): New static inline. + * match.pd (X % -Y -> X % Y): Capture NEGATE and pass + gimple_match_ctx (@2) as new 3rd argument to expr_not_equal_to. + ((A * C) +- (B * C) -> (A+-B) * C): Pass gimple_match_ctx (@3) + as new 3rd argument to expr_not_equal_to. + (a rrotate (bitsize-b) -> a lrotate b): Likewise. + +2025-11-27 Jakub Jelinek <[email protected]> + + PR tree-optimization/119683 + * gimple-match.h (gimple_match_ctx): Move to ... + * gimple-match-head.cc (gimple_match_ctx): ... here. Make static. + (gimple_match_range_of_expr): New static inline. + * match.pd ((mult (plus:s (mult:s @0 @1) @2) @3)): Use + gimple_match_range_of_expr. + ((plus (mult:s (plus:s @0 @1) @2) @3)): Likewise. + ((t * u) / u -> t): Likewise. + ((t * u) / v -> t * (u / v)): Likewise. + ((X + M*N) / N -> X / N + M): Likewise. + ((X - M*N) / N -> X / N - M): Likewise. + ((X + C) / N -> X / N + C / N): Likewise. + (((T)(A)) + CST -> (T)(A + CST)): Likewise + (x_5 == cstN ? cst4 : cst3): Likewise. Do r.set_varying + even when gimple_match_range_of_expr failed. + +2025-11-27 Christophe Lyon <[email protected]> + + * config/arm/arm-builtins.cc (arm_init_mve_builtins): Remove + volatile qualifier. + +2025-11-27 Richard Biener <[email protected]> + + PR tree-optimization/122885 + * tree-vect-loop.cc (vect_find_reusable_accumulator): Reject + mask vectors which do not use integer vector modes. + (vect_create_partial_epilog): Assert the same. + +2025-11-27 liuhongt <[email protected]> + + * config/i386/i386-options.cc (set_ix86_tune_features): Set + gather/scatter tune if OPTION_SET_P. + * config/i386/i386.opt: Refactor mgather/mscatter. + +2025-11-27 Lulu Cheng <[email protected]> + + * doc/extend.texi: Remove the incorrect prompt message. + +2025-11-27 Sandra Loosemore <[email protected]> + + * doc/invoke.texi (Option Summary) <C++ Langauge Options>: + Add --compile-std-module. + 2025-11-26 Jeff Law <[email protected]> Revert: diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index d8e427a9c3e1..1ae1ab83d643 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20251127 +20251128 diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 8cbdbfe17701..4837ac186ee1 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,153 @@ +2025-11-27 Eric Botcazou <[email protected]> + + * exp_ch6.adb (Expand_Actuals): Do not create activation chain and + master for build-in-place calls here but... + (Make_Build_In_Place_Call_In_Allocator): Use Unqual_Conv. + (Make_Build_In_Place_Call_In_Anonymous_Context): ...here instead. + Call Make_Build_In_Place_Call_In_Object_Declaration directly. + (Make_Build_In_Place_Iface_Call_In_Anonymous_Context): ...and here + instead. Add missing rewriting of the call. + +2025-11-27 Ronan Desplanques <[email protected]> + + * doc/gnat_ugn/about_this_guide.rst: Minor fixes + * gnat_ugn.texi: Regenerate. + +2025-11-27 Eric Botcazou <[email protected]> + + PR ada/122574 + * doc/gnat_ugn/building_executable_programs_with_gnat.rst (-gnatwp): + Replace reference to -gnatN with -gnatn and adjust accordingly. + * inline.adb: Remove clauses for Exp_Tss. + (Has_Initialized_Type): Delete. + (Add_Inlined_Subprogram): Test that the Is_Inlined flag is still set + on the subprogram. + * usage.adb (Usage): Adjust description of -gnatwp. + * gnat_ugn.texi: Regenerate. + +2025-11-27 Denis Mazzucato <[email protected]> + + * sem_ch5.adb: Skip check for assignment that doesn't come from source. + +2025-11-27 Ronan Desplanques <[email protected]> + + * exp_aggr.adb (Gen_Loop): Only preanalyze expressions we know won't + evaluated. + +2025-11-27 Tom Tromey <[email protected]> + + * repinfo.adb (Visit): New procedure. + (List_GCC_Expression): Rewrite. + * repinfo.ads (Visit): New generic procedure. + +2025-11-27 Ghjuvan Lacambre <[email protected]> + + * sem_ch13.adb (Analyze_Code_Statement): Do not emit error + message when only checking relaxed semantics. + +2025-11-27 Eric Botcazou <[email protected]> + + * exp_ch7.adb (Build_Finalizer_Call): Delete. + (Build_Finalizer): Always insert the finalizer at the end of the + statement list in the non-package case. + (Expand_Cleanup_Actions): Attach the finalizer manually, if any. + * exp_smem.adb (Add_Shared_Var_Lock_Procs): Insert all the actions + directly in the transient scope. + +2025-11-27 Eric Botcazou <[email protected]> + + * exp_ch11.adb (Expand_N_Handled_Sequence_Of_Statement): Merge the + eslif condition with the if condition for cleanup actions. + * sem_ch6.adb (Analyze_Procedure_Call.Analyze_Call_And_Resolve): Get + rid of if statement whose condition is always true. + * sinfo.ads (Finally_Statements): Document their purpose. + +2025-11-27 Eric Botcazou <[email protected]> + + * gen_il-gen-gen_nodes.adb (N_Extended_Return_Statement): Add + Activation_Chain_Entity semantic field. + * exp_ch3.adb (Build_Master): Use Build_Master_{Entity,Renaming} in + all cases. + (Expand_N_Object_Declaration): Small tweak. + * exp_ch6.adb (Make_Build_In_Place_Iface_Call_In_Allocator): Use + Build_Master_{Entity,Renaming} to build the master. + * exp_ch7.adb (Expand_N_Package_Declaration): Do not guard the call + to Build_Task_Activation_Call for the sake of consistency. + * exp_ch9.ads (Build_Class_Wide_Master): Delete. + (Find_Master_Scope): Likewise. + (Build_Protected_Subprogram_Call_Cleanup): Move to... + (First_Protected_Operation): Move to... + (Mark_Construct_As_Task_Master): New procedure. + * exp_ch9.adb (Build_Protected_Subprogram_Call_Cleanup): ...here. + (First_Protected_Operation): ...here. + (Build_Activation_Chain_Entity): Streamline handling of extended + return statements. + (Build_Class_Wide_Master): Delete. + (Build_Master_Entity): Streamline handling of extended return + statements and call Mark_Construct_As_Task_Master on the context. + (Build_Task_Activation_Call): Assert that the owner is not an + extended return statement. + (Find_Master_Scope): Delete. + (Mark_Construct_As_Task_Master): New procedure. + * sem_ch3.adb (Access_Definition): Use Build_Master_{Entity,Renaming} + in all cases to build a master. + * sem_ch6.adb (Check_Anonymous_Return): Rename to... + (Check_Anonymous_Access_Return_With_Tasks): ...this. At the end, + call Mark_Construct_As_Task_Master on the parent node. + (Analyze_Subprogram_Body_Helper): Adjust to above renaming. + (Create_Extra_Formals): Do not set Has_Master_Entity here. + * sinfo.ads (Activation_Chain_Entity): Adjust description. + +2025-11-27 Bob Duff <[email protected]> + + * sem_ch13.adb (Aspect_Annotate): Avoid disturbing the tree of the + aspect. + * vast.adb: Enable Check_Parent_Present. + * exp_ch6.adb (Validate_Subprogram_Calls): Minor reformatting. + +2025-11-27 Eric Botcazou <[email protected]> + + * exp_ch4.adb (Expand_N_Case_Expression): When not optimizing for a + specific context, call Make_Build_In_Place_Call_In_Anonymous_Context + on expressions of alternatives when they are calls to BIP functions. + (Expand_N_If_Expression): Likewise for the Then & Else expressions. + +2025-11-27 Bob Duff <[email protected]> + + * frontend.adb: Move call to VAST from here... + * gnat1drv.adb: ...to here. + * vast.ads (VAST_If_Enabled): Rename main entry point of VAST from + VAST to VAST_If_Enabled. + * vast.adb: Miscellaneous improvements. Mostly debugging + improvements. Also enable Check_Error_Nodes. Also add checks: + Check_FE_Only, Check_Scope_Present, Check_Scope_Correct. + * debug.ads: Minor comment tweaks. The comment, "In the checks off + version of debug, the call to Set_Debug_Flag is always a null + operation." appears to be false, so is removed. + * debug.adb: Minor: Remove some code duplication. + * sinfo-utils.adb (nnd): Add comment warning about C vs. Ada + confusion. + +2025-11-27 Eric Botcazou <[email protected]> + + * exp_ch6.ads (Needs_BIP_Task_Actuals): Adjust description. + * exp_ch6.adb (Expand_N_Extended_Return_Statement): Move activation + chain for every build-in-place function with task formal parameters + when the type of the return object might have tasks. + +2025-11-27 Ronan Desplanques <[email protected]> + + * libgnat/s-dwalin.ads (Display_Mode_Type): New enumerated type. + (Symbolic_Traceback): Use new type in profile. + * libgnat/s-dwalin.adb (Symbolic_Traceback): Use new type in profile + and adapt body. + * libgnat/s-trasym__dwarf.adb (Multi_Module_Symbolic_Traceback): Fix + wrong call in body of one overload. Use new type in profile. Adapt + body. + (Symbolic_Traceback, Symbolic_Traceback_No_Lock, + Module_Symbolic_Traceback): Use new type in profile and adapt body. + (Calling_Entity): Adapt body. + 2025-11-24 Eric Botcazou <[email protected]> PR ada/81106 diff --git a/gcc/analyzer/ChangeLog b/gcc/analyzer/ChangeLog index 70fe4dd2b826..9e18914aad9f 100644 --- a/gcc/analyzer/ChangeLog +++ b/gcc/analyzer/ChangeLog @@ -1,3 +1,9 @@ +2025-11-27 Jonathan Wakely <[email protected]> + + * constraint-manager.cc (equiv_class::operator==): Add const + qualifier. + * constraint-manager.h (equiv_class::operator==): Likewise. + 2025-11-25 David Malcolm <[email protected]> * sm-malloc.cc (deref_before_check::emit): Add logging of the diff --git a/gcc/c/ChangeLog b/gcc/c/ChangeLog index bda28d1c64a8..974dd6d768fc 100644 --- a/gcc/c/ChangeLog +++ b/gcc/c/ChangeLog @@ -1,3 +1,9 @@ +2025-11-27 Jakub Jelinek <[email protected]> + + PR c/121506 + * c-typeck.cc (c_type_tag): If TYPE_NAME is TYPE_DECL + with non-NULL DECL_NAME, return that. + 2025-11-26 Alejandro Colomar <[email protected]> * c-parser.cc (c_parser_maxof_or_minof_expression): New func. diff --git a/gcc/rust/ChangeLog b/gcc/rust/ChangeLog index c581e08ffbb6..5ba3ddadd180 100644 --- a/gcc/rust/ChangeLog +++ b/gcc/rust/ChangeLog @@ -1,3 +1,18 @@ +2025-11-27 Jakub Jelinek <[email protected]> + + * lex/rust-lex.cc (rust_input_source_test): Cast char8_t string + literals to (const char *) to make it compilable with C++20. Use + char16_t or char32_t character literals instead of ordinary + character literals or wide character literals in expected + initializers. + +2025-11-27 Arthur Cohen <[email protected]> + + * typecheck/rust-tyty-subst.h: Remove now useless inclusion. + * typecheck/rust-tyty.h (class TypeBoundPredicate): New, moved from rust-tyty-bounds.h + (class TypeBoundsMappings): Likewise. + * typecheck/rust-tyty-bounds.h: Removed. + 2025-11-25 Lúcio Boari Fleury <[email protected]> * parse/rust-parse-impl.h: Add early exit condition to parsing loop. diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index f28baf01803d..b3dbc89c32df 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,47 @@ +2025-11-27 Jakub Jelinek <[email protected]> + + PR c/121506 + * gcc.dg/pr121506.c: New test. + +2025-11-27 Matthieu Longo <[email protected]> + + * gcc.target/aarch64/build-attributes/build-attribute-define-nok.c: New test. + * gcc.target/aarch64/build-attributes/build-attribute-define-ok.c: New test. + +2025-11-27 Wilco Dijkstra <[email protected]> + + * gcc.target/aarch64/ffs.c: Improve test. + +2025-11-27 Andrew Pinski <[email protected]> + + * c-c++-common/Wstringop-overflow.c: Xfail, PR 122881. + +2025-11-27 Robin Dapp <[email protected]> + + PR tree-optimization/122855 + PR tree-optimization/122850 + * gcc.dg/vect/pr122850.c: New test. + * gcc.dg/vect/pr122855.c: New test. + +2025-11-27 Pan Li <[email protected]> + + * gcc.target/riscv/rvv/autovec/pr121959-run-1.c: Update + the reference for run test. + +2025-11-27 Dhruv Chawla <[email protected]> + + PR tree-optimization/122733 + * gcc.dg/match-shift-cmp-1.c: Update test to only check + equality. + * gcc.dg/match-shift-cmp-2.c: Likewise. + * gcc.dg/match-shift-cmp-3.c: Likewise. + * gcc.dg/match-shift-cmp-4.c: Removed. + +2025-11-27 Richard Biener <[email protected]> + + PR tree-optimization/122885 + * gcc.dg/torture/pr122873.c: New testcase. + 2025-11-26 Jeff Law <[email protected]> Revert: diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog index 3ba5043fb049..a9f4a1f51d96 100644 --- a/libgcc/ChangeLog +++ b/libgcc/ChangeLog @@ -1,3 +1,9 @@ +2025-11-27 Lulu Cheng <[email protected]> + + * config/loongarch/cpuinfo.c (HWCAP_LOONGARCH_LSX): Define + it if it is not defined. + (HWCAP_LOONGARCH_LASX): Likewise. + 2025-11-21 LIU Hao <[email protected]> PR target/122275 diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 833ba0a6d1ba..cb6bd547b25a 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,80 @@ +2025-11-27 Jonathan Wakely <[email protected]> + + * testsuite/performance/23_containers/sort_search/list.cc: Cast + results to void to suppress -Wunused-result warnings from + nodiscard functions. + * testsuite/performance/25_algorithms/equal_deque_iterators.cc: + Likewise. + * testsuite/performance/25_algorithms/search_n.cc: Likewise. + +2025-11-27 Jonathan Wakely <[email protected]> + + * testsuite/Makefile.am: Fix typo in comment. + * testsuite/Makefile.in: Regenerate. + +2025-11-27 Tomasz Kamiński <[email protected]> + + * include/std/ranges (__func_handle::__select): Named function + extracted from local lambda. + (__detail::__func_handle_t): Define using __func_handle::__select. + (__func_handle::_Inplace): Raname _M_ptr to _M_fn. + +2025-11-27 Jonathan Wakely <[email protected]> + + * config/abi/pre/gnu.ver: Adjust exports. + * include/bits/atomic_timed_wait.h (_GLIBCXX_HAVE_PLATFORM_TIMED_WAIT): + Do not define this macro. + (__atomic_wait_address_until_v, __atomic_wait_address_for_v): + Adjust assertions to check that __platform_wait_uses_type is + true. + * include/bits/atomic_wait.h (__waitable): New concept. + (__platform_wait_uses_type): Different separately for platforms + with and without platform wait. + (_GLIBCXX_HAVE_PLATFORM_WAIT): Do not define this macro. + (__wait_value_type): New typedef. + (__wait_result_type): Change _M_val to __wait_value_type. + (__wait_flags): Remove __proxy_wait enumerator. Reduce range + reserved for ABI version by the commented-out value. + (__wait_args_base::_M_old): Change type to __wait_args_base. + (__wait_args_base::_M_obj, __wait_args_base::_M_obj_size): New + data members. + (__wait_args::__wait_args): Set _M_obj and _M_obj_size on + construction. + (__wait_args::_M_setup_wait): Change void* parameter to deduced + type. Adjust bit_cast to work for types of different sizes. + (__wait_args::_M_load_proxy_wait_val): Remove function, replace + with ... + (__wait_args::_M_setup_proxy_wait): New function. + (__wait_args::_S_flags_for): Do not set __proxy_wait flag. + (__atomic_wait_address_v): Adjust assertion to check that + __platform_wait_uses_type is true. + * src/c++20/atomic.cc (_GLIBCXX_HAVE_PLATFORM_WAIT): Define here + instead of in header. Check _GLIBCXX_HAVE_PLATFORM_WAIT instead + of _GLIBCXX_HAVE_PLATFORM_TIMED_WAIT. + (__platform_wait, __platform_notify, __platform_wait_until): Add + unused parameter for _M_obj_size. + (__spin_impl): Adjust for 64-bit __wait_args_base::_M_old. + (use_proxy_wait): New function. + (__wait_args::_M_load_proxy_wait_val): Replace with ... + (__wait_args::_M_setup_proxy_wait): New function. Call + use_proxy_wait to decide at runtime whether to wait on the + pointer directly instead of using a proxy. If a proxy is needed, + set _M_obj and _M_obj_size to refer to its _M_ver member. Adjust + for change to type of _M_old. + (__wait_impl): Wait on _M_obj unconditionally. Pass _M_obj_size + to __platform_wait. + (__notify_impl): Call use_proxy_wait to decide whether to notify + on the address parameter or a proxy + (__spin_until_impl): Adjust for change to type of _M_val. + (__wait_until_impl): Wait on _M_obj unconditionally. Pass + _M_obj_size to __platform_wait_until. + +2025-11-27 Jonathan Wakely <[email protected]> + + * include/bits/semaphore_base.h (__platform_semaphore::_S_max): + Limit to PTRDIFF_MAX to avoid negative values. + * testsuite/30_threads/semaphore/least_max_value.cc: New test. + 2025-11-26 Tomasz Kamiński <[email protected]> PR libstdc++/122864
