https://gcc.gnu.org/g:31d967232a9331ad72571da27550b2f5d7d38523

commit r17-2132-g31d967232a9331ad72571da27550b2f5d7d38523
Author: GCC Administrator <[email protected]>
Date:   Sat Jul 4 00:16:37 2026 +0000

    Daily bump.

Diff:
---
 gcc/ChangeLog           | 136 ++++++++++++++++++++++++++++++++++++++++++++++++
 gcc/DATESTAMP           |   2 +-
 gcc/cp/ChangeLog        |  32 ++++++++++++
 gcc/fortran/ChangeLog   |  15 ++++++
 gcc/objc/ChangeLog      |  19 +++++++
 gcc/testsuite/ChangeLog |  92 ++++++++++++++++++++++++++++++++
 libssp/ChangeLog        |   6 +++
 libstdc++-v3/ChangeLog  |  60 +++++++++++++++++++++
 8 files changed, 361 insertions(+), 1 deletion(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 426d31c9ed3f..01bdbc4fd2d6 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,139 @@
+2026-07-03  Philipp Tomsich  <[email protected]>
+
+       PR tree-optimization/122569
+       * match.pd (clz_msb_iso_table_index): New match pattern.
+       * tree-ssa-forwprop.cc (gimple_clz_msb_iso_table_index): Declare.
+       (simplify_count_zeroes): Recognize the new pattern; route its
+       table validation through the CTZ checkfn.  Relax the element
+       type check to accept integer types up to 64 bits.
+
+2026-07-03  Philipp Tomsich  <[email protected]>
+
+       * match.pd (msb_or_cascade_32, msb_or_cascade_64): New match
+       helpers.
+       (clz_table_index): Rewrite the 32-bit and 64-bit forms to use
+       the cascade helpers.
+
+2026-07-03  Andrew Pinski  <[email protected]>
+
+       PR tree-optimization/106164
+       PR tree-optimization/126042
+       PR tree-optimization/94589
+       * fold-const.cc (combine_comparisons): Split into
+       2 versions. Also handle BIT_AND_EXPR and BIT_IOR_EXPR.
+       * fold-const.h (combine_comparisons): New declaration.
+       * match.pd (`(a CMP1 b) BITOP (a CMP2 b)`): New pattern.
+
+2026-07-03  Georg-Johann Lay  <[email protected]>
+
+       * config/avr/avr.cc (avr_out_plus_1): Handle +/-1 on the
+       lower regs without needing a scratch.
+       * config/avr/avr.md (add<mode>3_clobber, *add<mode>3_clobber)
+       (add<mode>3, *add<mode>3, addpsi3, *addpsi3): Add constraint
+       alternative "Y01 Ym1" for +/-1 without scratch.
+
+2026-07-03  Jeff Law  <[email protected]>
+
+       * config/riscv/riscv.cc (synthesize_add): Utilize shNadd.uw when
+       appropriate.
+
+2026-07-03  Jeff Law  <[email protected]>
+
+       * config/riscv/riscv.cc (and_synthesis): Use riscv_integer_cost rather
+       than riscv_const_insns.  Use rotate+clear_bits+rotate when useful.
+
+2026-07-03  Richard Biener  <[email protected]>
+
+       * tree-vect-slp.cc (vect_bb_vectorization_profitable_p): Make
+       profitabilty decision easier to debug.
+
+2026-07-03  Naveen  <[email protected]>
+
+       PR tree-optimization/102202
+       * tree-call-cdce.cc: Include "tree-ssanames.h", "gimple-fold.h".
+       (len_has_boolean_range_p): New function.
+       (can_shrink_wrap_len_p): New function.
+       (gen_zero_len_conditions): New function.
+       (shrink_wrap_len_call): New function.
+       (shrink_wrap_conditional_dead_built_in_calls): Dispatch to
+       shrink_wrap_one_memset_call for memset calls eligible for the [0, 1]
+       length transform, ahead of the generic LHS and range-test paths.
+       (pass_call_cdce::execute): Collect memset calls satisfying
+       can_shrink_wrap_memset_p as shrink-wrap candidates.
+
+2026-07-03  Kyrylo Tkachov  <[email protected]>
+
+       PR target/120027
+       * config/aarch64/aarch64-sve-builtins-base.cc (svext_bhw_impl::fold):
+       New member function.  Fold the unsigned svextb/svexth/svextw
+       intrinsics to a bitwise AND when the merging form has an all-true
+       predicate.
+
+2026-07-03  Tamar Christina  <[email protected]>
+           Chris Bazley  <[email protected]>
+
+       * expr.cc (store_constructor): Handle VLA vec_init support and generic
+       fall through piecewise copy.
+       * doc/md.texi: Document change
+
+2026-07-03  Jeff Law  <[email protected]>
+
+       * config/riscv/riscv.cc (synthesize_ior_xor): Use riscv_integer_cost
+       rather than riscv_const_insns.
+
+2026-07-03  Oleg Endo  <[email protected]>
+
+       * config/sh/sh.opt.urls: Renegerate.
+       * config/vax/vax.opt.urls: Renegerate.
+
+2026-07-03  Oleg Endo  <[email protected]>
+
+       PR target/55212
+       * config/sh/sh.opt (mlra): Ignore option but keep it around
+       for compatibility.
+       * config/sh/sh.cc (TARGET_LRA_P): Remove.
+       (sh_lra_p): Move definition ...
+       * config/sh/sh-protos.h (sh_lra_p): ... here.  Always return true.
+       * doc/invoke.texi: Remove mention of -mlra for SH.
+
+2026-07-03  Oleg Endo  <[email protected]>
+
+       PR target/55212
+       * config/sh/sh.md (movv2sf, movv2sf_i, unnamed splits): New patterns.
+       * config/sh/sh.cc (sh_hard_regno_mode_ok): Allow V2SF only in fp-regs.
+       (sh_max_mov_insn_displacement): Return 0 for any float mode.
+
+2026-07-03  Kaz Kojima  <[email protected]>
+
+       PR target/55212
+       * config/sh/sh.md (extend<mode>si2_short_mem_disp_z): New
+       insn_and_split.
+       (extend<mode>si2): Use it for LRA.
+       (mov<mode>_store_mem_index, *mov<mode>_store_mem_index): New patterns.
+       (mov<mode>): Use it for LRA.
+       (movsf_ie_store_mem_index, movsf_ie_load_mem_index,
+       *movsf_ie_store_mem_inde, *movsf_ie_load_mem_index): New patterns.
+       (movsf): Use it for LRA.
+
+2026-07-03  Kaz Kojima  <[email protected]>
+
+       PR target/55212
+       * config/sh/predicates.md (pc_relative_load_operand): New predicate.
+       * config/sh/sh-protos.h (sh_movsf_ie_ra_split_p): Remove.
+       (sh_movsf_ie_y_split_p): New proto.
+       (sh_movsf_ie_subreg_multiword_p): New proto.
+       * config/sh/sh.cc: (sh_movsf_ie_ra_split_p): Remove.
+       (sh_movsf_ie_y_split_p): New function.
+       (sh_movsf_ie_subreg_multiword_p): New function.
+       (broken_move): Take movsf_ie_ra into account for fldi cases.
+       * config/sh/sh.md (movdf_i4_F_z): New insn.
+       (movdf): Use it when expanding.
+       (movsf_ie_ra): Use define_insn instead of define_insn_and_split.
+       Adjust alternatives.
+       (movsf_ie_rffr): New insn_and_split.
+       (movsf_ie_F_z, movsf_ie_Q_z, movsf_ie_y): New insns.
+       (movsf): Use new patterns when expanding.
+
 2026-07-02  Pengfei Li  <[email protected]>
 
        * config/aarch64/aarch64.cc
diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP
index e0b5151540e1..d8351f019a66 100644
--- a/gcc/DATESTAMP
+++ b/gcc/DATESTAMP
@@ -1 +1 @@
-20260703
+20260704
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 30498bc352e7..8fb2873c9171 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,35 @@
+2026-07-03  Jakub Jelinek  <[email protected]>
+
+       PR c++/126057
+       * decl.cc (cp_finish_decomp): Set assembler name to
+       <decomp> during error recovery whenever TREE_STATIC
+       rather than just DECL_NAMESPACE_SCOPE_P.
+       * pt.cc (tsubst_stmt): If tsubst_decomp_names fails,
+       set assembler name to <decomp>.
+
+2026-07-03  Jakub Jelinek  <[email protected]>
+
+       PR c++/125826
+       * method.cc: Implement C++29 P2953R5 - Adding restrictions to
+       defaulted assignment operator functions.
+       (maybe_delete_defaulted_fn): For C++29, error instead of
+       deleting always, with the exception of F1 having parmtype
+       const C & and F2 having implicit_parmtype C & and no other
+       non-permitted changes.  Move checks whether defaulted fn
+       should be deleted or ill-formed at all from defaulted_late_check
+       to this function.  Also error for C++29 if
+       FUNCTION_RVALUE_QUALIFIED.
+       (defaulted_late_check): Call maybe_delete_defaulted_fn
+       unconditionally.
+
+2026-07-03  Jakub Jelinek  <[email protected]>
+
+       PR c++/126036
+       * reflect.cc (get_range_elts): Avoid calling finish_compound_literal
+       when processing_template_decl, instead set *non_constant_p and
+       return NULL_TREE.
+       (process_metafunction): Likewise.
+
 2026-07-02  Marek Polacek  <[email protected]>
 
        PR c++/125819
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index 6e08adf7f638..063a77e9db0b 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,18 @@
+2026-07-03  Sandra Loosemore  <[email protected]>
+           Tobias Burnus  <[email protected]>
+
+       * openmp.cc (resolve_omp_clauses_aff_dep_map_cache): Fix
+       indentation.
+
+2026-07-03  Mikael Morin  <[email protected]>
+
+       PR fortran/97592
+       PR fortran/125998
+       * trans-array.cc (gfc_conv_array_parameter): Always create a new
+       descriptor.  Copy lbound and ubound from the original descriptor
+       using matching dimension indexes.  Recalculate stride and
+       offset.
+
 2026-07-03  Jerry DeLisle  <[email protected]>
 
        PR fortran/126018
diff --git a/gcc/objc/ChangeLog b/gcc/objc/ChangeLog
index 99d0e1bbbb2e..35dd1911300a 100644
--- a/gcc/objc/ChangeLog
+++ b/gcc/objc/ChangeLog
@@ -1,3 +1,22 @@
+2026-07-03  Iain Sandoe  <[email protected]>
+
+       PR objc/124260
+       * objc-act.cc (objc_create_temporary_var, objc_build_struct,
+       synth_module_prologue, objc_build_internal_const_str_type,
+       objc_begin_catch_clause, objc_push_parm, synth_self_and_ucmd_args,
+       start_method_def, objc_start_function,
+       get_super_receiver): Use build_lang_decl for Objective-C++.
+       * objc-act.h (objc_build_decl): New.
+       * objc-gnu-runtime-abi-01.cc (gnu_runtime_01_initialize,
+       objc_add_static_instance, handle_class_ref): use build_lang_decl
+       for Objective-C++.
+       * objc-next-runtime-abi-01.cc (next_runtime_01_initialize,
+       next_runtime_abi_01_build_const_string_constructor): Likewise.
+       * objc-next-runtime-abi-02.cc (next_runtime_02_initialize,
+       next_runtime_abi_02_build_const_string_constructor): Likewise.
+       * objc-runtime-shared-support.cc (create_field_decl,
+       start_var_decl): Likewise.
+
 2026-06-28  Kevin Stefanov  <[email protected]>
 
        PR middle-end/125274
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 3bd58b482b58..0cd189245d59 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,95 @@
+2026-07-03  Philipp Tomsich  <[email protected]>
+
+       PR tree-optimization/122569
+       * gcc.dg/tree-ssa/pr122569-3.c: New test.
+
+2026-07-03  Andrew Pinski  <[email protected]>
+
+       PR tree-optimization/106164
+       PR tree-optimization/126042
+       PR tree-optimization/94589
+       * g++.dg/opt/pr94589-5a.C: New test.
+       * gcc.dg/pr94589-5.c: Explictly enable -ftrapping-math.
+       * gcc.dg/pr94589-5a.c: New test.
+
+2026-07-03  Jakub Jelinek  <[email protected]>
+
+       PR c++/126057
+       * g++.dg/cpp2a/decomp11.C: New test.
+
+2026-07-03  Jakub Jelinek  <[email protected]>
+
+       PR c++/125826
+       * g++.dg/cpp0x/defaulted51.C: Adjust expected diagnostics
+       for C++29.
+       * g++.dg/cpp0x/defaulted55.C: Likewise.
+       * g++.dg/cpp0x/defaulted56.C: Likewise.
+       * g++.dg/cpp0x/defaulted57.C: Likewise.
+       * g++.dg/cpp0x/defaulted63.C: Likewise.
+       * g++.dg/cpp0x/defaulted64.C: Likewise.
+       * g++.dg/cpp0x/defaulted65.C: Likewise.
+       * g++.dg/cpp0x/defaulted66.C: Likewise.
+       * g++.dg/cpp0x/defaulted67.C: Likewise.
+       * g++.dg/cpp0x/defaulted68.C: Likewise.
+       * g++.dg/cpp1y/defaulted2.C: Likewise.
+       * g++.dg/cpp29/defaulted1.C: New test.
+       * g++.dg/cpp29/defaulted2.C: New test.
+       * g++.dg/cpp29/defaulted3.C: New test.
+       * g++.dg/cpp29/defaulted4.C: New test.
+       * g++.dg/cpp29/defaulted5.C: New test.
+       * g++.dg/cpp29/defaulted6.C: New test.
+
+2026-07-03  Jakub Jelinek  <[email protected]>
+
+       PR c++/126036
+       * g++.dg/reflect/pr126036.C: New test.
+
+2026-07-03  Jeff Law  <[email protected]>
+
+       * gcc.target/riscv/and-synthesis-3.c: New test.
+
+2026-07-03  Naveen  <[email protected]>
+
+       PR tree-optimization/102202
+       * gcc.dg/pr102202-1.c: New test.
+       * gcc.dg/pr102202.c: New test.
+       * gcc.target/aarch64/pr100518.c: Modify to handle the warning.
+
+2026-07-03  Kyrylo Tkachov  <[email protected]>
+
+       PR target/120027
+       * gcc.target/aarch64/sve/acle/general/pr120027.c: New test.
+
+2026-07-03  Mikael Morin  <[email protected]>
+
+       PR fortran/97592
+       PR fortran/125998
+       * gfortran.dg/contiguous_17.f90: New test.
+
+2026-07-03  Tamar Christina  <[email protected]>
+           Chris Bazley  <[email protected]>
+
+       * gcc.target/aarch64/sve/copsi.c: New test.
+
+2026-07-03  Oleg Endo  <[email protected]>
+
+       PR target/81426
+       * gcc.target/sh/pr81426.c: New test.
+
+2026-07-03  Oleg Endo  <[email protected]>
+
+       PR target/34777
+       * gcc.target/sh/torture/pr34777-1.c: New test.
+
+2026-07-03  Oleg Endo  <[email protected]>
+
+       PR target/124778
+       * gcc.target/sh/torture/pr124778.c: New test.
+
+2026-07-03  Jeff Law  <[email protected]>
+
+       * gcc.target/riscv/xor-synthesis-4.c: New test.
+
 2026-07-03  Jerry DeLisle  <[email protected]>
 
        PR fortran/126018
diff --git a/libssp/ChangeLog b/libssp/ChangeLog
index 022fc1d74416..a88e98bdf15a 100644
--- a/libssp/ChangeLog
+++ b/libssp/ChangeLog
@@ -1,3 +1,9 @@
+2026-07-03  WHR  <[email protected]>
+           Thomas Schwinge  <[email protected]>
+
+       PR other/116547
+       * ssp.c: Include stdlib.h for alloca(3).
+
 2026-06-29  Pietro Monteiro  <[email protected]>
 
        PR bootstrap/103459
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 0083a3ef6ad1..ab31a93cfded 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,63 @@
+2026-07-03  Nathan Myers  <[email protected]>
+
+       PR libstdc++/126072
+       * testsuite/20_util/allocator/allocate_at_least.cc: Fix.
+
+2026-07-03  Tomasz Kamiński  <[email protected]>
+
+       * include/std/format (_Pres_type::_Pres_p, _Pres_type::_Pres_P):
+       Change the values to which they are defined.
+       (__formatter_fp::format): Append 0x/0X if _M_type is _Pres_p/_Pres_P
+       respectively.
+       (__formatter_fp::_M_localize): Add __offset parameter representing
+       start of number value (after sign and prefix).
+       (__formatter_ptr::parse, __formatter_ptr::_M_default)
+       (__formatter_ptr::__formatter_ptr): Remove unused __type parameter,
+       and replace use of _Pres_p/P with _Pres_x/X.
+
+2026-07-03  Tomasz Kamiński  <[email protected]>
+
+       * include/std/format (__formatter_int::format)
+       (__formatter_fp::format): For unrecognised _M_spec._M_type
+       values (default branch of switch) fallthrou to _Pres_none.
+
+2026-07-03  Tomasz Kamiński  <[email protected]>
+
+       * include/bits/optional_ref.h (optional<_Tp&>::_S_from_ptr):
+       Define.
+       * include/bits/version.def (exception_ptr_cast): Bump value
+       to 202603.
+       * include/bits/version.h: Regenerate.
+       * libsupc++/exception_ptr.h (exception_ptr_cast)
+       [__cpp_lib_exception_ptr_cast >= 202603L]: Change return
+       type to optional<const _Ex&>.
+       * testsuite/18_support/exception_ptr/exception_ptr_cast.cc:
+       Modify to handle change in the return type, and add test
+       for type convertible to optional to reference to that value.
+
+2026-07-03  Tomasz Kamiński  <[email protected]>
+
+       * include/Makefile.am (bits/optional_ref.h): Add.
+       * include/Makefile.in: Regenerate.
+       * include/bits/inplace_tags.h: New file.
+       * include/bits/utility.h (std::in_place_t, std::in_place)
+       (std::in_place_type_t, std::in_place_type)
+       (std::in_place_index_t, in_place_index): Move to
+       bits/inplace_tags.h.
+       * include/bits/optional_ref.h: New file.
+       * include/std/optional (std::nullopt_t, std::nullopt)
+       (std::__is_valid_contained_type_for_optional)
+       (std::_Optional_func, std::optional<_Tp&>)
+       (std::__is_optional_ref_v, std::__optional_ref_base):
+       Moved to bits/optional_ref.h.
+       (optional<_Tp&>::begin, optional<_Tp&>::end)
+       (optional<_Tp&>::value, optional<_Tp&>::value_or)
+       (optional<_Tp&>::and_then, optional<_Tp&>::transform)
+       (optional<_Tp&>::optional(_Optional_func<_Fn>, _Value)):
+       Define out of line.
+       (optional<_Tp&>::or_else): Define out of line, and
+       change requires from invocable<_Fn> to is_invocable_v<_Fn>.
+
 2026-07-02  Yuao Ma  <[email protected]>
 
        * include/bits/basic_string.h(append, assign): Add new

Reply via email to