https://gcc.gnu.org/g:5191ec4842d14792fde780ea2fdace97f22cf4d8

commit r17-2032-g5191ec4842d14792fde780ea2fdace97f22cf4d8
Author: GCC Administrator <[email protected]>
Date:   Wed Jul 1 00:16:44 2026 +0000

    Daily bump.

Diff:
---
 gcc/ChangeLog           | 666 ++++++++++++++++++++++++++++++++++++++++++++++++
 gcc/DATESTAMP           |   2 +-
 gcc/c-family/ChangeLog  |  12 +
 gcc/c/ChangeLog         |  10 +
 gcc/cobol/ChangeLog     |  98 +++++++
 gcc/cp/ChangeLog        |   8 +
 gcc/fortran/ChangeLog   |  24 ++
 gcc/testsuite/ChangeLog | 263 +++++++++++++++++++
 include/ChangeLog       |   4 +
 libcpp/ChangeLog        |   9 +
 libgcobol/ChangeLog     |  24 ++
 libgomp/ChangeLog       |  93 +++++++
 libstdc++-v3/ChangeLog  |  56 ++++
 13 files changed, 1268 insertions(+), 1 deletion(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 987ac63dd440..e525eba8c957 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,669 @@
+2026-06-30  Oleg Endo  <[email protected]>
+
+       PR target/55212
+       * config/sh/predicates.md (simple_mem_operand):
+       Use 'satisfies_constraint_Sra'.
+       (post_inc_mem, pre_dec_mem): Use 'satisfies_constraint_Rab'.
+       * config/sh/constraints.md (Rab, Rai, Sgb): New constraints.
+       (Sua, Sdd, Snd, Ssd, Sbv, Sra, Ara, Add): Use Rab and Rai constraints.
+       * config/sh/sync.md (atomic_mem_operand_0, atomic_mem_operand_1): Reject
+       GBR addresses when hard-llcs atomic mode is enabled.
+
+2026-06-30  Abhishek Kaushik  <[email protected]>
+
+       * config/aarch64/aarch64.cc: Include gimple-fold.h.
+       (aarch64_try_widen_mult_by_pow2): New function.
+       (aarch64_instruction_selection): Call it for conversion assignments.
+
+2026-06-30  Andrew Pinski  <[email protected]>
+
+       PR tree-optimization/125961
+       * tree-ssa-phiopt.cc (factor_out_conditional_operation): Use
+       remove_phi_node instead of gsi_remove for the phi node.
+       (factor_out_conditional_load): Likewise.
+
+2026-06-30  Karl Meakin  <[email protected]>
+
+       * config/aarch64/aarch64-acle-builtins.h
+       (TYPES_neon_reinterpret1, TYPES_neon_reinterpret,
+       TYPES_neon_reinterpretq1, TYPES_neon_reinterpretq,
+       neon_reinterpret, neon_reinterpretq): New type lists.
+       * config/aarch64/aarch64-builtins.cc (VREINTERPRET_BUILTIN2,
+       VREINTERPRET_BUILTINS1, VREINTERPRET_BUILTINS,
+       VREINTERPRETQ_BUILTIN2, VREINTERPRETQ_BUILTINS1,
+       VREINTERPRETQ_BUILTINS, VREINTERPRET_BUILTIN): Delete macros.
+       (AARCH64_SIMD_VREINTERPRET_BUILTINS): Delete enum member.
+       (aarch64_init_simd_intrinsics): Delete function.
+       (init_arm_neon_builtins): Delete call to
+       `aarch64_init_simd_intrinsics`.
+       (aarch64_general_fold_builtin): Delete case for
+       `AARCH64_SIMD_VREINTERPRET_BUILTINS`.
+       * config/aarch64/aarch64-neon-builtins-base.cc (struct
+       gimple_reinterpret): New struct.
+       (vreinterpret, vreinterpretq): New function bases.
+       * config/aarch64/aarch64-neon-builtins-base.def (vreinterpret,
+       vreinterpretq): New function groups.
+
+2026-06-30  Karl Meakin  <[email protected]>
+
+       * config/aarch64/aarch64-simd-pragma-builtins.def (vext_mf8,
+       vextq_mf8, vrev64_mf8, vrev64q_mf8, vrev32_mf8, vrev32q_mf8,
+       vrev16_mf8, vrev16q_mf8, vtrn1_mf8, vtrn1q_mf8, vtrn2_mf8,
+       vtrn2q_mf8, vtrn_mf8, vtrnq_mf8, vuzp1_mf8, vuzp1q_mf8,
+       vuzp2_mf8, vuzp2q_mf8, vuzp_mf8, vuzpq_mf8, vzip1_mf8,
+       vzip1q_mf8, vzip2_mf8, vzip2q_mf8, vzip_mf8, vzipq_mf8):
+       Delete functions.
+       * config/aarch64/aarch64-sve-builtins-shapes.cc (parse_type):
+       Handle `D` or `Q` followed by `x1,x2,x3,x4` to mean tuple
+       types.
+       * config/aarch64/aarch64-acle-builtins.h (TYPES_bh_poly,
+       TYPES_bhs_neon, TYPES_neon_rev16, TYPES_neon_rev32,
+       TYPES_neon_rev64): New type lists.
+       (bh_poly, bhs_neon, neon_rev16, neon_rev32, neon_rev64):
+       Likewise.
+       * config/aarch64/aarch64-builtins.cc (aarch64_simd_tuple_types):
+       Remove `static` qualifier.
+       * config/aarch64/aarch64-builtins.h (aarch64_simd_tuple_types):
+       New declaration.
+       * config/aarch64/aarch64-neon-builtins-base.cc (build_tuple_get,
+       build_tuple_set): New functions.
+       (class gimple_permute, class gimple_permute_pair): New classes.
+       (ext_mask, rev_mask, trn_mask, uzp_mask, zip_mask): New
+       functions.
+       (vext, vextq, vrev16, vrev16q, vrev32, vrev32q, vtrn1, vtrn1q,
+       btrn2, vtrn2q, vtrn, vtrnq, vuzp1, vuzp1q, vuzp2, vuzp2q, vuzp,
+       vuzpq, vzip1, vzip1q, vzip2, vzip2q, vzip, vzipq): New function
+       bases.
+       * config/aarch64/aarch64-neon-builtins-base.def (vext, vextq,
+       vrev16, vrev16q, vrev32, vrev32q, vrev64, vrev64q, vtrn,
+       vtrn1, vtrn1q, vtrn2, vtrn2q, vtrnq, vuzp, vuzp1, vuzp1q,
+       vuzp2, vuzp2q, vuzpq, vzip, vzip1, vzip1q, vzip2, vzip2q,
+       vzipq): New function groups.
+       * config/aarch64/aarch64-simd-builtins.def (zip1, zip2, uzp1,
+       uzp2, trn1, trn2): Delete builtin functions.
+       * config/aarch64/arm_neon.h (vext_f16, vext_f32, vext_f64,
+       vext_p8, vext_p16, vext_p64, vext_s8, vext_s16, vext_s32,
+       vext_s64, vext_u8, vext_u16, vext_u32, vext_u64, vextq_f16,
+       vextq_f32, vextq_f64, vextq_p8, vextq_p16, vextq_p64,
+       vextq_s8, vextq_s16, vextq_s32, vextq_s64, vextq_u8,
+       vextq_u16, vextq_u32, vextq_u64, vrev16_p8, vrev16_s8,
+       vrev16_u8, vrev16q_p8, vrev16q_s8, vrev16q_u8, vrev32_p8,
+       vrev32_p16, vrev32_s8, vrev32_s16, vrev32_u8, vrev32_u16,
+       vrev32q_p8, vrev32q_p16, vrev32q_s8, vrev32q_s16, vrev32q_u8,
+       vrev32q_u16, vrev64_f16, vrev64_f32, vrev64_p8, vrev64_p16,
+       vrev64_s8, vrev64_s16, vrev64_s32, vrev64_u8, vrev64_u16,
+       vrev64_u32, vrev64q_f16, vrev64q_f32, vrev64q_p8, vrev64q_p16,
+       vrev64q_s8, vrev64q_s16, vrev64q_s32, vrev64q_u8, vrev64q_u16,
+       vrev64q_u32, vtrn1_f16, vtrn1_f32, vtrn1_p8, vtrn1_p16,
+       vtrn1_s8, vtrn1_s16, vtrn1_s32, vtrn1_u8, vtrn1_u16,
+       vtrn1_u32, vtrn1q_f16, vtrn1q_f32, vtrn1q_f64, vtrn1q_p8,
+       vtrn1q_p16, vtrn1q_s8, vtrn1q_s16, vtrn1q_s32, vtrn1q_s64,
+       vtrn1q_u8, vtrn1q_u16, vtrn1q_u32, vtrn1q_p64, vtrn1q_u64,
+       vtrn2_f16, vtrn2_f32, vtrn2_p8, vtrn2_p16, vtrn2_s8,
+       vtrn2_s16, vtrn2_s32, vtrn2_u8, vtrn2_u16, vtrn2_u32,
+       vtrn2q_f16, vtrn2q_f32, vtrn2q_f64, vtrn2q_p8, vtrn2q_p16,
+       vtrn2q_s8, vtrn2q_s16, vtrn2q_s32, vtrn2q_s64, vtrn2q_u8,
+       vtrn2q_u16, vtrn2q_u32, vtrn2q_u64, vtrn2q_p64, vtrn_f16,
+       vtrn_f32, vtrn_p8, vtrn_p16, vtrn_s8, vtrn_s16, vtrn_s32,
+       vtrn_u8, vtrn_u16, vtrn_u32, vtrnq_f16, vtrnq_f32, vtrnq_p8,
+       vtrnq_p16, vtrnq_s8, vtrnq_s16, vtrnq_s32, vtrnq_u8,
+       vtrnq_u16, vtrnq_u32, vuzp1_f16, vuzp1_f32, vuzp1_p8,
+       vuzp1_p16, vuzp1_s8, vuzp1_s16, vuzp1_s32, vuzp1_u8,
+       vuzp1_u16, vuzp1_u32, vuzp1q_f16, vuzp1q_f32, vuzp1q_f64,
+       vuzp1q_p8, vuzp1q_p16, vuzp1q_s8, vuzp1q_s16, vuzp1q_s32,
+       vuzp1q_s64, vuzp1q_u8, vuzp1q_u16, vuzp1q_u32, vuzp1q_u64,
+       vuzp1q_p64, vuzp2_f16, vuzp2_f32, vuzp2_p8, vuzp2_p16,
+       vuzp2_s8, vuzp2_s16, vuzp2_s32, vuzp2_u8, vuzp2_u16,
+       vuzp2_u32, vuzp2q_f16, vuzp2q_f32, vuzp2q_f64, vuzp2q_p8,
+       vuzp2q_p16, vuzp2q_s8, vuzp2q_s16, vuzp2q_s32, vuzp2q_s64,
+       vuzp2q_u8, vuzp2q_u16, vuzp2q_u32, vuzp2q_u64, vuzp2q_p64,
+       vzip1_f16, vzip1_f32, vzip1_p8, vzip1_p16, vzip1_s8,
+       vzip1_s16, vzip1_s32, vzip1_u8, vzip1_u16, vzip1_u32,
+       vzip1q_f16, vzip1q_f32, vzip1q_f64, vzip1q_p8, vzip1q_p16,
+       vzip1q_s8, vzip1q_s16, vzip1q_s32, vzip1q_s64, vzip1q_u8,
+       vzip1q_u16, vzip1q_u32, vzip1q_u64, vzip1q_p64, vzip2_f16,
+       vzip2_f32, vzip2_p8, vzip2_p16, vzip2_s8, vzip2_s16,
+       vzip2_s32, vzip2_u8, vzip2_u16, vzip2_u32, vzip2q_f16,
+       vzip2q_f32, vzip2q_f64, vzip2q_p8, vzip2q_p16, vzip2q_s8,
+       vzip2q_s16, vzip2q_s32, vzip2q_s64, vzip2q_u8, vzip2q_u16,
+       vzip2q_u32, vzip2q_u64, vzip2q_p64): Delete functions.
+
+2026-06-30  Karl Meakin  <[email protected]>
+
+       * config/aarch64/aarch64.md (UNSPEC_BSL): Delete unspec.
+       * config/aarch64/aarch64-simd-pragma-builtins.def (vbsl_mf8,
+       vbslq_mf8): Delete functions.
+       * config/aarch64/aarch64-neon-builtins-base.cc (build_cast): New
+       function.
+       (class gimple_not_rhs, class gimple_bsl, class gimple_rbit,
+       class gimple_eor3, class gimple_bcax, class gimple_rax1, class
+       gimple_xar, class gimple_ifn): New classes.
+       (vand, vandq, vbic, vbicq, vbsl, vbslq, veor, veorq, vmvn,
+       vmvnq, vorn, vornq, vorr, vorrq, vrbit, vrbitq, vbcaxq, veor3q,
+       vrax1q, vxarq, vcls, vclsq, vclz, vclzq, vcnt, vcntq): New
+       function bases.
+       * config/aarch64/aarch64-neon-builtins-shapes.cc (shift): New function.
+       * config/aarch64/aarch64-builtins.cc
+       (aarch64_types_bsl_p_qualifiers,
+       aarch64_types_bsl_s_qualifiers,
+       aarch64_types_bsl_u_qualifiers): Delete unused qualifiers.
+       * config/aarch64/aarch64-simd.md
+       (@aarch64_rbit<mode><vczle><vczbe>): Add `@` modifier so that
+       it is callable from `aarch64-neon-builtins-base.cc`.
+       * config/aarch64/aarch64-acle-builtins.h (TYPES_b_neon,
+       TYPES_b_poly): New type lists.
+       * config/aarch64/aarch64-neon-builtins-base.def (vand, vandq,
+       vbic, vbicq, vbsl, vbslq, veor, veorq, vmvn, vmvnq, vorn,
+       vornq, vorr, vorrq, vrbit, vrbitq, vbcaxq, veor3q, vrax1q,
+       vxarq, vcls, vclsq, vclz, vclzq, vcnt, vcntq): New function
+       groups.
+       * config/aarch64/aarch64-simd-builtins.def (clrsb, clz, ctz,
+       popcount, rbit, simd_bsl): Delete builtin functions.
+       * config/aarch64/arm_neon.h (vbsl_f16, vbsl_f32, vbsl_f64,
+       vbsl_p8, vbsl_p16, vbsl_p64, vbsl_s8, vbsl_s16, vbsl_s32,
+       vbsl_s64, vbsl_u8, vbsl_u16, vbsl_u32, vbsl_u64, vbslq_f16,
+       vbslq_f32, vbslq_f64, vbslq_p8, vbslq_p16, vbslq_s8,
+       vbslq_s16, vbslq_p64, vbslq_s32, vbslq_s64, vbslq_u8,
+       vbslq_u16, vbslq_u32, vbslq_u64, vcls_s8, vcls_s16, vcls_s32,
+       vclsq_s8, vclsq_s16, vclsq_s32, vcls_u8, vcls_u16, vcls_u32,
+       vclsq_u8, vclsq_u16, vclsq_u32, vclz_s8, vclz_s16, vclz_s32,
+       vclz_u8, vclz_u16, vclz_u32, vclzq_s8, vclzq_s16, vclzq_s32,
+       vclzq_u8, vclzq_u16, vclzq_u32, vcnt_p8, vcnt_s8, vcnt_u8,
+       vcntq_p8, vcntq_s8, vcntq_u8, vrbit_p8, vrbit_s8, vrbit_u8,
+       vrbitq_p8, vrbitq_s8, vrbitq_u8, veor3q_u8, veor3q_u16,
+       veor3q_u32, veor3q_u64, veor3q_s8, veor3q_s16, veor3q_s32,
+       veor3q_s64, vrax1q_u64, vxarq_u64, vbcaxq_u8, vbcaxq_u16,
+       vbcaxq_u32, vbcaxq_u64, vbcaxq_s8, vbcaxq_s16, vbcaxq_s32,
+       vbcaxq_s64): Delete functions.
+
+2026-06-30  Karl Meakin  <[email protected]>
+
+       * config/aarch64/aarch64-simd-pragma-builtins.def (
+       vcopy_lane_mf8, vcopyq_lane_mf8, vcopy_laneq_mf8,
+       vcopyq_laneq_mf8, vdup_lane_mf8, vdupq_lane_mf8,
+       vdup_laneq_mf8, vdupq_laneq_mf8, vset_lane_mf8,
+       vsetq_lane_mf8): Delete entries.
+       * config/aarch64/aarch64-builtins.cc
+       (AARCH64_SIMD_VGET_LOW_BUILTINS,
+       AARCH64_SIMD_VGET_HIGH_BUILTINS, VGET_LOW_BUILTIN,
+       VGET_HIGH_BUILTIN): Delete macros.
+       (enum aarch64_builtins): Delete
+       `AARCH64_SIMD_BUILTIN_LANE_CHECK`.
+       (aarch64_init_simd_builtin_functions): Delete code that
+       registers `__builtin_aarch64_im_lane_boundsi`.
+       (aarch64_pragma_builtins_checker::check): Delete cases for
+       `UNSPEC_DUP_LANE`, `UNSPEC_GET_LANE` and `UNSPEC_VEC_COPY`.
+       (aarch64_simd_expand_builtin): Delete case for
+       `AARCH64_SIMD_BUILTIN_LANE_CHECK`.
+       (aarch64_expand_pragma_builtin): Delete cases for
+       `UNSPEC_DUP_LANE` and `UNSPEC_VEC_COPY`.
+       (aarch64_general_fold_builtin): Delete cases for
+       `AARCH64_SIMD_VGET_LOW_BUILTINS`,
+       `AARCH64_SIMD_VGET_HIGH_BUILTINS` and
+       `AARCH64_SIMD_BUILTIN_LANE_CHECK`.
+       (aarch64_gimple_fold_pragma_builtin): Delete cases for
+       `UNSPEC_DUP_LANE` and `UNSPEC_VEC_COPY`.
+       (aarch64_general_gimple_fold_builtin): Delete cases for
+       `AARCH64_SIMD_BUILTIN_LANE_CHECK`.
+       * config/aarch64/aarch64.md (UNSPEC_DUP_LANE): Delete unspec.
+       * config/aarch64/aarch64-neon-builtins-shapes.cc (range, lane):
+       New functions.
+       (struct neon_shape): Add new fields for additional checks, and
+       call them in `check()`.
+       * config/aarch64/aarch64-acle-builtins.cc
+       (gimple_folder::force_val, gimple_folder::assign): New
+       functions.
+       * config/aarch64/aarch64-acle-builtins.h (TYPES_all_neon,
+       TYPES_bhsd_neon, TYPES_neon_copy_lane): New type lists.
+       * config/aarch64/iterators.md (VALL_F16_NO_V2Q): Add `V4BF` and `V8BF`.
+       * config/aarch64/aarch64-neon-builtins-base.def (vget_lane,
+       vgetq_lane, vget_high, vget_low, vset_lane, vsetq_lane,
+       vdup_lane, vdupq_lane, vdup_laneq, vdupq_laneq, vcopy_lane,
+       vcopy_laneq, vcopyq_lane, vcopyq_laneq): New function groups.
+       * config/aarch64/aarch64-neon-builtins-base.cc (build_lane_get,
+       build_lane_set, build_vec_dup): New functions.
+       (struct gimple_get_lane, struct gimple_get_half, struct
+       gimple_set_lane, struct gimple_copy_lane, struct gimple_dup,
+       struct gimple_dup_lane): New structs.
+       (vget_lane, vgetq_lane, vset_lane, vsetq_lane, vcopy_lane,
+       vcopyq_lane, vcopy_laneq, vcopyq_laneq, vdup_lane, vdupq_lane,
+       vdupq_lane, vdupq_laneq): New function bases.
+       * config/aarch64/arm_neon.h (__aarch64_vdup_lane_p8,
+       __aarch64_vdup_lane_p16, __aarch64_vdup_lane_p64,
+       __aarch64_vdup_lane_s8, __aarch64_vdup_lane_s16,
+       __aarch64_vdup_lane_s32, __aarch64_vdup_lane_s64,
+       __aarch64_vdup_lane_u8, __aarch64_vdup_lane_u16,
+       __aarch64_vdup_lane_u32, __aarch64_vdup_lane_u64,
+       __aarch64_vdup_laneq_p8, __aarch64_vdup_laneq_p16,
+       __aarch64_vdup_laneq_p64, __aarch64_vdup_laneq_s8,
+       __aarch64_vdup_laneq_s16, __aarch64_vdup_laneq_s32,
+       __aarch64_vdup_laneq_s64, __aarch64_vdup_laneq_u8,
+       __aarch64_vdup_laneq_u16, __aarch64_vdup_laneq_u32,
+       __aarch64_vdup_laneq_u64, __aarch64_vdupq_lane_p8,
+       __aarch64_vdupq_lane_p16, __aarch64_vdupq_lane_p64,
+       __aarch64_vdupq_lane_s8, __aarch64_vdupq_lane_s16,
+       __aarch64_vdupq_lane_s32, __aarch64_vdupq_lane_s64,
+       __aarch64_vdupq_lane_u8, __aarch64_vdupq_lane_u16,
+       __aarch64_vdupq_lane_u32, __aarch64_vdupq_lane_u64,
+       __aarch64_vdupq_laneq_p8, __aarch64_vdupq_laneq_p16,
+       __aarch64_vdupq_laneq_p64, __aarch64_vdupq_laneq_s8,
+       __aarch64_vdupq_laneq_s16, __aarch64_vdupq_laneq_s32,
+       __aarch64_vdupq_laneq_s64, __aarch64_vdupq_laneq_u8,
+       __aarch64_vdupq_laneq_u16, __aarch64_vdupq_laneq_u32,
+       __aarch64_vdupq_laneq_u64, __AARCH64_LANE_CHECK,
+       __aarch64_vget_lane_any, __aarch64_vset_lane_any): Delete
+       macros.
+       (vget_lane_f16, vget_lane_f32, vget_lane_f64, vget_lane_p8,
+       vget_lane_p16, vget_lane_p64, vget_lane_s8, vget_lane_s16,
+       vget_lane_s32, vget_lane_s64, vget_lane_u8, vget_lane_u16,
+       vget_lane_u32, vget_lane_u64, vgetq_lane_f16, vgetq_lane_f32,
+       vgetq_lane_f64, vgetq_lane_p8, vgetq_lane_p16, vgetq_lane_p64,
+       vgetq_lane_s8, vgetq_lane_s16, vgetq_lane_s32, vgetq_lane_s64,
+       vgetq_lane_u8, vgetq_lane_u16, vgetq_lane_u32, vgetq_lane_u64,
+       vset_lane_f16, vset_lane_f32, vset_lane_f64, vset_lane_p8,
+       vset_lane_p16, vset_lane_p64, vset_lane_s8, vset_lane_s16,
+       vset_lane_s32, vset_lane_s64, vset_lane_u8, vset_lane_u16,
+       vset_lane_u32, vset_lane_u64, vsetq_lane_f16, vsetq_lane_f32,
+       vsetq_lane_f64, vsetq_lane_p8, vsetq_lane_p16, vsetq_lane_p64,
+       vsetq_lane_s8, vsetq_lane_s16, vsetq_lane_s32, vsetq_lane_s64,
+       vsetq_lane_u8, vsetq_lane_u16, vsetq_lane_u32, vsetq_lane_u64,
+       vcopy_lane_f32, vcopy_lane_f64, vcopy_lane_p8, vcopy_lane_p16,
+       vcopy_lane_p64, vcopy_lane_s8, vcopy_lane_s16, vcopy_lane_s32,
+       vcopy_lane_s64, vcopy_lane_u8, vcopy_lane_u16, vcopy_lane_u32,
+       vcopy_lane_u64, vcopy_laneq_f32, vcopy_laneq_f64,
+       vcopy_laneq_p8, vcopy_laneq_p16, vcopy_laneq_p64,
+       vcopy_laneq_s8, vcopy_laneq_s16, vcopy_laneq_s32,
+       vcopy_laneq_s64, vcopy_laneq_u8, vcopy_laneq_u16,
+       vcopy_laneq_u32, vcopy_laneq_u64, vcopyq_lane_f32,
+       vcopyq_lane_f64, vcopyq_lane_p8, vcopyq_lane_p16,
+       vcopyq_lane_p64, vcopyq_lane_s8, vcopyq_lane_s16,
+       vcopyq_lane_s32, vcopyq_lane_s64, vcopyq_lane_u8,
+       vcopyq_lane_u16, vcopyq_lane_u32, vcopyq_lane_u64,
+       vcopyq_laneq_f32, vcopyq_laneq_f64, vcopyq_laneq_p8,
+       vcopyq_laneq_p16, vcopyq_laneq_p64, vcopyq_laneq_s8,
+       vcopyq_laneq_s16, vcopyq_laneq_s32, vcopyq_laneq_s64,
+       vcopyq_laneq_u8, vcopyq_laneq_u16, vcopyq_laneq_u32,
+       vcopyq_laneq_u64, vdup_lane_f16, vdup_lane_f32, vdup_lane_f64,
+       vdup_lane_p8, vdup_lane_p16, vdup_lane_p64, vdup_lane_s8,
+       vdup_lane_s16, vdup_lane_s32, vdup_lane_s64, vdup_lane_u8,
+       vdup_lane_u16, vdup_lane_u32, vdup_lane_u64, vdup_laneq_f16,
+       vdup_laneq_f32, vdup_laneq_f64, vdup_laneq_p8, vdup_laneq_p16,
+       vdup_laneq_p64, vdup_laneq_s8, vdup_laneq_s16, vdup_laneq_s32,
+       vdup_laneq_s64, vdup_laneq_u8, vdup_laneq_u16, vdup_laneq_u32,
+       vdup_laneq_u64, vdupq_lane_f16, vdupq_lane_f32,
+       vdupq_lane_f64, vdupq_lane_p8, vdupq_lane_p16, vdupq_lane_p64,
+       vdupq_lane_s8, vdupq_lane_s16, vdupq_lane_s32, vdupq_lane_s64,
+       vdupq_lane_u8, vdupq_lane_u16, vdupq_lane_u32, vdupq_lane_u64,
+       vdupq_laneq_f16, vdupq_laneq_f32, vdupq_laneq_f64,
+       vdupq_laneq_p8, vdupq_laneq_p16, vdupq_laneq_p64,
+       vdupq_laneq_s8, vdupq_laneq_s16, vdupq_laneq_s32,
+       vdupq_laneq_s64, vdupq_laneq_u8, vdupq_laneq_u16,
+       vdupq_laneq_u32, vdupq_laneq_u64, vmulq_lane_f64,
+       vset_lane_bf16, vsetq_lane_bf16, vget_lane_bf16,
+       vgetq_lane_bf16, vdup_lane_bf16, vdup_laneq_bf16,
+       vdupq_lane_bf16, vdupq_laneq_bf16, vcopy_lane_bf16,
+       vcopyq_lane_bf16, vcopy_laneq_bf16, vcopyq_laneq_bf16): Delete
+       functions.
+
+2026-06-30  Karl Meakin  <[email protected]>
+
+       * config/aarch64/aarch64-simd-builtins.def (combine): Delete
+       function declarations.
+       * config/aarch64/aarch64-simd-pragma-builtins.def (vcombine_mf8,
+       vcreate_mf8, vdup_n_mf8, vdupq_n_mf8, vmov_n_mf8,
+       vmovq_n_mf8,): Delete entries.
+       (aarch64_expand_pragma_builtin): Delete cases for
+       `UNSPEC_COMBINE` and `UNSPEC_VCREATE`.
+       (aarch64_fold_combine): Delete function.
+       (aarch64_gimple_fold_pragma_builtin): Delete cases for
+       `UNSPEC_COMBINE` and `UNSPEC_VCREATE`.
+       (aarch64_general_gimple_fold_builtin): Delete cases for
+       `vcombine`.
+       * config/aarch64/aarch64.md (UNSPEC_COMBINE): Delete unspec.
+       * config/aarch64/aarch64-builtins.cc
+       (aarch64_expand_pragma_builtin): Delete cases for
+       `UNSPEC_COMBINE` and `UNSPEC_VCREATE`.
+       (aarch64_fold_combine): Delete function.
+       (aarch64_gimple_fold_pragma_builtin): Delete cases for
+       `UNSPEC_COMBINE` and `UNSPEC_VCREATE`.
+       (aarch64_general_gimple_fold_builtin): Delete cases for
+       `combine`.
+       * config/aarch64/aarch64-acle-builtins.cc
+       (gimple_folder::force_val, gimple_folder::assign): New
+       functions.
+       * config/aarch64/aarch64-acle-builtins.h (TYPES_all_neon,
+       TYPES_bhsd_neon): New type lists.
+       * config/aarch64/aarch64-neon-builtins-base.def (vcreate,
+       vcombine, vdup_n, vdupq_n, vmov_n, vmovq_n): New function groups.
+       * config/aarch64/aarch64-neon-builtins-base.cc (build_vec_dup): New 
function.
+       (struct gimple_create, struct gimple_combine, struct struct
+       gimple_dup): New structs.
+       (vcreate, vcombine, vdup_n, vdupq_n, vmov_n, vmovq_n): New
+       function bases.
+       * config/aarch64/arm_neon.h (vcreate_s8, vcreate_s16,
+       vcreate_s32, vcreate_s64, vcreate_f16, vcreate_f32,
+       vcreate_u8, vcreate_u16, vcreate_u32, vcreate_u64,
+       vcreate_f64, vcreate_p8, vcreate_p16, vcreate_p64,
+       vcombine_s8, vcombine_s16, vcombine_s32, vcombine_s64,
+       vcombine_f16, vcombine_f32, vcombine_u8, vcombine_u16,
+       vcombine_u32, vcombine_u64, vcombine_f64, vcombine_p8,
+       vcombine_p16, vcombine_p64, vdup_n_f16, vdup_n_f32,
+       vdup_n_f64, vdup_n_p8, vdup_n_p16, vdup_n_p64, vdup_n_s8,
+       vdup_n_s16, vdup_n_s32, vdup_n_s64, vdup_n_u8, vdup_n_u16,
+       vdup_n_u32, vdup_n_u64, vdupq_n_f16, vdupq_n_f32, vdupq_n_f64,
+       vdupq_n_p8, vdupq_n_p16, vdupq_n_p64, vdupq_n_s8, vdupq_n_s16,
+       vdupq_n_s32, vdupq_n_s64, vdupq_n_u8, vdupq_n_u16,
+       vdupq_n_u32, vdupq_n_u64, vmov_n_f16, vmov_n_f32, vmov_n_f64,
+       vmov_n_p8, vmov_n_p16, vmov_n_p64, vmov_n_s8, vmov_n_s16,
+       vmov_n_s32, vmov_n_s64, vmov_n_u8, vmov_n_u16, vmov_n_u32,
+       vmov_n_u64, vmovq_n_f16, vmovq_n_f32, vmovq_n_f64, vmovq_n_p8,
+       vmovq_n_p16, vmovq_n_p64, vmovq_n_s8, vmovq_n_s16,
+       vmovq_n_s32, vmovq_n_s64, vmovq_n_u8, vmovq_n_u16,
+       vmovq_n_u32, vmovq_n_u64, vcreate_bf16, vcombine_bf16,
+       vdup_n_bf16, vdupq_n_bf16): Delete functions.
+
+2026-06-30  Karl Meakin  <[email protected]>
+
+       * config/aarch64/aarch64-neon-builtins-base.cc: New file.
+       * config/aarch64/aarch64-neon-builtins-base.def: New file.
+       * config/aarch64/aarch64-neon-builtins-base.h: New file.
+       * config/aarch64/aarch64-neon-builtins-functions.h: New file.
+       * config/aarch64/aarch64-neon-builtins-shapes.cc: New file.
+       * config/aarch64/aarch64-neon-builtins-shapes.h: New file.
+       * config/aarch64/aarch64-neon-builtins.def: New file.
+       * config.gcc (extra_headers, extra_objs): Add new files and
+       reformat for readability.
+       * config/aarch64/t-aarch64: Add recipes for new files.
+       * config/aarch64/aarch64-protos.h (handle_arm_neon_h): Rename to
+       `init_arm_neon_builtins`.
+       * config/aarch64/aarch64-builtins.cc (handle_arm_neon_h): Likewise.
+       * config/aarch64/aarch64-c.cc (aarch64_pragma_aarch64): Call
+       `aarch64_acle::handle_arm_neon_h`.
+       * config/aarch64/aarch64-acle-builtins.cc (TYPES_*): Move to
+       aarch64-acle-builtins.h
+       (NONSTREAMING_SVE, SVE_AND_SME, SSVE): Likewise.
+       (neon_function_groups): New variable.
+       (arm_neon_h_handled): Likewise.
+       (handle_arm_neon_h): New function.
+       * config/aarch64/aarch64-sve-builtins-shapes.cc:
+       (gimple_folder::fold): Allow folding if `TARGET_SVE` is
+       false but `TARGET_SIMD` is true.
+       * config/aarch64/aarch64-sve-builtins.def (p8, p16, p64, 128):
+       New type suffixes.
+       * config/aarch64/aarch64-acle-builtins.h (enum
+       handle_pragma_index): New enum member `arm_neon_handle`.
+       (enum type_class_index): New enum member `TYPE_poly`.
+       (TYPES_*): Moved from `aarch64-acle-builtins.cc`.
+       (NONSTREAMING_SVE, SVE_AND_SME, SSVE): Likewise.
+       * config/aarch64/arm_neon.h (vadd_s8, vadd_s16, vadd_s32,
+       vadd_f32, vadd_f64, vadd_u8, vadd_u16, vadd_u32, vadd_s64,
+       vadd_u64, vaddq_s8, vaddq_s16, vaddq_s32, vaddq_s64,
+       vaddq_f32, vaddq_f64, vaddq_u8, vaddq_u16, vaddq_u32,
+       vaddq_u64, vadd_f16, vaddq_f16, vadd_p8, vadd_p16, vadd_p64,
+       vaddq_p8, vaddq_p16, vaddq_p64, vaddq_p128, vaddd_u64,
+       vaddd_s64): Delete function definitions.
+
+2026-06-30  Karl Meakin  <[email protected]>
+
+       * config.gcc (target_gtfiles): Rename
+       `aarch64-sve-builtins.{h,cc}` to
+       `aarch64-acle-builtins.{h,cc}`.
+       * config/aarch64/t-aarch64: Likewise.
+       * config/aarch64/aarch64-sve-builtins.h: Move to...
+       * config/aarch64/aarch64-acle-builtins.h: ...here.
+       * config/aarch64/aarch64-sve-builtins.cc: Move to...
+       * config/aarch64/aarch64-acle-builtins.cc: ...here.
+       * config/aarch64/aarch64-c.cc (aarch64_pragma_aarch64): Rename
+       namespace `aarch64_sve` to `aarch64_acle`.
+       (aarch64_resolve_overloaded_builtin): Likewise.
+       (aarch64_check_builtin_call): Likewise.
+       * config/aarch64/aarch64-protos.h: Likewise.
+       * config/aarch64/aarch64-sve-builtins-base.cc: Likewise.
+       * config/aarch64/aarch64-sve-builtins-base.h: Likewise.
+       * config/aarch64/aarch64-sve-builtins-functions.h: Likewise.
+       * config/aarch64/aarch64-sve-builtins-shapes.cc: Likewise.
+       * config/aarch64/aarch64-sve-builtins-shapes.h: Likewise.
+       * config/aarch64/aarch64-sve-builtins-sme.cc: Likewise.
+       * config/aarch64/aarch64-sve-builtins-sme.h: Likewise.
+       * config/aarch64/aarch64-sve-builtins-sve2.cc: Likewise.
+       * config/aarch64/aarch64-sve-builtins-sve2.h: Likewise.
+       * config/aarch64/aarch64.cc: Likewise.
+
+2026-06-30  Karl Meakin  <[email protected]>
+
+       * config.gcc: Reformat lists over several lines.
+
+2026-06-30  Jeff Law  <[email protected]>
+
+       * config/riscv/riscv.cc (synthesize_ior_xor): If we must synthesize a
+       constant and Zbb is enabled, try both C and ~C to see which is cheaper.
+       (synthesize_and): Likewise.
+
+2026-06-30  Jim Lin  <[email protected]>
+
+       PR target/125853
+       * common/config/riscv/riscv-common.cc (riscv_multi_lib_info_t::parse):
+       Remove the path parameter and compare multi_lib_info->path against
+       "." instead.
+       (riscv_compute_multilib): Update caller.
+
+2026-06-30  Jim Tsung-Chun Lin  <[email protected]>
+
+       Backported from master:
+       2026-06-15  Jim Tsung-Chun Lin  <[email protected]>
+
+       * common/config/riscv/riscv-common.cc (riscv_select_multilib):
+       Don't set riscv_no_matched_multi_lib here; let the caller own
+       the flag.
+       (riscv_compute_multilib): Drop the early return that accepted
+       the generic-matched multilib_dir; always run the smart matcher
+       and set riscv_no_matched_multi_lib when it finds no candidate.
+
+2026-06-30  Mark Zhuang  <[email protected]>
+
+       * config/riscv/riscv-ext-spacemit.def (xsmtvdotii): New extension.
+       * config/riscv/riscv-ext.opt: Regenerate.
+       * config/riscv/riscv-cores.def (RISCV_TUNE): Add spacemit-a100.
+       (RISCV_CORE): Add spacemit-a100.
+       * doc/riscv-ext.texi: Regenerate.
+       * doc/riscv-mcpu.texi: Regenerate.
+       * doc/riscv-mtune.texi: Regenerate.
+
+2026-06-30  Richard Biener  <[email protected]>
+
+       * tree-ssa-alias.h (pt_solution::vars_contains_auto): New.
+       (ptr_deref_may_alias_auto_p): Declare.
+       (pt_solution_includes_auto): Likewise.
+       * tree-ssa-structalias.cc (set_uids_in_ptset): Record auto
+       variables.
+       (pt_solution_includes_auto): New function.
+       (ipa_escaped_pt): Adjust.
+       * tree-ssa-alias.cc (ptr_deref_may_alias_auto_p): New function.
+
+2026-06-30  Christopher Bazley  <[email protected]>
+           Richard Sandiford  <[email protected]>
+
+       * tree.cc (build_vector_from_ctor): Rename variables and
+       refactor assignments.
+
+2026-06-30  Richard Biener  <[email protected]>
+
+       * tree-ssa-loop-ivopts.cc (rewrite_use_address): Always
+       avoid TARGET_MEM_REF with a base of zero.
+       * tree-ssa-sccvn.cc (vn_reference_maybe_forwprop_address): Do
+       not forward TARGET_MEM_REF addresses.
+
+2026-06-30  Alfie Richards  <[email protected]>
+
+       PR target/125838
+       * config/aarch64/aarch64.cc (aarch64_fntype_abi): Fall back to
+       AAPCS for preserve_none variadic calls.
+
+2026-06-30  Richard Biener  <[email protected]>
+
+       PR tree-optimization/126032
+       * gimple-ssa-warn-access.cc (maybe_warn_for_bound): Fixup
+       diagnostic string.
+
+2026-06-30  Chung-Lin Tang  <[email protected]>
+
+       * gimplify.cc (enum gimplify_omp_var_data):
+       Add GOVD_USES_ALLOCATORS_ALLOCATOR.
+       (gimplify_bind_expr): Diagnose missing uses_allocators clause.
+       (omp_get_attachment): Add GOMP_MAP_USES_ALLOCATORS cases.
+       (omp_group_base): Likewise.
+       (gimplify_scan_omp_clauses): Handle uses_allocators.
+       (gimplify_adjust_omp_clauses_1): Handle GOVD_USES_ALLOCATORS_ALLOCATOR.
+       * omp-low.cc (scan_sharing_clauses): Check if ALLOCATE clause in target
+       region has containing USES_ALLOCATORS clause.
+       Add OMP_CLAUSE_USES_ALLOCATORS cases.
+       (lower_omp_target): Add OMP_CLAUSE_USES_ALLOCATORS cases.
+       * tree-pretty-print.cc (dump_omp_clause): Handle 
GOMP_MAP_USES_ALLOCATORS.
+
+2026-06-30  Richard Biener  <[email protected]>
+
+       PR tree-optimization/126008
+       * tree-ssa-loop-ivopts.cc (alloc_iv): Revert last change.
+       * tree-ssa-address.cc (add_to_parts): Use unsigned arithmetic
+       to accumulate to base.
+
+2026-06-30  Christopher Bazley  <[email protected]>
+           Richard Sandiford  <[email protected]>
+
+       * poly-int.h (can_div_away_from_zero_p):
+       Exit early if |a| <= |b| instead of calling
+       can_div_trunc_p and returning false if it
+       returned false.
+
+2026-06-30  Richard Biener  <[email protected]>
+
+       PR tree-optimization/126034
+       * tree-vect-stmts.cc (vectorizable_load): Elide dead else if.
+
+2026-06-30  Jakub Jelinek  <[email protected]>
+
+       PR target/126030
+       * config/i386/sse.md (avx512vl_<code><mode>v4hi2_mask_store_1):
+       Use a single output pattern instead of conditionally returning
+       the same string based on a condition.
+
+2026-06-30  Jakub Jelinek  <[email protected]>
+
+       PR c++/125837
+       * doc/invoke.texi (Wc++29-extensions): Document.
+
+2026-06-30  Avinash Jayakar  <[email protected]>
+           Surya Kumari Jangala  <[email protected]>
+
+       * config/rs6000/rs6000-builtin.cc (rs6000_expand_builtin): Add logic to
+       handle __builtin_ppc_atomic_cas_local.
+       * config/rs6000/rs6000-builtins.def: New builtins for
+       __builtin_ppc_atomic_cas_local with types.
+       * config/rs6000/rs6000-c.cc (altivec_build_resolved_builtin): Handle
+       builtins with up to 6 arguments.
+       * config/rs6000/rs6000-overload.def: Overload builtin for signed/unsiged
+       char, short, int, long, __int128.
+       * config/rs6000/rs6000-protos.h 
(rs6000_expand_atomic_compare_and_swap): Add
+       additional parameter 'local' to the prototype.
+       * config/rs6000/rs6000.cc (emit_load_locked): Add new parameter. Pass 
new
+       parameter to generate load-locked instruction.
+       (rs6000_expand_atomic_compare_and_swap): Add new parameter. Call
+       emit_load_locked() with additional parameter value of EH bit.
+       (rs6000_expand_atomic_exchange): Pass EH value 0 to emit_load_locked().
+       (rs6000_expand_atomic_op): Likewise.
+       * config/rs6000/sync.md (load_locked<mode>): Add new operand in RTL 
template.
+       Specify EH bit in the larx instruction.
+       (load_locked<QHI:mode>_si): Likewise.
+       (load_lockedpti): Likewise.
+       (load_lockedti): Add new operand in RTL template. Pass EH bit to
+       gen_load_lockedpti().
+       (atomic_compare_and_swap<mode>): Pass new parameter 'false' to
+       rs6000_expand_atomic_compare_and_swap.
+       (atomic_compare_and_swap_local<mode>): New define_expand.
+       * doc/extend.texi: Add documentation for new builtin.
+
+2026-06-30  Avinash Jayakar  <[email protected]>
+
+       Revert:
+       2026-06-30  Avinash Jayakar  <[email protected]>
+                   Surya Kumari Jangala  <[email protected]>
+
+       * config/rs6000/rs6000-builtin.cc (rs6000_expand_builtin): Add logic to
+       handle __builtin_ppc_atomic_cas_local.
+       * config/rs6000/rs6000-builtins.def: New builtins for
+       __builtin_ppc_atomic_cas_local with types.
+       * config/rs6000/rs6000-c.cc (altivec_build_resolved_builtin): Handle
+       builtins with up to 6 arguments.
+       * config/rs6000/rs6000-overload.def: Overload builtin for signed/unsiged
+       char, short, int, long, __int128.
+       * config/rs6000/rs6000-protos.h 
(rs6000_expand_atomic_compare_and_swap): Add
+       additional parameter 'local' to the prototype.
+       * config/rs6000/rs6000.cc (emit_load_locked): Add new parameter. Pass 
new
+       parameter to generate load-locked instruction.
+       (rs6000_expand_atomic_compare_and_swap): Add new parameter. Call
+       emit_load_locked() with additional parameter value of EH bit.
+       (rs6000_expand_atomic_exchange): Pass EH value 0 to emit_load_locked().
+       (rs6000_expand_atomic_op): Likewise.
+       * config/rs6000/sync.md (load_locked<mode>): Add new operand in RTL 
template.
+       Specify EH bit in the larx instruction.
+       (load_locked<QHI:mode>_si): Likewise.
+       (load_lockedpti): Likewise.
+       (load_lockedti): Add new operand in RTL template. Pass EH bit to
+       gen_load_lockedpti().
+       (atomic_compare_and_swap<mode>): Pass new parameter 'false' to
+       rs6000_expand_atomic_compare_and_swap.
+       (atomic_compare_and_swap_local<mode>): New define_expand.
+       * doc/extend.texi: Add documentation for new builtin.
+
+2026-06-30  Avinash Jayakar  <[email protected]>
+           Surya Kumari Jangala  <[email protected]>
+
+       * config/rs6000/rs6000-builtin.cc (rs6000_expand_builtin): Add logic to
+       handle __builtin_ppc_atomic_cas_local.
+       * config/rs6000/rs6000-builtins.def: New builtins for
+       __builtin_ppc_atomic_cas_local with types.
+       * config/rs6000/rs6000-c.cc (altivec_build_resolved_builtin): Handle
+       builtins with up to 6 arguments.
+       * config/rs6000/rs6000-overload.def: Overload builtin for signed/unsiged
+       char, short, int, long, __int128.
+       * config/rs6000/rs6000-protos.h 
(rs6000_expand_atomic_compare_and_swap): Add
+       additional parameter 'local' to the prototype.
+       * config/rs6000/rs6000.cc (emit_load_locked): Add new parameter. Pass 
new
+       parameter to generate load-locked instruction.
+       (rs6000_expand_atomic_compare_and_swap): Add new parameter. Call
+       emit_load_locked() with additional parameter value of EH bit.
+       (rs6000_expand_atomic_exchange): Pass EH value 0 to emit_load_locked().
+       (rs6000_expand_atomic_op): Likewise.
+       * config/rs6000/sync.md (load_locked<mode>): Add new operand in RTL 
template.
+       Specify EH bit in the larx instruction.
+       (load_locked<QHI:mode>_si): Likewise.
+       (load_lockedpti): Likewise.
+       (load_lockedti): Add new operand in RTL template. Pass EH bit to
+       gen_load_lockedpti().
+       (atomic_compare_and_swap<mode>): Pass new parameter 'false' to
+       rs6000_expand_atomic_compare_and_swap.
+       (atomic_compare_and_swap_local<mode>): New define_expand.
+       * doc/extend.texi: Add documentation for new builtin.
+
+2026-06-30  Xi Ruoyao  <[email protected]>
+
+       * config/loongarch/loongarch.md
+       (@stack_protect_combined_set_normal_<mode>): Replace `st.d'
+       with `st.<d>', reject stptr.d on LA32 with enabled attribute.
+       (@stack_protect_combined_test_internal_<mode>): Replace `ld.d'
+       with `ld.<d>', reject ldptr.d on LA32 with enabled attribute.
+       (@stack_protect_combined_set_extreme_<mode>): Rename to ...
+       (stack_protect_combined_set_extreme): ... here.  Force DImode.
+       Add TARGET_ABI_LP64 as the condition.
+       (stack_protect_combined_set): Adapt for the change of
+       stack_protect_combined_set_extreme.
+
+2026-06-30  Robin Dapp  <[email protected]>
+
+       PR target/125994
+       * config/riscv/riscv.cc (riscv_support_vector_misalignment):
+       Handle scalar modes.
+
 2026-06-29  Jeff Law  <[email protected]>
 
        * config/riscv/riscv.cc (synthesize_and): Use srliw to handle
diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP
index 264735f723d9..e74af993156c 100644
--- a/gcc/DATESTAMP
+++ b/gcc/DATESTAMP
@@ -1 +1 @@
-20260630
+20260701
diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog
index a9acbf0ab83e..9fa5a27dbc73 100644
--- a/gcc/c-family/ChangeLog
+++ b/gcc/c-family/ChangeLog
@@ -1,3 +1,15 @@
+2026-06-30  Jakub Jelinek  <[email protected]>
+
+       PR c++/125837
+       * c.opt.urls: Regenerate.
+
+2026-06-30  Jakub Jelinek  <[email protected]>
+
+       PR c++/125837
+       * c.opt (Wc++29-extensions): New option.
+       * c-cppbuiltin.cc (c_cpp_builtins): Change __cpp_pp_embed value for
+       C++29.
+
 2026-06-24  Paul-Antoine Arras  <[email protected]>
 
        * c-omp.cc (c_finish_omp_barrier): Pass GOMP_BARRIER_EXPLICIT to
diff --git a/gcc/c/ChangeLog b/gcc/c/ChangeLog
index b39d3217f990..b0b84638689a 100644
--- a/gcc/c/ChangeLog
+++ b/gcc/c/ChangeLog
@@ -1,3 +1,13 @@
+2026-06-30  Chung-Lin Tang  <[email protected]>
+
+       * c-typeck.cc (c_finish_omp_clauses): Fix comments.
+
+2026-06-30  Jakub Jelinek  <[email protected]>
+
+       PR c/125935
+       * c-decl.cc (c_init_decl_processing): Use "bool" rather than "_Bool"
+       as the name of boolean_type_node for C23+.
+
 2026-06-28  Kevin Stefanov  <[email protected]>
 
        PR middle-end/125274
diff --git a/gcc/cobol/ChangeLog b/gcc/cobol/ChangeLog
index 8ddee6e1c064..ec832f76323a 100644
--- a/gcc/cobol/ChangeLog
+++ b/gcc/cobol/ChangeLog
@@ -1,3 +1,101 @@
+2026-06-30  Robert Dubner  <[email protected]>
+
+       * compare.cc (alpha_compare_figconst): Make the code endian-agnostic.
+       (alpha_compare): Likewise.
+       (numeric_alpha_compare): Likewise.
+       (float_compare): Force proper data comparisons.
+       * genapi.cc (parser_goto): Use improved get_binary_value() routine.
+       (parser_perform_times): Likewise.
+       (internal_perform_through_times): Likewise.
+       (parser_display_internal): Set formal parameter to const.
+       (program_end_stuff): Use get_binary_value().
+       (parser_relop_long): Likewise.
+       (parser_see_stop_run): Likewise.
+       (parser_perform): Set formal parameter to const.
+       (parser_perform_inline_times): Use new get_binary_value().
+       (parser_file_write): Likewise.
+       (parser_file_start): Likewise.
+       (handle_gg_trim): Endian.
+       (parser_trim): Likewise.
+       (field_increment): Use new get_binary_value().
+       (parser_lsearch_start): Likewise.
+       (parser_release): Set formal parameter to const.
+       (parser_match_exception): Use new get_binary_value().
+       (parser_field_attr_set): Set formal parameter to const.
+       * genapi.h (parser_display_internal): Likewise.
+       (parser_perform_times): Likewise.
+       (parser_perform): Likewise.
+       (parser_goto): Likewise.
+       (parser_field_attr_set): Likewise.
+       (parser_file_start): Likewise.
+       (parser_release): Likewise.
+       * gengen.cc (gg_assign): Comment.
+       * genmath.cc (fast_add): New get_binary_value; address aliasing.
+       (fast_subtract): Likewise.
+       (fast_multiply): Likewise.
+       (fast_divide): Likewise.
+       * genutil.cc (get_scaled_rdigits): Set formal parameter to const.
+       (get_scaled_digits): Set formal parameter to const.
+       (get_integer_value): Improved data conversion; make local static.
+       (CHECK_FOR_FRACTIONAL_DIGITS): Moved here from genutil.h.
+       (giv_helper): New get_integer_value helper routine.
+       (get_and_check_refstart_and_reflen): get_binary_value and aliasing.
+       (get_depending_on_value_from_odo): Set some variables to const.
+       (get_data_offset): Use new get_integer_value() routine.
+       (digit): Eliminate as part of improved get_binary_value() conversion.
+       (num_disp_dive): Likewise.
+       (pd_dive): Likewise.
+       (get_pd_value): Likewise.
+       (get_binary_value_tree): Likewise.
+       (get_binary_value): New binary conversion routines.
+       (field_is_super_clean): Likewise.
+       (refer_is_working_storage): Likewise.
+       (is_working_storage): Likewise.
+       (refer_refmod_length): Likewise.
+       (binary_from_FldNumericBin5): Likewise.
+       (binary_from_FldLiteralN): Likewise.
+       (binary_from_FldNumericBinary): Likewise.
+       (binary_from_FldNumericDisplay): Likewise.
+       (binary_from_numdisp): Likewise.
+       (binary_from_comp_3): Likewise.
+       (b_from_c3): Likewise.
+       (binary_from_comp_6): Likewise.
+       (binary_from_FldPacked): Likewise.
+       (binary_from_FldFloat): Likewise.
+       (get_location): Avoid aliasing.
+       (safe_cast): Likewise.
+       (attribute_bit_clear): Set formal parameter to const.
+       (attribute_bit_get): Likewise.
+       (attribute_bit_set): Likewise.
+       (round_this_value): New routine for COBOL rounding.
+       * genutil.h (get_scaled_rdigits): Set formal parameter to const.
+       (get_scaled_digits): Set formal parameter to const.
+       (get_binary_value): Modified declaration.
+       (get_binary_value_tree): Eliminate.
+       (CHECK_FOR_FRACTIONAL_DIGITS): Move to genutil.cc.
+       (get_integer_value): Eliminated declaration.
+       (field_is_super_clean): New declaration.
+       (refer_is_working_storage): Changed to is_working_storage().
+       (is_working_storage): Eliminated.
+       (get_location): New declaration for field_t * overload.
+       (safe_cast): New declaration.
+       (attribute_bit_clear): Set formal parameter to const.
+       (attribute_bit_get): Likewise.
+       (attribute_bit_set): Likewise.
+       * move.cc (copy_little_endian_into_place): Changed to
+       copy_native_into_place().
+       (copy_native_into_place): Endian awareness.
+       (mh_little_endian): Change name to mh_to_binary.
+       (mh_to_binary): Endian awareness.
+       (move_helper): Use mh_to_binary.
+       * parse.y: Comment out code pending a bug fix.
+       * parse_ante.h (cbl_field_t::blank_initial): Endian awareness.
+       * show_parse.h: Make a variable const.
+       * structs.cc (member): Set formal parameter to const.
+       * structs.h (member): Likewise.
+       * util.cc (binary_initial): Endian awareness.
+       (cbl_field_t::encode_numeric): Endian and aliasing awareness.
+
 2026-06-25  Robert Dubner  <[email protected]>
 
        * gengen.cc (gg_abs): Use fold_build1().
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index cd2ff735e802..696c180c2e38 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,11 @@
+2026-06-30  Jakub Jelinek  <[email protected]>
+
+       PR c++/126007
+       * tree.cc (eligible_special_member_function_p): New function.
+       (implicit_lifetime_type_p): Use true instead of 1 in function comment.
+       Add some further comments.  Use eligible_special_member_function_p
+       instead of !DECL_DELETED_FN.
+
 2026-06-29  Georg-Johann Lay  <[email protected]>
 
        * mangle.cc (mangle_ctor_vtbl_for_type): Fix production in comment.
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index db8d2c0f545b..7692846a6295 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,27 @@
+2026-06-30  Paul Thomas  <[email protected]>
+           Jerry DeLisle  <[email protected]>
+
+       PR fortran/121972
+       * decl.cc (gfc_get_pdt_instance): A PDT that has a derived type
+       component, which has allocatable components, must be marked as
+       having allocatable components.
+       * resolve.cc (gfc_resolve_ref): Initialize last_pdt from the base
+       symbol's declared type when the expression type is not a PDT.
+
+2026-06-30  Jerry DeLisle  <[email protected]>
+
+       PR fortran/121972
+       * resolve.cc (gfc_resolve_finalizers): Fix linked-list tail-pointer
+       bug that dropped all but the first two finalizers from a derived
+       type's finalizer list when three or more matched.
+
+2026-06-30  Chung-Lin Tang  <[email protected]>
+
+       * trans-array.cc (gfc_conv_array_initializer): Always set PURPOSE
+       when building constructor for get_initialized_tmp_var, adjust test
+       to use integer_zerop instead of != NULL_TREE.
+       * trans-openmp.cc (gfc_trans_omp_clauses): Handle uses_allocators.
+
 2026-06-29  Paul Thomas  <[email protected]>
 
        PR fortran/84622
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 8425e5618c4b..8f3fd16d0bf6 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,266 @@
+2026-06-30  Abhishek Kaushik  <[email protected]>
+
+       * gcc.target/aarch64/sbfiz-widen-mult-1.c: New test.
+
+2026-06-30  Rainer Orth  <[email protected]>
+
+       * gcc.target/i386/bt-cmov-1.c (scan-assembler-times): Simplify
+       patterns.  Allow for Solaris as syntax.
+
+2026-06-30  Paul Thomas  <[email protected]>
+           Jerry DeLisle  <[email protected]>
+
+       PR fortran/121972
+       * gfortran.dg/pdt_86.f03: Add tree dump for counts of frees and
+       mallocs (41 & 31 respectively).
+       * gfortran.dg/pdt_86_reduced.f90: New test to check that the
+       non-PDT version of the leak has gone.
+
+2026-06-30  Robert Dubner  <[email protected]>
+
+       * cobol.dg/group2/ALLOCATE_Rule_8_OPTION_INITIALIZE_with_figconst.cob: 
Removed.
+       * cobol.dg/group2/ALLOCATE_Rule_8_OPTION_INITIALIZE_with_figconst.out: 
Removed.
+
+2026-06-30  Jerry DeLisle  <[email protected]>
+
+       PR fortran/121972
+       * gfortran.dg/pdt_70.f03: Add a matrix finalizer and update the
+       check of the value of 'flag'.
+
+2026-06-30  Paul-Antoine Arras  <[email protected]>
+
+       * c-c++-common/gomp/atomic-builtins-1.c: Skip test when sync_int_128 is
+       available.
+       * lib/target-supports.exp (check_effective_target_sync_int_128): Return
+       1 for targets that do not emit a call to __atomic_compare_exchange_16.
+
+2026-06-30  Karl Meakin  <[email protected]>
+
+       * gcc.target/aarch64/neon/vreinterpret.c: New test.
+
+2026-06-30  Karl Meakin  <[email protected]>
+
+       * gcc.target/aarch64/neon/vext.c: New test.
+       * gcc.target/aarch64/neon/vrev.c: New test.
+       * gcc.target/aarch64/neon/vtrn.c: New test.
+       * gcc.target/aarch64/neon/vuzp.c: New test.
+       * gcc.target/aarch64/neon/vzip.c: New test.
+
+2026-06-30  Karl Meakin  <[email protected]>
+
+       * gcc.target/aarch64/neon/vand.c: New test.
+       * gcc.target/aarch64/neon/vbcax.c: New test.
+       * gcc.target/aarch64/neon/vbic.c: New test.
+       * gcc.target/aarch64/neon/vbsl.c: New test.
+       * gcc.target/aarch64/neon/vcls.c: New test.
+       * gcc.target/aarch64/neon/vclz.c: New test.
+       * gcc.target/aarch64/neon/vcnt.c: New test.
+       * gcc.target/aarch64/neon/veor.c: New test.
+       * gcc.target/aarch64/neon/veor3.c: New test.
+       * gcc.target/aarch64/neon/vmvn.c: New test.
+       * gcc.target/aarch64/neon/vorn.c: New test.
+       * gcc.target/aarch64/neon/vorr.c: New test.
+       * gcc.target/aarch64/neon/vrax1.c: New test.
+       * gcc.target/aarch64/neon/vrbit.c: New test.
+       * gcc.target/aarch64/neon/vxar.c: New test.
+       * gcc.target/aarch64/sme/inlining_10.c: Replace `call_vbsl` with
+       `call_vhadd` since `vbsl` is no longer implemented as an
+       `always_inline` function.
+       * gcc.target/aarch64/sme/inlining_11.c: Likewise.
+       * gcc.target/aarch64/target_attr_10.c: Fix expected error message.
+
+2026-06-30  Karl Meakin  <[email protected]>
+
+       * gcc.target/aarch64/simd/mf8_data_2.c: Fix test.
+       * gcc.target/aarch64/simd/fold_to_highpart_6.c: Fix test.
+       * g++.target/aarch64/lane-bound-1.C: Fix test.
+       * gcc.target/aarch64/advsimd-intrinsics/bf16_vect_copy_lane_1.c:
+       Fix test.
+       * gcc.target/aarch64/lane-bound-3.c: Fix test.
+       * gcc.target/aarch64/pr113573.c: Fix test.
+       * gcc.target/aarch64/simd/vset_lane_s16_const_1.c: Fix test.
+       * gcc.target/aarch64/advsimd-intrinsics/vcopy_lane_bf16_indices_1.c,
+       gcc.target/aarch64/advsimd-intrinsics/vcopy_lane_bf16_indices_2.c,
+       gcc.target/aarch64/advsimd-intrinsics/vcopy_laneq_bf16_indices_1.c,
+       gcc.target/aarch64/advsimd-intrinsics/vcopy_laneq_bf16_indices_2.c,
+       gcc.target/aarch64/advsimd-intrinsics/vcopyq_lane_bf16_indices_1.c,
+       gcc.target/aarch64/advsimd-intrinsics/vcopyq_lane_bf16_indices_2.c,
+       gcc.target/aarch64/advsimd-intrinsics/vcopyq_laneq_bf16_indices_1.c,
+       gcc.target/aarch64/advsimd-intrinsics/vcopyq_laneq_bf16_indices_2.c: 
Replace with...
+       gcc.target/aarch64/advsimd-intrinsics/vcopy_lane_indices.c: ...this.
+       * gcc.target/aarch64/simd/vget_lane_f32_indices_1.c,
+       gcc.target/aarch64/simd/vget_lane_f64_indices_1.c,
+       gcc.target/aarch64/simd/vget_lane_p16_indices_1.c,
+       gcc.target/aarch64/simd/vget_lane_p8_indices_1.c,
+       gcc.target/aarch64/simd/vget_lane_s16_indices_1.c,
+       gcc.target/aarch64/simd/vget_lane_s32_indices_1.c,
+       gcc.target/aarch64/simd/vget_lane_s64_indices_1.c,
+       gcc.target/aarch64/simd/vget_lane_s8_indices_1.c,
+       gcc.target/aarch64/simd/vget_lane_u16_indices_1.c,
+       gcc.target/aarch64/simd/vget_lane_u32_indices_1.c,
+       gcc.target/aarch64/simd/vget_lane_u64_indices_1.c,
+       gcc.target/aarch64/simd/vget_lane_u8_indices_1.c,
+       gcc.target/aarch64/simd/vgetq_lane_f32_indices_1.c,
+       gcc.target/aarch64/simd/vgetq_lane_f64_indices_1.c,
+       gcc.target/aarch64/simd/vgetq_lane_p16_indices_1.c,
+       gcc.target/aarch64/simd/vgetq_lane_p8_indices_1.c,
+       gcc.target/aarch64/simd/vgetq_lane_s16_indices_1.c,
+       gcc.target/aarch64/simd/vgetq_lane_s32_indices_1.c,
+       gcc.target/aarch64/simd/vgetq_lane_s64_indices_1.c,
+       gcc.target/aarch64/simd/vgetq_lane_s8_indices_1.c,
+       gcc.target/aarch64/simd/vgetq_lane_u16_indices_1.c,
+       gcc.target/aarch64/simd/vgetq_lane_u32_indices_1.c,
+       gcc.target/aarch64/simd/vgetq_lane_u64_indices_1.c,
+       gcc.target/aarch64/simd/vgetq_lane_u8_indices_1.c: Replace with...
+       * gcc.target/aarch64/simd/vget_lane_indices.c: ...this.
+       * gcc.target/aarch64/neon/arm_neon_test.h(VEC_LEN): New macro.
+       * gcc.target/aarch64/neon/vcopy_lane.c: New test.
+       * gcc.target/aarch64/neon/vdup_lane.c: New test.
+       * gcc.target/aarch64/neon/vget_lane.c: New test.
+       * gcc.target/aarch64/neon/vset_lane.c: New test.
+       * gcc.target/aarch64/advsimd-intrinsics/vcopy_lane_indices.c: New file.
+       * gcc.target/aarch64/neon/vget_high.c: New file.
+       * gcc.target/aarch64/neon/vget_low.c: New file.
+
+2026-06-30  Karl Meakin  <[email protected]>
+
+       * gcc.target/aarch64/advsimd-intrinsics/bf16_dup.c: Fix test.
+       * gcc.target/aarch64/vmov_n_1.c: Fix test.
+       * gcc.target/aarch64/neon/vcombine.c: New test.
+       * gcc.target/aarch64/neon/vcreate.c: New test.
+       * gcc.target/aarch64/neon/vdup.c: New test.
+       * gcc.target/aarch64/neon/vmov_n.c: New test.
+
+2026-06-30  Karl Meakin  <[email protected]>
+
+       * g++.target/aarch64/pr103147-6.C: Fix tests.
+       * g++.target/aarch64/pr117048.C: Fix tests.
+       * gcc.target/aarch64/pr103147-6.c: Fix tests.
+       * gcc.target/aarch64/neon/aarch64-neon.exp: New test.
+       * gcc.target/aarch64/neon/arm_neon_test.h: New test.
+       * gcc.target/aarch64/neon/vadd.c: New test.
+
+2026-06-30  Jeff Law  <[email protected]>
+
+       * gcc.target/riscv/and-synthesis-2.c: New test.
+
+2026-06-30  Jim Tsung-Chun Lin  <[email protected]>
+
+       Backported from master:
+       2026-06-15  Jim Tsung-Chun Lin  <[email protected]>
+
+       * gcc.target/riscv/multilib.exp: New test.
+
+2026-06-30  Mark Zhuang  <[email protected]>
+
+       * gcc.target/riscv/mcpu-spacemit-a100.c: New test.
+
+2026-06-30  Thomas Schwinge  <[email protected]>
+
+       * g++.dg/gomp/deprecate-2.C: Remove obsolete 'dg-excess-errors'.
+
+2026-06-30  Alfie Richards  <[email protected]>
+
+       PR target/125838
+       * gcc.target/aarch64/preserve_none_5.c: Update to use AAPCS.
+
+2026-06-30  Chung-Lin Tang  <[email protected]>
+
+       * c-c++-common/gomp/uses_allocators-1.c: Adjust test, and move to
+       ../../libgomp/testsuite/libgomp.c-c++-common/uses_allocators-1.c
+       * c-c++-common/gomp/uses_allocators-2.c: Move to
+       ../../libgomp/testsuite/libgomp.c-c++-common/uses_allocators-2.c
+       * c-c++-common/gomp/uses_allocators-4.c: Adjust test, and move to
+       ../../libgomp/testsuite/libgomp.c-c++-common/uses_allocators-4.c
+       * c-c++-common/gomp/uses_allocators-7.c: Move to
+       ../../libgomp/testsuite/libgomp.c-c++-common/uses_allocators-7.c
+       * c-c++-common/gomp/uses_allocators-8.c: Move to
+       ../../libgomp/testsuite/libgomp.c-c++-common/uses_allocators-8.c
+       * gcc.dg/gomp/deprecate-2.c: Adjust test.
+       * gfortran.dg/gomp/allocate-1.f90: Likewise.
+       * gfortran.dg/gomp/scope-6.f90: Likewise.
+       * g++.dg/gomp/uses_allocators-1.C: Move to
+       ../../libgomp/testsuite/libgomp.c++/uses_allocators-1.C.
+
+2026-06-30  Richard Biener  <[email protected]>
+
+       PR tree-optimization/126008
+       * gcc.dg/torture/pr126008.c: New testcase.
+
+2026-06-30  Christopher Bazley  <[email protected]>
+           Richard Sandiford  <[email protected]>
+
+       * gcc.dg/plugin/poly-int-tests.h: New test cases.
+
+2026-06-30  Jakub Jelinek  <[email protected]>
+
+       PR c++/126007
+       * g++.dg/ext/is_implicit_lifetime3.C: New test.
+
+2026-06-30  Jakub Jelinek  <[email protected]>
+
+       PR c/125935
+       * gcc.dg/debug/dwarf2/pr125935-1.c: New test.
+       * gcc.dg/debug/dwarf2/pr125935-2.c: New test.
+       * gcc.dg/debug/dwarf2/pr125935-3.c: New test.
+       * gcc.dg/debug/ctf/ctf-bitfields-3.c: Expect bool rather than _Bool.
+       * gcc.dg/Warray-bounds-65.c: Expect bool in diagnostics instead of
+       _Bool.
+       * gcc.dg/Wbad-function-cast-1.c: Likewise.
+
+2026-06-30  Jakub Jelinek  <[email protected]>
+
+       PR c++/125837
+       * g++.dg/cpp29/feat-cxx29.C (__cpp_pp_embed): Expect 202606L
+       rather than 202502L.
+       * c-c++-common/cpp/embed-18.c: Adjust expected diagnostics.
+       * g++.dg/cpp/embed-30.C: New test.
+       * g++.dg/cpp/embed-31.C: New test.
+       * g++.dg/cpp/embed-32.C: New test.
+
+2026-06-30  Avinash Jayakar  <[email protected]>
+           Surya Kumari Jangala  <[email protected]>
+
+       * gcc.target/powerpc/acmp-tst-32bit.c: New test.
+       * gcc.target/powerpc/acmp-tst.c: New test.
+       * gcc.target/powerpc/acmp-tst-indexed.c: New test.
+
+2026-06-30  Avinash Jayakar  <[email protected]>
+
+       Revert:
+       2026-06-30  Avinash Jayakar  <[email protected]>
+                   Surya Kumari Jangala  <[email protected]>
+
+       * gcc.target/powerpc/acmp-tst-32bit.c: New test.
+       * gcc.target/powerpc/acmp-tst.c: New test.
+       * gcc.target/powerpc/acmp-tst-indexed.c: New test.
+
+2026-06-30  Avinash Jayakar  <[email protected]>
+           Surya Kumari Jangala  <[email protected]>
+
+       * gcc.target/powerpc/acmp-tst-32bit.c: New test.
+       * gcc.target/powerpc/acmp-tst.c: New test.
+       * gcc.target/powerpc/acmp-tst-indexed.c: New test.
+
+2026-06-30  Xi Ruoyao  <[email protected]>
+
+       * gcc.target/loongarch/ssp-ilp32.c: New test.
+
+2026-06-30  Oleg Endo  <[email protected]>
+
+       PR target/55212
+       * gcc.target/sh/torture/pr55212-c464-3.c: New.
+
+2026-06-30  Oleg Endo  <[email protected]>
+
+       PR target/55212
+       * gcc.target/sh/torture/pr55212-c421.c
+
+2026-06-30  Robin Dapp  <[email protected]>
+
+       PR target/125994
+       * gcc.target/riscv/rvv/autovec/pr125994.c: New test.
+
 2026-06-29  Jeff Law  <[email protected]>
 
        * gcc.target/riscv/and-synthesis-1.c: New test.
diff --git a/include/ChangeLog b/include/ChangeLog
index 9ea24ca9e961..3d1d042b881c 100644
--- a/include/ChangeLog
+++ b/include/ChangeLog
@@ -1,3 +1,7 @@
+2026-06-30  Chung-Lin Tang  <[email protected]>
+
+       * gomp-constants.h (enum gomp_map_kind): Add GOMP_MAP_USES_ALLOCATORS.
+
 2026-06-24  Paul-Antoine Arras  <[email protected]>
 
        * gomp-constants.h (GOMP_BARRIER_IMPLICIT_PARALLEL): New macro.
diff --git a/libcpp/ChangeLog b/libcpp/ChangeLog
index 37639a8fc7ff..b6fc83c4458b 100644
--- a/libcpp/ChangeLog
+++ b/libcpp/ChangeLog
@@ -1,3 +1,12 @@
+2026-06-30  Jakub Jelinek  <[email protected]>
+
+       PR c++/125837
+       * include/cpplib.h: Implement C++29 P3540R3 - #embed offset parameter.
+       (enum cpp_warning_reason): Add CPP_W_CXX29_EXTENSIONS.
+       * directives.cc (EMBED_PARAMS): Add OFFSET.
+       (enum embed_param_kind): Change NUM_EMBED_STD_PARAMS.
+       (_cpp_parse_embed_params): Handle offset parameter for C++.
+
 2026-06-29  Pietro Monteiro  <[email protected]>
 
        PR bootstrap/103459
diff --git a/libgcobol/ChangeLog b/libgcobol/ChangeLog
index 1e328e757eab..071664954db3 100644
--- a/libgcobol/ChangeLog
+++ b/libgcobol/ChangeLog
@@ -1,3 +1,27 @@
+2026-06-30  Robert Dubner  <[email protected]>
+
+       * charmaps.h (class charmap_t): Return uint8_t instead of uint32_t
+       when possible to avoid endian problems.
+       (class cbl_iconv_t): Formatting.
+       * inspect.cc (normalize_id): Return endian agnostic uint8_t.
+       (normalize_id_sbc): Use endian agnostic uint8_t.
+       * libgcobol-fp.h: Add cppcheck-suppress.
+       * libgcobol.cc (native_to_binary_signed): New conversion.
+       (native_to_binary_unsigned): New name.
+       (big_endian_to_binary_unsigned): Endian-aware conversion.
+       (big_endian_to_binary_signed): Likewise.
+       (get_binary_value_local): Likewise.
+       (binary_to_big_endian): Likewise.
+       (binary_to_little_endian): Changed name.
+       (binary_to_native_binary): New name; new conversion.
+       (int128_to_field): Use new routine.
+       * libgcobol.h (__gg__mabort): Create COBOL_BIG_ENDIAN and
+       COBOL_LITTLE_ENDIAN macros.
+       (defined): Likewise.
+       (COBOL_BIG_ENDIAN): Likewise.
+       (COBOL_LITTLE_ENDIAN): Likewise.
+       * stringbin.cc (packed_from_combined): Endian awareness.
+
 2026-06-29  Pietro Monteiro  <[email protected]>
 
        PR bootstrap/103459
diff --git a/libgomp/ChangeLog b/libgomp/ChangeLog
index 44f80885ce80..bb54d5d3afc5 100644
--- a/libgomp/ChangeLog
+++ b/libgomp/ChangeLog
@@ -1,3 +1,96 @@
+2026-06-30  Thomas Schwinge  <[email protected]>
+
+       * config.h.in: Regenerate.
+       * configure.ac [x$libgomp_cv_have_sync_builtins = xno]: Fix check.
+       * configure: Regenerate.
+       * allocator.c (omp_init_allocator, gomp_map_omp_init_allocator)
+       [!HAVE_SYNC_BUILTINS]: Fix build.
+       * testsuite/libgomp.c-c++-common/uses_allocators-2.c: Fix for C++ 
testing.
+       * testsuite/libgomp.c-c++-common/uses_allocators-9.c: Likewise.
+       * testsuite/libgomp.fortran/dep-uses-allocators.f90: Remove
+       obsolete "sorry, unimplemented: [...]" diagnostic check.
+       * testsuite/libgomp.fortran/uses_allocators-7.f90: XFAIL one
+       'scan-tree-dump-times' check.
+
+2026-06-30  Chung-Lin Tang  <[email protected]>
+
+       * allocator.c (struct omp_allocator_data): Always enable 'memkind' field
+       for configurations with offloading. Adjust comments assuming
+       HAVE_SYNC_BUILTINS for all offload host/accelerators.
+       (gomp_init_allocator_data): New function, created from 
omp_init_allocator
+       logic.
+       (omp_init_allocator): Adjust to use gomp_init_allocator_data.
+       (gomp_map_omp_init_allocator): New function to call
+       gomp_init_allocator_data for uses_allocators clauses.
+       * config/gcn/allocator.c (gcn_memspace_validate): Add comments.
+       * config/nvptx/allocator.c (nvptx_memspace_alloc): Add PTX >= v4.1
+       preprocessor symbol check.
+       (nvptx_memspace_calloc): Likewise.
+       (nvptx_memspace_free): Likewise.
+       (nvptx_memspace_realloc): Likewise.
+       (nvptx_memspace_validate): Add comments.
+       * configure.ac: Require offload hosts and accelerator targets to support
+       __sync_* builtins.
+       * configure: Regenerate.
+       * libgomp-plugin.h (GOMP_OFFLOAD_memspace_validate): New declaration.
+       * libgomp.h (gomp_omp_allocator_data_size): New declaration.
+       (memspace_validate_func): New plugin hook in struct gomp_device_descr.
+       (gomp_map_omp_init_allocator): New declaration.
+       * oacc-host.c (host_dispatch): Init .memspace_validate_func = NULL.
+       * plugin/plugin-gcn.c (GOMP_OFFLOAD_memspace_validate): New function.
+       * plugin/plugin-nvptx.c (GOMP_OFFLOAD_memspace_validate): New function.
+       * target.c (gomp_map_vars_internal): Implement GOMP_MAP_USES_ALLOCATORS
+       map kind.
+       (calculate_firstprivate_requirements): Likewise.
+       (copy_firstprivate_data): Likewise.
+       (gomp_load_plugin_for_device): Add DLSYM_OPT of memspace_validate_func
+       hook.
+       * testsuite/libgomp.c++/uses_allocators-1.C: Moved from
+       ../gcc/testsuite/g++.dg/gomp/uses_allocators-1.C.
+       * testsuite/libgomp.c-c++-common/uses_allocators-1.c: Moved from
+       ../gcc/testsuite/c-c++-common/gomp/uses_allocators-1.c.
+       * testsuite/libgomp.c-c++-common/uses_allocators-2.c: Moved from
+       ../gcc/testsuite/c-c++-common/gomp/uses_allocators-2.c.
+       * testsuite/libgomp.c-c++-common/uses_allocators-4.c: Moved from
+       ../gcc/testsuite/c-c++-common/gomp/uses_allocators-4.c.
+       * testsuite/libgomp.c-c++-common/uses_allocators-7.c: Moved from
+       ../gcc/testsuite/c-c++-common/gomp/uses_allocators-7.c.
+       * testsuite/libgomp.c-c++-common/uses_allocators-8.c: Moved from
+       ../gcc/testsuite/c-c++-common/gomp/uses_allocators-8.c.
+       * testsuite/libgomp.c-c++-common/uses_allocators-3.c: New test.
+       * testsuite/libgomp.c-c++-common/uses_allocators-5.c: New test.
+       * testsuite/libgomp.c-c++-common/uses_allocators-6.c: New test.
+       * testsuite/libgomp.c-c++-common/uses_allocators-9.c: New test.
+       * testsuite/libgomp.fortran/uses_allocators-1.f90: New test.
+       * testsuite/libgomp.fortran/uses_allocators-2.f90:
+       Rename from uses_allocators_1.f90.
+       * testsuite/libgomp.fortran/uses_allocators-3.f90:
+       Rename from uses_allocators_2.f90.
+       * testsuite/libgomp.fortran/uses_allocators-4.f90: New test.
+       * testsuite/libgomp.fortran/uses_allocators-5.f90: New test.
+       * testsuite/libgomp.fortran/uses_allocators-6.f90: New test.
+       * testsuite/libgomp.fortran/uses_allocators-7.f90: Adjust test.
+       * testsuite/libgomp.fortran/uses_allocators-8.f90: New test.
+       * testsuite/libgomp.fortran/uses_allocators_1.f90:
+       Renamed to uses_allocators-2.f90 and deleted.
+       * testsuite/libgomp.fortran/uses_allocators_2.f90:
+       Renamed to uses_allocators-3.f90 and deleted.
+       * testsuite/libgomp.c++/c++.exp (check_effective_target_c): Add.
+       (check_effective_target_c++): Add.
+       * testsuite/libgomp.c/c.exp (check_effective_target_c): Add.
+       (check_effective_target_c++): Add.
+
+2026-06-30  Thomas Schwinge  <[email protected]>
+
+       PR libgomp/125877
+       * config/linux/numa.c (gomp_get_numa_distance): Gracefully handle
+       failure to open Linux sysfs file for NUMA node.
+
+2026-06-30  Thomas Schwinge  <[email protected]>
+
+       PR libgomp/125877
+       * plugin/plugin-nvptx.c (nvptx_open_device): Initialize 'numa_node'.
+
 2026-06-29  Pietro Monteiro  <[email protected]>
 
        PR bootstrap/103459
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 30f54a48299e..bcecd1f9561b 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,59 @@
+2026-06-30  Adam Wood  <[email protected]>
+           Jonathan Wakely  <[email protected]>
+
+       * src/c++17/fs_ops.cc: Include <winioctl.h> for
+       FSCTL_GET_REPARSE_POINT. Include <ntdef.h> for
+       REPARSE_DATA_BUFFER.
+       (windows_create_symlink): New helper function for
+       fs::create_symlink and fs::create_directory_symlink.
+       (fs::create_directory_symlink): Call windows_create_symlink on
+       Windows.
+       (fs::create_symlink): Call windows_create_symlink on Windows.
+       (auto_win_file_handle::auto_win_file_handle): Add follow_symlink
+       parameter to control whether the handle should open the symlink
+       or the target, with a default value of true.
+       (windows_read_symlink_handle): New helper function
+       for fs::read_symlink.
+       (fs::read_symlink): Call windows_read_symlink_handle on Windows.
+       (fs::remove): Call RemoveDirectoryW only for directories, and
+       DeleteFileW for regular files, but attempt both for symlinks.
+       (fs::remove_all): Return immediately if path is empty.
+       Check if path points to a symlink, and if so, remove the
+       symlink using fs::remove.
+       * src/filesystem/ops-common.h [_GLIBCXX_FILESYSTEM_IS_WINDOWS]
+       (S_IFLNK, S_ISLNK): Define.
+       (__detail::__open_for_stat): New helper function for stat and
+       lstat.
+       (__detail::FileType): New enum type.
+       (__detail::__check_handle_type): New helper function for stat
+       and lstat.
+       (__detail::__is_handle_symlink): New helper function for
+       fs::read_symlink.
+       (__detail::__stat_windows): New helper function for stat and
+       lstat.
+       (__gnu_posix::stat, __gnu_posix::lstat): Use __stat_windows to
+       properly follow or not follow symlinks, and check if file is a
+       symlink.
+       * testsuite/27_io/filesystem/operations/canonical.cc (test03):
+       Use fs::create_directory_symlink instead of fs::create_symlink.
+       Check if NO_SYMLINKS or _GLIBCXX_FILESYSTEM_IS_WINDOWS instead
+       of just checking NO_SYMLINKS when defining baz.
+       * testsuite/27_io/filesystem/operations/copy.cc (test02):
+       Create a symlink to temporary file instead of ".".  Use
+       fs::exists(symlink_status()) instead of fs::exists for symlinks.
+       * testsuite/27_io/filesystem/operations/weakly_canonical.cc
+       (test01): Use fs::create_directory_symlink instead of
+       fs::create_symlink.  Wrap statements that test a dotdot after a
+       symlink in an ifndef _GLIBCXX_FILESYSTEM_IS_WINDOWS.
+       * testsuite/util/testsuite_fs.h: Do not define NO_SYMLINKS on
+       Windows.
+
+2026-06-30  Adam Wood  <[email protected]>
+
+       * testsuite/27_io/filesystem/operations/remove.cc: Check that
+       fs::remove deletes symlink instead of target.
+       * testsuite/27_io/filesystem/operations/remove_all.cc: Likewise.
+
 2026-06-29  Jonathan Wakely  <[email protected]>
 
        * include/bits/chrono_io.h: Fix comment typo.

Reply via email to