https://gcc.gnu.org/g:fbeb2bd1a71804b0a13f30f149633ed8de5382e9

commit r17-2073-gfbeb2bd1a71804b0a13f30f149633ed8de5382e9
Author: GCC Administrator <[email protected]>
Date:   Thu Jul 2 00:16:40 2026 +0000

    Daily bump.

Diff:
---
 config/ChangeLog             |   5 +
 contrib/ChangeLog            |   8 ++
 contrib/regression/ChangeLog |   8 ++
 gcc/ChangeLog                | 259 +++++++++++++++++++++++++++++++++++++++++++
 gcc/DATESTAMP                |   2 +-
 gcc/ada/ChangeLog            |   7 ++
 gcc/cp/ChangeLog             |  12 ++
 gcc/fortran/ChangeLog        |  20 ++++
 gcc/testsuite/ChangeLog      |  88 +++++++++++++++
 libgfortran/ChangeLog        |   7 ++
 libiberty/ChangeLog          |   4 +
 libstdc++-v3/ChangeLog       | 135 ++++++++++++++++++++++
 12 files changed, 554 insertions(+), 1 deletion(-)

diff --git a/config/ChangeLog b/config/ChangeLog
index 13976b6fd6d6..c95413a37316 100644
--- a/config/ChangeLog
+++ b/config/ChangeLog
@@ -1,3 +1,8 @@
+2026-07-01  Rainer Orth  <[email protected]>
+
+       * ax_pthread.m4 (ax_pthread_check_macro) <solaris*>: Only require
+       _REENTRANT before Solaris 11.4
+
 2026-06-29  Pietro Monteiro  <[email protected]>
 
        PR bootstrap/103459
diff --git a/contrib/ChangeLog b/contrib/ChangeLog
index 282efdcbcf95..feb468091a46 100644
--- a/contrib/ChangeLog
+++ b/contrib/ChangeLog
@@ -1,3 +1,11 @@
+2026-07-01  Rainer Orth  <[email protected]>
+
+       * config-list.mk (sparc64-sun-solaris2.11): Remove --with-gnu-ld.
+
+2026-07-01  Rainer Orth  <[email protected]>
+
+       * config-list.mk (sparc64-sun-solaris2.11): Remove --with-gnu-as.
+
 2026-06-09  Jakub Jelinek  <[email protected]>
 
        * gcc-changelog/git_update_version.py (ignored_commits): Add
diff --git a/contrib/regression/ChangeLog b/contrib/regression/ChangeLog
index 82abb1f96566..bdb450613729 100644
--- a/contrib/regression/ChangeLog
+++ b/contrib/regression/ChangeLog
@@ -1,3 +1,11 @@
+2026-07-01  Rainer Orth  <[email protected]>
+
+       * btest-gcc.sh (withopt): Likewise.
+
+2026-07-01  Rainer Orth  <[email protected]>
+
+       * btest-gcc.sh (withopt): Remove --with-gnu-as.
+
 2023-11-23  Hans-Peter Nilsson  <[email protected]>
 
        * btest-gcc.sh (--handle-xpass-as-fail): New option.
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index e525eba8c957..007052719320 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,262 @@
+2026-07-01  Iain Sandoe  <[email protected]>
+
+       PR objc/124260
+       * config/darwin.cc (darwin_objc2_section): Also allow meta data
+       in const_data.
+       (darwin_label_is_anonymous_local_objc_name): Make ClassList linker-
+       visible.
+       (darwin_file_end): Update comments on the ImageInfo flags.  Do not
+       claim we have signed pointers.
+
+2026-07-01  Stefan Schulze Frielinghaus  <[email protected]>
+
+       * config/s390/s390.md: Annotate mnemonic for
+       extzv_<mode>_{srl,sll}<clobbercc_or_nocc>.
+
+2026-07-01  Icenowy Zheng  <[email protected]>
+
+       PR target/126049
+       * config/riscv/autovec.md: Change fmin/fmax reduction initial
+       value from inf/-inf to NaN for proper semantics of corresponding
+       C funtion.
+
+2026-07-01  Robin Dapp  <[email protected]>
+
+       * doc/md.texi: Document new behavior.
+       * lra-constraints.cc (get_dependent_filter): Call filter with
+       INVALID_REGNUM ref op instead of allowing everything.
+
+2026-07-01  Thomas Schwinge  <[email protected]>
+
+       * config/gcn/gcn.h (ASM_V_SPEC): Define.
+
+2026-07-01  Alfie Richards  <[email protected]>
+
+       * tree-vect-loop-manip.cc (vect_set_loop_condition_normal):
+       Check if loop_vinfo is null before dereference.
+
+2026-07-01  Roger Sayle  <[email protected]>
+
+       * config/i386/i386-features.cc (compute_convert_gain) <ZERO_EXTEND>:
+       Provide costs for the new transformation.
+       (convert_insn): Implement *zero_extendsidi2 using the backend's
+       vec_setv2di_0_zero_extendsi_1 pattern (i.e. movq mem, %xmm).
+       (general_scalar_to_vector_candidate_p): Consider the pattern
+       (zero_extend:DI (mem:SI ...)) to be a candidate for DImode STV.
+
+2026-07-01  Roger Sayle  <[email protected]>
+
+       * simplify-rtx.cc (simplify_context::simplify_ternary_operation)
+       <case VEC_MERGE>: Simplify a vec_merge of a vec_merge with a
+       repeated operand.
+
+2026-07-01  Stefan Schulze Frielinghaus  <[email protected]>
+
+       PR target/126054
+       * config/s390/s390.md: Fix
+       extzv_<mode>_{srl,sll}<clobbercc_or_nocc> by adjusting the
+       bitmasks in the output templates.
+
+2026-07-01  Jakub Jelinek  <[email protected]>
+
+       * config/aarch64/tuning_models/neoversev2.h
+       (neoversev2_dispatch_constraint_callback): Remove spurious semicolon.
+       * config/aarch64/aarch64-elf-metadata.cc
+       (gnu_property_features_to_string): Likewise.
+       * config/aarch64/aarch64-sve-builtins-shapes.cc (SHAPE (write_zt),
+       SHAPE (write_lane_zt)): Likewise.
+
+2026-07-01  Jakub Jelinek  <[email protected]>
+
+       * config/aarch64/aarch64-neon-builtins-base.h: Use
+       namespace aarch64_acle { namespace functions { ... } } instead of
+       C++17 namespace aarch64_acle::functions { ... }.
+       * config/aarch64/aarch64-neon-builtins-shapes.h: Use
+       namespace aarch64_acle { namespace shapes { ... } } instead of
+       C++17 namespace aarch64_acle::shapes { ... }.
+       * config/aarch64/aarch64-neon-builtins-shapes.cc: Likewise.
+
+2026-07-01  Richard Biener  <[email protected]>
+
+       PR tree-optimization/125040
+       * tree-ssa-pre.cc (clean): Iterate processing.
+
+2026-07-01  Alfie Richards  <[email protected]>
+
+       * tree-ssa-loop-manip.h: Add argument to create_iv.
+       * tree-ssa-loop-manip.cc (create_iv): Change step to not
+       necessarily be loop invariant.
+       * tree-vect-data-refs.cc (bump_vector_ptr): Remove logic for
+       updating use-def chain.
+       * tree-vect-loop-manip.cc (vect_set_loop_controls_directly):
+       Change to use LOOP_VINFO_IV_INCREMENT instead of VF.
+       (vect_set_loop_condition_partial_vectors_avx512):
+       Change to use LOOP_VINFO_IV_INCREMENT instead of VF.
+       (vect_gen_vector_loop_niters): Update to handle
+       LOOP_VINFO_IV_INCREMENT.
+       (vect_get_loop_iv_increment): New function.
+       * tree-vect-loop.cc (vectorizable_induction): Update to use
+       LOOP_VINFO_IV_INCREMENT instead of VF, and remove SELECT_VL
+       logic.
+       (vect_update_ivs_after_vectorizer_for_early_breaks):
+       Update to use LOOP_VINFO_IV_INCREMENT over VF and move IV
+       update to vect_iv_increment_position.
+       (vect_transform_loop): Add initialization of
+       LOOP_VINFO_IV_INCREMENT.
+       * tree-vect-stmts.cc (vect_get_strided_load_store_ops):
+       Update to use dr_increment and dr_bump, remove SELECT_VL logic.
+       (vect_get_data_ptr_increment): Change to return the increment
+       needed to advance the pointer to the next iteration.
+       (vect_get_data_ptr_bump): New function.
+       (vectorizable_scan_store): Update to use vect_get_data_ptr_bump
+       and to remove SELECT_VL logic.
+       (vectorizable_store): Update to use vect_get_data_ptr_bump and
+       vect_get_data_ptr_increment.
+       (vectorizable_load): Update to use vect_get_data_ptr_bump and
+       vect_get_data_ptr_increment.
+       * tree-vectorizer.h (loop_vec_info): Add iv_increment field.
+       (LOOP_VINFO_IV_INCREMENT): New macro.
+       (LOOP_VINFO_IV_INCREMENT_INVARIANT_P): New macro.
+       (bump_vector_ptr): Remove incr_ptr argument.
+       (vect_get_loop_iv_increment): New function.
+
+2026-07-01  Alfie Richards  <[email protected]>
+
+       * tree-vect-data-refs.cc (vect_create_data_ref_ptr): Check for null
+       pntr_incr.
+
+2026-07-01  Richard Biener  <[email protected]>
+
+       PR tree-optimization/125040
+       * tree-ssa-pre.cc (sorted_array_from_bitmap_set): Compute
+       the set of entries to the value graph before building the
+       final sorted expression set.
+
+2026-07-01  Rainer Orth  <[email protected]>
+
+       * configure.ac: Remove --with-gnu-ld, gnu_ld_flag.
+       * configure: Regenerate.
+       * config.gcc: Remove gnu_ld_flag.
+       * doc/install.texi (Configuration, --with-gnu-ld): Remove.
+       (Specific, all ELF targets): Remove GNU ld link.
+       * doc/invoke.texi (IA-64 Options, -mgnu-ld): Remove comment.
+
+2026-07-01  Rainer Orth  <[email protected]>
+
+       * config.gcc: Remove gnu_ld.
+       <*-*-vms*>: Check ld_flavor instead of gnu_ld.
+       <ia64*-*-elf*> (target_cpu_default): Always add MASK_GNU_LD.
+       <mips*-*-*> (target_cpu_default2): Always add
+       MASK_SPLIT_ADDRESSES.
+       <hppa*64*-*-hpux11*> (target_cpu_default): Check ld_flavor instead
+       of gnu_ld.  Move ...
+       * configure.ac: ... here.
+       Remove gnu_ld.
+       Check ld_flavor instead of gnu_ld.
+       (gcc_cv_ld_static_dynamic) <*-*-hpux*>: Don't check gnu_ld.
+       (gcc_cv_ld_version_script): Check ld --help for --version-script.
+       (gcc_cv_ld_soname): Check ld --help for -soname.
+       <*-*-darwin*>: Always use Darwin version.
+       <*-*-solaris2*>: Always use Solaris version with Solaris ld.
+       (gcc_cv_ld_demangle): Don't check gnu_ld.
+       * configure: Regenerate.
+
+2026-07-01  Rainer Orth  <[email protected]>
+
+       * configure.ac (HAVE_GNU_LD): Remove.
+       (gcc_cv_ld_at_file): New test.
+       * configure: Regenerate.
+       * config.in: Regenerate.
+       * collect2.cc: Check HAVE_LD_AT_FILE instead of HAVE_GNU_LD.
+
+2026-07-01  Rainer Orth  <[email protected]>
+
+       * configure.ac: Remove --with-gnu-as, gas_flag.
+       * configure: Regenerate.
+       * config.gcc: Remove gas_flag.
+       * doc/install.texi (Configuration, --with-gnu-as): Remove.
+       (Specific, hppa64-hp-hpux11*): Remove --with-gnu-as reference.
+       (Specific, ia64-*-hpux*): Likewise.  Recomment --with-as instead.
+       * doc/invoke.texi (IA-64 Options, -mgnu-as): Remove comment.
+
+2026-07-01  Rainer Orth  <[email protected]>
+
+       * acinclude.m4 (gcc_GAS_FLAGS): Check as_flavor instead of gas.
+       * config.gcc: Remove gas.
+       <ia64*-*-elf*> (target_cpu_defaults): Always add MASK_GNU_AS.
+       <ia64-hp-*vms*>: Likewise.
+       <hppa*-*-*> (target_cpu_default2): Always add MASK_GAS.
+       * configure.ac: Remove gas.
+       * configure: Regenerate.
+
+2026-07-01  Eric Botcazou  <[email protected]>
+
+       * tree-ssa-structalias.cc (set_uids_in_ptset): If ANYTHING is
+       present in the ESCAPED_RETURN solution, record that the global
+       solution has an escaped heap if FROM contains a heap variable.
+
+2026-07-01  Rainer Orth  <[email protected]>
+
+       * gcc.cc (asm_options) [HAVE_GNU_AS]: Move to ...
+       (ASM_V_SPEC) ... this.
+       * config/nvptx/nvptx.h (ASM_SPEC): Rename to ASM_V_SPEC.
+       Adjust comment.
+       * config/rs6000/aix.h [HAVE_AIX_AS] (ASM_V_SPEC): Define.
+       * config/sol2.h (ASM_SPEC_BASE): Move -v handling to ...
+       [HAVE_SOLARIS_AS] (ASM_V_SPEC): ... this.  Also handle -w.
+       * doc/tm.texi.in (Driver, ASM_V_SPEC): Document.
+       * doc/tm.texi: Regenerate.
+       * config/darwin.h (ASM_OPTIONS): Remove.
+       * config/i386/darwin.h (ASM_SPEC): Remove ASM_OPTIONS.
+       * config/ia64/hpux.h (AS_NEEDS_DASH_FOR_PIPED_INPUT): Remove.
+       * configure.ac (HAVE_GNU_AS): Remove.
+       * configure: Regenerate.
+       * config.in: Regenerate.
+
+2026-07-01  Rainer Orth  <[email protected]>
+
+       * acinclude.m4: Check as_flavor, ld_flavor instead of solaris_as,
+       solaris_ld.
+       * configure.ac: Likewise.
+       (as_flavor, ld_flavor): New variables.
+       Adapt messages.
+       Set based on as, ld version output.
+       (HAVE_AIX_AS): Define.
+       * configure: Regenerate.
+       * config.in: Regenerate.
+
+2026-07-01  Haochen Jiang  <[email protected]>
+
+       * common/config/i386/cpuinfo.h
+       (get_available_features): Remove AMX-TF32.
+       * common/config/i386/i386-common.cc
+       (OPTION_MASK_ISA2_AMX_TF32_SET): Removed.
+       (OPTION_MASK_ISA2_AMX_TF32_UNSET): Ditto.
+       (OPTION_MASK_ISA2_AMX_TILE_UNSET): Remove AMX_TF32.
+       (ix86_handle_option): Ditto.
+       * common/config/i386/i386-cpuinfo.h
+       (enum processor_features): Remove FEATURE_AMX_TF32.
+       * common/config/i386/i386-isas.h: Remove AMX-TF32.
+       * config.gcc: Do not include amxtf32intrin.h.
+       * config/i386/amxtf32intrin.h: Remove AMX-TF32 intrins.
+       * config/i386/cpuid.h (bit_AMX_TF32): Removed.
+       * config/i386/i386-c.cc
+       (ix86_target_macros_internal): Remove AMX_TF32.
+       * config/i386/i386-isa.def (AMX_TF32): Removed.
+       * config/i386/i386-options.cc
+       (ix86_valid_target_attribute_inner_p): Remove AMX-TF32.
+       * config/i386/i386.opt: Ditto.
+       * config/i386/i386.opt.urls: Ditto.
+       * config/i386/immintrin.h: Do not include amxtf32intrin.h.
+       * doc/extend.texi: Remove amx-tf32.
+       * doc/invoke.texi: Ditto.
+       * doc/sourcebuild.texi: Ditto.
+
+2026-07-01  Haochen Jiang  <[email protected]>
+
+       * config/i386/i386.h (PTA_DIAMONDRAPIDS): Remove PTA_AMX_TF32.
+       * doc/invoke.texi: Correct documentation.
+
 2026-06-30  Oleg Endo  <[email protected]>
 
        PR target/55212
diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP
index e74af993156c..ad088ccf4d9e 100644
--- a/gcc/DATESTAMP
+++ b/gcc/DATESTAMP
@@ -1 +1 @@
-20260701
+20260702
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index 4721976cc5a9..11bc834ed5f8 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -1,3 +1,10 @@
+2026-07-01  Rainer Orth  <[email protected]>
+
+       * link.c: Check HAVE_LD_AT_FILE instead of HAVE_GNU_LD.
+       Update comment.
+       [VMS]: Remove.
+       [__svr4__ && __i386__]: Remove.
+
 2026-06-29  Eric Botcazou  <[email protected]>
 
        * gcc-interface/trans.cc (gnat_to_gnu): Return a NULL_EXPR for the
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 696c180c2e38..7504ec4232ab 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,15 @@
+2026-07-01  Jason Merrill  <[email protected]>
+
+       PR c++/124584
+       * decl.cc (cp_finish_decl): Use get_temp_regvar for decomp guards.
+
+2026-07-01  Jason Merrill  <[email protected]>
+
+       PR c++/121094
+       PR c++/117259
+       * coroutines.cc (replace_proxy): Handle TARGET_EXPR from.
+       (flatten_await_stmt): Pass it.
+
 2026-06-30  Jakub Jelinek  <[email protected]>
 
        PR c++/126007
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index 7692846a6295..ee4438c6a5ba 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,23 @@
+2026-07-01  Paul Thomas  <[email protected]>
+           Jerry DeLisle  <[email protected]>
+
+       PR fortran/121972
+       * expr.cc (has_parameterized_comps): Return false if the DT
+       is neither a pdt_type nor has PDT components. Correct the
+       logic for a PDT component.
+       * trans-expr.cc (alloc_scalar_allocatable_for_assignment): Use
+       calloc for types with paramterized components as well as those
+       with allocatable components.
+       * trans-stmt.cc (gfc_trans_allocate): Merge the allocation of
+       parameterized components of PDTs and class PDTs into one block
+       If an allocate type_spec is present that has allocatable comps
+       where the class declared type does not, nullify the allocatable
+       components.
+
+2026-07-01  Jakub Jelinek  <[email protected]>
+
+       * check.cc (get_ul_from_cst_cl): Remove spurious semicolon.
+
 2026-06-30  Paul Thomas  <[email protected]>
            Jerry DeLisle  <[email protected]>
 
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 8f3fd16d0bf6..d889dd210a83 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,91 @@
+2026-07-01  Iain Sandoe  <[email protected]>
+
+       PR objc/124260
+       * objc.dg/image-info.m: Test revised flags value for ABI-2.
+
+2026-07-01  Paul Thomas  <[email protected]>
+           Jerry DeLisle  <[email protected]>
+
+       PR fortran/121972
+       * gfortran.dg/asan/pdt_46.f03: Copy of original with tree dump
+       for counts of frees, mallocs and callocs removed.
+       * gfortran.dg/asan/pdt_77.f03: Ditto.
+       * gfortran.dg/pdt_46.f03: Calloc count added, corresponding to
+       reduction in mallocs..
+       * gfortran.dg/pdt_50.f03: Ditto.
+
+2026-07-01  Icenowy Zheng  <[email protected]>
+
+       PR target/126049
+       * gcc.target/riscv/rvv/autovec/pr126049.c: New.
+
+2026-07-01  Jason Merrill  <[email protected]>
+
+       PR c++/124584
+       * g++.dg/coroutines/torture/tuple-decomp-pr124584.C: New test.
+
+2026-07-01  Jason Merrill  <[email protected]>
+
+       PR c++/121094
+       PR c++/117259
+       * g++.dg/coroutines/pmf-121094.C: New test.
+
+2026-07-01  Roger Sayle  <[email protected]>
+
+       * gcc.target/i386/sse2-stv-6.c: New test case.
+
+2026-07-01  Roger Sayle  <[email protected]>
+
+       * gcc.target/i386/avx2-vpblendd128-3.c: New test case.
+
+2026-07-01  Stefan Schulze Frielinghaus  <[email protected]>
+
+       PR target/126054
+       * gcc.target/s390/pr126054.c: New test.
+
+2026-07-01  Richard Biener  <[email protected]>
+
+       PR tree-optimization/125040
+       * gcc.dg/torture/pr125040.c: New testcase.
+
+2026-07-01  Jeevitha Palanisamy  <[email protected]>
+
+       * gcc.target/powerpc/vsx_arith_builtin-1.c: Remove inline asm
+       that forces operands into FPRs.
+       * gcc.target/powerpc/vsx_arith_builtin-2.c: Likewise.
+       * gcc.target/powerpc/vsx_arith_vect_1.c: Likewiswe.
+
+2026-07-01  Alfie Richards  <[email protected]>
+
+       * gcc.target/riscv/rvv/autovec/pr112399.c: Update for different
+       scheduling.
+
+2026-07-01  Rainer Orth  <[email protected]>
+
+       * gcc.misc-tests/outputs.exp (gld): Update comment.
+
+2026-07-01  Eric Botcazou  <[email protected]>
+
+       * gnat.dg/opt109.adb: New test.
+       * gnat.dg/opt109_pkg.ads, gnat.dg/opt109_pkg.adb: New helper.
+
+2026-07-01  Haochen Jiang  <[email protected]>
+
+       * g++.dg/other/i386-2.C: Remove AMX-TF32 test.
+       * g++.dg/other/i386-3.C: Ditto.
+       * gcc.target/i386/amx-check.h: Ditto.
+       * gcc.target/i386/funcspec-56.inc: Ditto.
+       * gcc.target/i386/sse-12.c: Ditto.
+       * gcc.target/i386/sse-13.c: Ditto.
+       * gcc.target/i386/sse-14.c: Ditto.
+       * gcc.target/i386/sse-22.c: Ditto.
+       * gcc.target/i386/sse-23.c: Ditto.
+       * lib/target-supports.exp: Ditto.
+       * g++.target/i386/pr122446-amxtf32.C: Removed.
+       * gcc.target/i386/amxtf32-asmatt-1.c: Ditto.
+       * gcc.target/i386/amxtf32-asmintel-1.c: Ditto.
+       * gcc.target/i386/amxtf32-mmultf32ps-2.c: Ditto.
+
 2026-06-30  Abhishek Kaushik  <[email protected]>
 
        * gcc.target/aarch64/sbfiz-widen-mult-1.c: New test.
diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog
index 2767064164bc..2efe779e8c12 100644
--- a/libgfortran/ChangeLog
+++ b/libgfortran/ChangeLog
@@ -1,3 +1,10 @@
+2026-07-01  Rainer Orth  <[email protected]>
+
+       * configure: Regenerate.
+       cherry picked from approved upstream pull request
+       AX_PTHREAD: Fix pthread detection on Solaris 11.4
+       https://github.com/autoconf-archive/autoconf-archive/pull/341
+
 2026-06-29  Pietro Monteiro  <[email protected]>
 
        PR bootstrap/103459
diff --git a/libiberty/ChangeLog b/libiberty/ChangeLog
index fb4e7741544a..6a0287436473 100644
--- a/libiberty/ChangeLog
+++ b/libiberty/ChangeLog
@@ -1,3 +1,7 @@
+2026-07-01  Alan Modra  <[email protected]>
+
+       * cp-demangle.c (d_compact_number): Avoid signed overflow.
+
 2026-06-29  Pietro Monteiro  <[email protected]>
 
        PR bootstrap/103459
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index bcecd1f9561b..92d5f6581872 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,138 @@
+2026-07-01  Matthias Kretz  <[email protected]>
+
+       * include/Makefile.am: Add bits/simd_bit.h, bits/simd_complex.h,
+       and bit/simd_math.
+       * include/Makefile.in: Regenerate.
+       * include/bits/simd_bit.h: New file.
+       * include/bits/simd_complex.h: New file.
+       * include/bits/simd_details.h (__complex_like): New concept.
+       (__vectorizable): Extend for complex types.
+       (_AbiVariant): Add _CxIleav and _CxCtgus variants.
+       (_ScalarAbi, _Abi): Add _S_is_cx_ileav and _S_is_cx_ctgus
+       members.
+       (_ArchTraits::_M_have_addsub): New.
+       (__native_abi): For __complex_like default to _CxIleav _Abi.
+       Derive the size from the native size for the complex's
+       value_type.
+       (__abi_rebind): Implement rebind to and from complex.
+       (__is_mask_conversion_explicit): Take _Cx* _AbiVariant into
+       account.
+       (__value_preserving_convertible_to): Also allow conversion to
+       complex.
+       (__simd_unsigned_integer): New.
+       (__simd_complex_value_type, __simd_complex): New.
+       * include/bits/simd_loadstore.h (unchecked_load): Use a cast to
+       the complex's value_type for converting loads to __complex_like.
+       * include/bits/simd_mask.h (basic_mask): Constrain partial
+       specializations to non-complex ABI tags.
+       (basic_mask::basic_mask): Add conversion from _CxIleav ABIs.
+       (_M_to_uint): Add option to interpret two mask elements as one
+       result bit. Make use of __x86_cvt_vecmask_to_bitmask.
+       (basic_mask::basic_mask): Add conversion from _CxCtgus and
+       _CxIleav masks.
+       (__select_impl): The complex specialization of basic_vec needs
+       _S_concat instead of _S_init.
+       (_M_reduce_count): Implement recursive reduction.
+       * include/bits/simd_mask_reductions.h (reduce_count): Fall back
+       to _M_reduce_count() for mask types without unary minus.
+       * include/bits/simd_math.h: New file.
+       * include/bits/simd_vec.h (basic_vec): Constrain partial
+       specializations to !__complex_like.
+       * include/bits/simd_x86.h (__x86_cvt_vecmask_to_bitmask): New.
+       * include/bits/vec_ops.h (__is_const_known): __complex_like
+       arguments are known if real and imag are known.
+       (_S_complex_negate_real, _S_complex_negate_imag, _S_addsub)
+       (_S_complex_real_is_const_known_zero)
+       (_S_complex_imag_is_const_known_zero): New.
+       * include/bits/version.def: Add simd_complex.
+       * include/bits/version.h: Regenerate.
+       * include/std/simd: Ask for simd_complex feature macro. Include
+       bits/simd_bit.h, bits/simd_complex.h, and bits/simd_math.h.
+       * testsuite/std/simd/arithmetic.cc: Enable tests for complex
+       which needs complex_init.h.
+       * testsuite/std/simd/complex_init.h: Helper for passing complex
+       values as template arguments.
+       * testsuite/std/simd/create_tests.h: Add float16_t, and three
+       complex types.
+       * testsuite/std/simd/mask2.cc: Add complex test types.
+       * testsuite/std/simd/simd_bit.cc: New test.
+       * testsuite/std/simd/simd_bit_expensive.cc: New test.
+       * testsuite/std/simd/stores.cc: Guard converting stores from
+       complex.
+       * testsuite/std/simd/test_setup.h (any_type_of): New.
+       (complex_like): New.
+       (bit_equal): Handle multi-reg and complex arguments.
+       (cx_isinf): New.
+       (equal_with_nan_and_inf_fixup): Handle complex types.
+       (is_const_known): Add std::complex overload.
+       (test_iota): Add support for std::complex.
+       * testsuite/std/simd/traits_common.cc: Add complex test types.
+       Test that instantiation of complete classes is well-formed.
+       * testsuite/std/simd/traits_impl.cc: Add complex test types.
+       Test __complex_like. Add a test that _CxIleav is dropped when
+       rebinding to the member of a _CxIleav mask.
+
+2026-07-01  Matthias Kretz  <[email protected]>
+
+       * include/bits/simd_details.h (_ScalarAbi): Remove.
+       (__scalar_abi_tag): Identify _Abi<N, N> as scalar now.
+       (__native_abi): Replace _ScalarAbi<1> with _Abi_t<1, 1, ...>.
+       (__abi_rebind): Refactor rebinding from/to __scalar_abi_tag.
+       * include/bits/simd_mask.h (_S_use_bitmask): Only true if
+       !_S_is_scalar.
+       (_M_and_neighbors, _M_or_neighbors): Add case for _S_is_scalar
+       where the and/or must be executed one step earlier.
+       (_M_reduce_min_index, _M_reduce_max_index): Delete dead code.
+       * include/bits/simd_vec.h (_S_use_bitmask): Inherit the value
+       from the first data member.
+       * testsuite/std/simd/traits_impl.cc: Adjust for the removal of
+       _ScalarAbi.
+
+2026-07-01  Jonathan Wakely  <[email protected]>
+
+       * src/c++20/tzdb.cc (_Node::NumLeapSeconds::set_atomically):
+       Rename to set and define unconditionally.
+       (_Node::NumLeapSeconds::set_locked): Define unconditionally.
+
+2026-07-01  Tomasz Kamiński  <[email protected]>
+           Álvaro Begué  <[email protected]>
+
+       PR libstdc++/124853
+       * src/c++20/tzdb.cc
+       (time_zone::_M_get_sys_info): Extract code blocks to
+       separate functions, and invoke them.
+       (<unnamed>::find_active_rule): Modify algorithm to
+       handle cascading saves.
+       (<unnamed>::find_first_std): Simplified implementation
+       benefiting from reordering of rules.
+       (chrono::reload_tzdb): Sort rules by name, from and save.
+       * testsuite/std/time/time_zone/wall_cascade.cc: New test.
+
+2026-07-01  Anlai Lu  <[email protected]>
+
+       * testsuite/std/time/ostream_insert.cc: New test.
+
+2026-07-01  Jonathan Wakely  <[email protected]>
+
+       PR libstdc++/125467
+       * src/c++20/tzdb.cc (tzdb::current_zone): Use realpath to
+       resolve the /etc/localtime symlink instead of readlink.
+
+2026-07-01  Jonathan Wakely  <[email protected]>
+
+       * src/c++20/tzdb.cc (_Node::NumLeapSeconds): New class.
+       (_Node::num_leap_seconds): New static variable.
+       (num_leap_seconds): Remove.
+       (__detail::__recent_leap_second_info): Replace uses of
+       num_leap_seconds with _Node::num_leap_seconds.
+       (_Node::_S_replace_head): Likewise.
+
+2026-07-01  Yi Chen  <[email protected]>
+
+       * src/c++11/random.cc (random_device::_M_init): Add signature_HYGON_ebx 
to
+       the RDSEED and RDRAND CPUID vendor allowlists.  For the default device 
on
+       Hygon, prefer RDRAND via a dedicated check at the top of the function.
+
 2026-06-30  Adam Wood  <[email protected]>
            Jonathan Wakely  <[email protected]>

Reply via email to