https://gcc.gnu.org/g:4695252ee8493236c6267892b52b204c22106d37

commit r17-216-g4695252ee8493236c6267892b52b204c22106d37
Author: GCC Administrator <[email protected]>
Date:   Thu Apr 30 00:16:31 2026 +0000

    Daily bump.

Diff:
---
 gcc/ChangeLog           | 457 ++++++++++++++++++++++++++++++++++++++++++++++++
 gcc/DATESTAMP           |   2 +-
 gcc/c-family/ChangeLog  |  12 ++
 gcc/c/ChangeLog         |  12 ++
 gcc/cp/ChangeLog        |  42 +++++
 gcc/fortran/ChangeLog   |   9 +
 gcc/testsuite/ChangeLog | 131 ++++++++++++++
 libsanitizer/ChangeLog  |   5 +
 libstdc++-v3/ChangeLog  |  27 +++
 9 files changed, 696 insertions(+), 1 deletion(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 8ec41237655d..f331efbdc127 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,460 @@
+2026-04-29  Pengxuan Zheng  <[email protected]>
+
+       PR tree-optimization/113379
+       * match.pd (min(a,b) {<=,>,<,>=} max(a,b)): New patterns.
+
+2026-04-29  John David Anglin  <[email protected]>
+
+       * doc/install.texi (hppa64-hp-hpux11*): Remove incorrect
+       statement.
+
+2026-04-29  Wilco Dijkstra  <[email protected]>
+
+       * config/aarch64/aarch64.opt (mpc-relative-literal-loads):
+       Deprecate.
+       * config/aarch64/aarch64.cc (aarch64_override_options):
+       Add deprecated warning for -mpc-relative-literal-loads.
+       * doc/invoke.texi (mpc-relative-literal-loads): Update docs.
+
+2026-04-29  Wilco Dijkstra  <[email protected]>
+
+       * config/aarch64/aarch64.h (HAS_LONG_COND_BRANCH): Unused, remove.
+       (HAS_LONG_UNCOND_BRANCH): unused, remove.
+       * config/aarch64/aarch64.cc (aarch64_use_pseudo_pic_reg): Declare.
+       (aarch64_rtx_costs): Update.
+       (aarch64_override_options_after_change_1): Likewise.
+       (initialize_aarch64_code_model): Simplify.
+       (aarch64_classify_tls_symbol): Likewise.
+       (aarch64_classify_symbol): Simplify, remove duplicated code.
+       (aarch64_asm_preferred_eh_data_format): Update.
+       (aarch64_use_pseudo_pic_reg): Update.
+       * config/aarch64/aarch64-c.cc (aarch64_update_cpp_builtins):
+       Remove uses of AARCH64_CMODEL_TINY_PIC, AARCH64_CMODEL_SMALL_PIC,
+       and AARCH64_CMODEL_SMALL_SPIC.
+       * config/aarch64/aarch64-opts.h (aarch64_code_model):
+       Remove AARCH64_CMODEL_TINY_PIC, AARCH64_CMODEL_SMALL_PIC and
+       AARCH64_CMODEL_SMALL_SPIC.
+
+2026-04-29  Vladimir N. Makarov  <[email protected]>
+
+       * lra-remat.cc (do_remat): Use the right nregs for pseudo hard reg
+       when updating live hard regs.
+
+2026-04-29  Vladimir N. Makarov  <[email protected]>
+
+       * lra-remat.cc (reg_overlap_for_remat_p): Use the right mode for
+       regno2.
+
+2026-04-29  Vladimir N. Makarov  <[email protected]>
+
+       * ira-conflicts.cc (build_object_conflicts): Use the right
+       conflicting allocno.
+
+2026-04-29  Richard Biener  <[email protected]>
+
+       PR tree-optimization/125080
+       * tree-vect-slp.cc (vect_bb_slp_mark_stmts_vectorized): Only
+       add instance root stmts to scalar coverage if they do not
+       appear in externs.
+
+2026-04-29  Xin Liu  <[email protected]>
+           Zhaoling Bao  <[email protected]>
+
+       * common/config/i386/cpuinfo.h (get_hygon_cpu): Detect the specific
+       type of HYGON CPU and return HYGON CPU name.
+       (cpu_indicator_init): Handle HYGON CPU.
+       * common/config/i386/i386-common.cc (processor_names): Add HYGON
+       C86-4G processors c86-4g-m{4,6,7}.
+       (processor_alias_table): Add hygon, hygonfam18h and c86-4g-m{4,6,7}
+       entries.
+       (ARRAY_SIZE): Update as new entries added.
+       * common/config/i386/i386-cpuinfo.h (enum processor_vendor): Add
+       VENDOR_HYGON.
+       (enum processor_types): Add HYGONFAM18H.
+       (enum processor_subtypes): Add HYGONFAM18H_C86_4G_M{4,6,7}.
+       * config.gcc: Add support for c86_4g_m{4,6,7}.
+       * config/i386/cpuid.h (signature_HYGON_ebx):  Add signature for HYGON.
+       (signature_HYGON_ecx): Ditto.
+       (signature_HYGON_edx): Ditto.
+       * config/i386/driver-i386.cc (host_detect_local_cpu): Support HYGON
+       c86-4g-m4{4,6,7} processors.
+       * config/i386/i386-c.cc (ix86_target_macros_internal): Ditto.
+       * config/i386/i386-options.cc (m_C86_4G_M4): New definition.
+       (m_C86_4G_M6): Ditto.
+       (m_C86_4G_M7): Ditto.
+       (m_C86_4G): Ditto.
+       (processor_cost_table): Add cost entries for c86-4g-m4{4,6,7}.
+       * config/i386/i386.cc (ix86_reassociation_width): Add handlings for
+       PROCESSOR_C86_4G_M{4,6,7}.
+       * config/i386/i386.h (enum processor_type): Define
+       PROCESSOR_C86_4G_M{4,6,7}.
+       (PTA_C86_4G_M4): New define.
+       (PTA_C86_4G_M6): Ditto.
+       (PTA_C86_4G_M7): Ditto.
+       * config/i386/x86-tune-costs.h (c86_4g_m4_memcpy): New stringop_algs.
+       (c86_4g_m4_cost): New processor_costs.
+       (c86_4g_m6_cost): Ditto.
+       (c86_4g_m7_cost): Ditto.
+       * config/i386/x86-tune-sched.cc (ix86_issue_rate): Handle
+       PROCESSOR_C86_4G_M{4,6,7}.
+       (ix86_adjust_cost): Ditto.
+       * config/i386/x86-tune.def (X86_TUNE_SCHEDULE): Handle m_C86_4G.
+       (X86_TUNE_PARTIAL_REG_DEPENDENCY): Ditto.
+       (X86_TUNE_SSE_PARTIAL_REG_DEPENDENCY): Ditto.
+       (X86_TUNE_SSE_PARTIAL_REG_FP_CONVERTS_DEPENDENCY): Ditto.
+       (X86_TUNE_SSE_PARTIAL_REG_CONVERTS_DEPENDENCY): Ditto.
+       (X86_TUNE_MEMORY_MISMATCH_STALL): Ditto.
+       (X86_TUNE_FUSE_CMP_AND_BRANCH_32): Ditto.
+       (X86_TUNE_FUSE_CMP_AND_BRANCH_64): Ditto.
+       (X86_TUNE_FUSE_CMP_AND_BRANCH_SOFLAGS): Ditto.
+       (X86_TUNE_USE_LEAVE): Ditto.
+       (X86_TUNE_PUSH_MEMORY): Ditto.
+       (X86_TUNE_INTEGER_DFMODE_MOVES): Ditto.
+       (X86_TUNE_MISALIGNED_MOVE_STRING_PRO_EPILOGUES): Ditto.
+       (X86_TUNE_USE_SAHF): Ditto.
+       (X86_TUNE_USE_BT): Ditto.
+       (X86_TUNE_AVOID_MFENCE): Ditto.
+       (X86_TUNE_USE_FFREEP): Ditto.
+       (X86_TUNE_SSE_UNALIGNED_STORE_OPTIMAL): Ditto.
+       (X86_TUNE_SSE_PACKED_SINGLE_INSN_OPTIMAL): Ditto.
+       (X86_TUNE_SSE_TYPELESS_STORES): Ditto.
+       (X86_TUNE_SSE_LOAD0_BY_PXOR): Ditto.
+       (X86_TUNE_USE_GATHER_2PARTS): Ditto.
+       (X86_TUNE_USE_GATHER_4PARTS): Ditto.
+       (X86_TUNE_USE_GATHER_8PARTS): Ditto.
+       (X86_TUNE_AVOID_128FMA_CHAINS): Ditto.
+       (X86_TUNE_AVOID_256FMA_CHAINS): Ditto.
+       (X86_TUNE_USE_RCR): Ditto.
+       (X86_TUNE_AVX256_MOVE_BY_PIECES): Handle m_C86_4G_M{4,6}.
+       (X86_TUNE_USE_SCATTER_2PARTS): Handle m_C86_4G_M7.
+       (X86_TUNE_USE_SCATTER_4PARTS): Ditto.
+       (X86_TUNE_USE_SCATTER_8PARTS): Ditto.
+       (X86_TUNE_SSE_REDUCTION_PREFER_PSHUF): Ditto.
+       (X86_TUNE_AVX512_SPLIT_REGS): Ditto.
+       (X86_TUNE_AVX512_MOVE_BY_PIECES): Ditto.
+       (X86_TUNE_AVX512_MASKED_EPILOGUES): Ditto.
+       * doc/extend.texi: Document about hygonfam18h and c86-4g-m{4,6,7}.
+       * doc/invoke.texi: Document about c86-4g-m{4,6,7}.
+       * config/i386/c86-4g-m7.md: New file for c86-4g-m7 scheduling model
+       information.
+       * config/i386/c86-4g.md: New file for c86-4g-m{4,6} scheduling model
+       information.
+       * config/i386/i386.md (cpu attr): Add c86_4g_m{4,6,7}.
+       (c86-4g.md): New include.
+       (c86-4g-m7.md): Ditto.
+       (*cmpi<unord>xf_i387): Set attr c86_decode.
+       (*cmpi<unord><MODEF:mode>): Ditto.
+       (swap<mode>): Ditto.
+       (*swap<mode>): Ditto.
+       (extendhisi2): Ditto.
+       (floathi<mode>2): Ditto.
+       (float<SWI48x:mode>xf2): Ditto.
+       (*float<SWI48:mode><MODEF:mode>2): Ditto.
+       (*floatdi<MODEF:mode>2_i387): Ditto.
+       (*anddi_1_bt): Ditto.
+       (*iordi_1_bts): Ditto.
+       (*xordi_1_btc): Ditto.
+       (*<btsc><mode>): Ditto.
+       (*btr<mode>): Ditto.
+       (*btsq_imm): Ditto.
+       (*btrq_imm): Ditto.
+       (*btcq_imm): Ditto.
+       (*tzcnt<mode>_1): Ditto.
+       (*tzcnt<mode>_1_falsedep): Ditto.
+       (*bsf<mode>_1): Ditto.
+       (*ctz<mode>2_falsedep): Ditto.
+       (*ctzsi2_zext): Ditto.
+       (*ctzsi2_zext_falsedep): Ditto.
+       (bsr_rex64): Ditto.
+       (bsr_rex64_1): Ditto.
+       (bsr_rex64_1_zext): Ditto.
+       (bsr): Ditto.
+       (bsr_1): Ditto.
+       (bsr_zext_1): Ditto.
+       (*bswaphi2_movbe): Ditto.
+       (*bswaphi2): Ditto.
+       (bswaphisi2_lowpart): Ditto.
+       (fpremxf4_i387): Ditto.
+       (fprem1xf4_i387): Ditto.
+       (<sincos>xf2): Ditto.
+       (sincosxf3): Ditto.
+       (fptanxf4_i387): Ditto.
+       (atan2xf3): Ditto.
+       (fyl2xxf3_i387): Ditto.
+       (fyl2xp1xf3_i387): Ditto.
+       (fxtractxf3_i387): Ditto.
+       (*f2xm1xf2_i387): Ditto.
+       (fscalexf4_i387): Ditto.
+       (rintxf2): Ditto.
+       (*movxi_internal_avx512f): Set attr c86_attr.
+       (*movoi_internal_avx): Ditto.
+       (*movti_internal): Ditto.
+       (*movdi_internal): Ditto.
+       (*movsi_internal): Ditto.
+       (*movhi_internal): Ditto.
+       (*movtf_internal): Ditto.
+       (*movdf_internal): Ditto.
+       (*movsf_internal): Ditto.
+       (*zero_extendsidi2): Ditto.
+       (sqrtxf2): Ditto.
+       (<smaxmin:code><mode>3): Ditto.
+       (*ieee_s<ieee_maxmin><mode>3): Ditto.
+       * config/i386/mmx.md (*mmx_maskmovq): Set attr c86_decode.
+       (*mmx_maskmovq): Ditto.
+       (sse_movntq): Set attr c86_attr.
+       (*mmx_blendps): Ditto.
+       (mmx_blendvps): Ditto.
+       (*mmx_pmaddwd): Ditto.
+       (mmx_pblendvb_v8qi): Ditto.
+       (mmx_pblendvb_<mode>): Ditto.
+       (sse4_1_<code>v4qiv4hi2): Ditto.
+       (sse4_1_<code>v2hiv2si2): Ditto.
+       (sse4_1_<code>v2qiv2si2): Ditto.
+       (sse4_1_<code>v2qiv2hi2): Ditto.
+       (*mmx_pinsrd): Ditto.
+       (*mmx_pinsrw): Ditto.
+       (*mmx_pinsrb): Ditto.
+       (*mmx_pextrw): Ditto.
+       (*mmx_pextrw<mode>): Ditto.
+       (*mmx_pextrw_zext): Ditto.
+       (*mmx_pextrb): Ditto.
+       (*mmx_pextrb_zext): Ditto.
+       (*mmx_pblendw64): Ditto.
+       (*mmx_pblendw32): Ditto.
+       (*vec_extractv2si_1): Ditto.
+       (*vec_extractv2si_1_zext): Ditto.
+       (*pinsrw): Ditto.
+       (*pinsrb): Ditto.
+       (*pextrw): Ditto.
+       (*pextrw<mode>): Ditto.
+       (*pextrw_zext): Ditto.
+       (*pextrb): Ditto.
+       (*pextrb_zext): Ditto.
+       (*mmx_psadbw): Ditto.
+       * config/i386/sse.md (ktest<mode>): Set attr c86_decode.
+       (*kortest<mode>): Ditto.
+       (sse_cvtsi2ss<rex64namesuffix><round_name>): Ditto.
+       (sse2_cvtsi2sd): Ditto.
+       (sse2_maskmovdqu): Ditto.
+       (*<sse>_dp<ssemodesuffix><avxsizesuffix>): Ditto.
+       (*<sse4_1_avx2>_mpsadbw): Ditto.
+       (pclmulqdq): Ditto.
+       (<mask_codefor>conflict<mode><mask_name>): Ditto.
+       (<avx512>_blendm<mode>): Set attr c86_attr.
+       (sse2_movnti<mode>): Ditto.
+       (<sse>_movnt<mode>): Ditto.
+       (<sse2>_movnt<mode>): Ditto.
+       (<sse>_rcp<mode>2): Ditto.
+       (sse_vmrcpv4sf2): Ditto.
+       (<mask_codefor>rcp14<mode><mask_name>): Ditto.
+       (srcp14<mode>): Ditto.
+       (srcp14<mode>_mask): Ditto.
+       (<sse>_sqrt<mode>2<mask_name><round_name>): Ditto.
+       (<sse>_vmsqrt<mode>2<mask_scalar_name><round_scalar_name>): Ditto.
+       (*<sse>_vmsqrt<mode>2<mask_scalar_name><round_scalar_name>): Ditto.
+       (<mask_codefor>rsqrt14<mode><mask_name>): Ditto.
+       (rsqrt14<mode>): Ditto.
+       (rsqrt14_<mode>_mask"): Ditto.
+       (*<code><mode>3<mask_name><round_saeonly_name>): Ditto.
+       (ieee_<ieee_maxmin><mode>3<mask_name><round_saeonly_name>): Ditto.
+       (*<sse>_vm<code><mode>3<mask_scalar_name><round_saeonly_scalar_name>):
+       Ditto.
+       (<sse>_ieee_vm<ieee_maxmin><mode>3<mask_scalar_name>
+       <round_saeonly_scalar_name>): Ditto.
+       (*ieee_<ieee_maxmin><mode>3): Ditto.
+       (avx_h<insn>v4df3): Ditto.
+       (*sse3_haddv2df3): Ditto.
+       (sse3_hsubv2df3): Ditto.
+       (*sse3_haddv2df3_low): Ditto.
+       (*sse3_hsubv2df3_low): Ditto.
+       (avx_h<insn>v8sf3): Ditto.
+       (sse3_h<insn>v4sf3): Ditto.
+       (*<mask_codefor>reducep<mode><mask_name><round_saeonly_name>): Ditto.
+       (reduces<mode><mask_scalar_name><round_saeonly_scalar_name>): Ditto.
+       (*<avx512>_eq<mode>3<mask_scalar_merge_name>_1): Ditto.
+       (<sse>_andnot<mode>3<mask_name>): Ditto.
+       (*<code><mode>3<mask_name>): Ditto.
+       (*andnot<mode>3): Ditto.
+       (<code><mode>3): Ditto.
+       (*<code>tf3): Ditto.
+       (vec_set<mode>_0): Ditto.
+       (@vec_set<mode>_0): Ditto.
+       (*sse4_1_extractps): Ditto.
+       (vec_extract<mode>): Ditto.
+       (<mask_codefor><avx512>_align<mode><mask_name>): Ditto.
+       (avx512bw_pmaddwd512<mode><mask_name>): Ditto.
+       (*avx2_pmaddw): Ditto.
+       (*sse2_pmaddwd): Ditto.
+       (*avx2_<code><mode>3): Ditto.
+       (*avx512f_<code><mode>3<mask_name>): Ditto.
+       (*avx512bw_<code><mode>3<mask_name>): Ditto.
+       (*sse4_1_<code><mode>3<mask_name>): Ditto.
+       (*<code>v8hi3): Ditto.
+       (*<code>v16qi3): Ditto.
+       (*andnot<mode>3_mask): Ditto.
+       (*<code><mode>3): Ditto.
+       (<code>v1ti3): Ditto.
+       (<sse2p4_1>_pinsr<ssemodesuffix>): Ditto.
+       (*<extract_type>_vinsert<shuffletype><extract_suf>_0): Ditto.
+       (<mask_codefor><extract_type>_vinsert<shuffletype><extract_suf>
+       _1<mask_name>): Ditto.
+       (vec_set_lo_<mode><mask_name>): Ditto.
+       (vec_set_hi_<mode><mask_name>): Ditto.
+       (<mask_codefor>avx512dq_shuf_<shuffletype>64x2_1<mask_name>): Ditto.
+       (avx512f_shuf_<shuffletype>64x2_1<mask_name>): Ditto.
+       (*avx512f_shuf_<shuffletype>64x2_1<mask_name>_1): Ditto.
+       (avx512vl_shuf_<shuffletype>32x4_1<mask_name>): Ditto.
+       (avx512f_shuf_<shuffletype>32x4_1<mask_name>): Ditto.
+       (*avx512f_shuf_<shuffletype>32x4_1<mask_name>_1): Ditto.
+       (*vec_extract<mode>): Ditto.
+       (*vec_extract<PEXTR_MODE12:mode>_zext): Ditto.
+       (*vec_extractv16qi_zext): Ditto.
+       (*vec_extractv4si): Ditto.
+       (*vec_extractv4si_zext): Ditto.
+       (*vec_extractv2di_1): Ditto.
+       (*vec_concatv2si_sse4_1): Ditto.
+       (vec_concatv2di): Ditto.
+       (*<sse2_avx2>_uavg<mode>3<mask_name>): Ditto.
+       (*<sse2_avx2>_psadbw): Ditto.
+       (<sse>_movmsk<ssemodesuffix><avxsizesuffix>): Ditto.
+       (*<sse>_movmsk<ssemodesuffix><avxsizesuffix>_<u>ext): Ditto.
+       (<sse2_avx2>_pmovmskb): Ditto.
+       (*<sse2_avx2>_pmovmskb_zext): Ditto.
+       (*sse2_maskmovdqu): Ditto.
+       (avx2_ph<plusminus_mnemonic>wv16hi3): Ditto.
+       (ssse3_ph<plusminus_mnemonic>wv8hi3): Ditto.
+       (ssse3_ph<plusminus_mnemonic>dv4si3): Ditto.
+       (avx2_ph<plusminus_mnemonic>dv8si3): Ditto.
+       (avx2_pmaddubsw256): Ditto.
+       (avx512bw_pmaddubsw512<mode><mask_name>): Ditto.
+       (ssse3_pmaddubsw128): Ditto.
+       (<ssse3_avx2>_psign<mode>3): Ditto.
+       (ssse3_psign<mode>3): Ditto.
+       (*abs<mode>2): Ditto.
+       (abs<mode>2_mask): Ditto.
+       (abs<mode>2_mask): Ditto.
+       (sse4a_movnt<mode>): Ditto.
+       (sse4a_vmmovnt<mode>): Ditto.
+       (<sse4_1>_blend<ssemodesuffix><avxsizesuffix>): Ditto.
+       (<sse4_1>_blendv<ssemodesuffix><avxsizesuffix>): Ditto.
+       (sse4_1_blendv<ssemodesuffix>): Ditto.
+       (<vi8_sse4_1_avx2_avx512>_movntdqa): Ditto.
+       (<sse4_1_avx2>_pblendvb): Ditto.
+       (sse4_1_pblend<ssemodesuffix>): Ditto.
+       (*avx2_pblend<ssemodesuffix>): Ditto.
+       (avx2_pblendd<mode>): Ditto.
+       (avx2_<code>v16qiv16hi2<mask_name>): Ditto.
+       (avx512bw_<code>v32qiv32hi2<mask_name>): Ditto.
+       (sse4_1_<code>v8qiv8hi2<mask_name>): Ditto.
+       (*sse4_1_<code>v8qiv8hi2<mask_name>_1): Ditto.
+       (<mask_codefor>avx512f_<code>v16qiv16si2<mask_name>): Ditto.
+       (avx2_<code>v8qiv8si2<mask_name>): Ditto.
+       (*avx2_<code>v8qiv8si2<mask_name>_1): Ditto.
+       (sse4_1_<code>v4qiv4si2<mask_name>): Ditto.
+       (*sse4_1_<code>v4qiv4si2<mask_name>_1): Ditto.
+       (avx512f_<code>v16hiv16si2<mask_name>): Ditto.
+       (avx2_<code>v8hiv8si2<mask_name>): Ditto.
+       (sse4_1_<code>v4hiv4si2<mask_name>): Ditto.
+       (*sse4_1_<code>v4hiv4si2<mask_name>_1): Ditto.
+       (avx512f_<code>v8qiv8di2<mask_name>): Ditto.
+       (*avx512f_<code>v8qiv8di2<mask_name>_1): Ditto.
+       (avx2_<code>v4qiv4di2<mask_name>): Ditto.
+       (*avx2_<code>v4qiv4di2<mask_name>_1): Ditto.
+       (sse4_1_<code>v2qiv2di2<mask_name>): Ditto.
+       (*sse4_1_<code>v2qiv2di2<mask_name>_1): Ditto.
+       (avx512f_<code>v8hiv8di2<mask_name>): Ditto.
+       (avx2_<code>v4hiv4di2<mask_name>): Ditto.
+       (*avx2_<code>v4hiv4di2<mask_name>_1): Ditto.
+       (sse4_1_<code>v2hiv2di2<mask_name>): Ditto.
+       (*sse4_1_<code>v2hiv2di2<mask_name>_1): Ditto.
+       (avx512f_<code>v8siv8di2<mask_name>): Ditto.
+       (avx2_<code>v4siv4di2<mask_name>): Ditto.
+       (sse4_1_<code>v2siv2di2<mask_name>): Ditto.
+       (*sse4_1_<code>v2siv2di2<mask_name>_1): Ditto.
+       (sse4_1_round<ssescalarmodesuffix>): Ditto.
+       (*sse4_1_round<ssescalarmodesuffix>"): Ditto.
+       (sse4_2_pcmpestri): Ditto.
+       (sse4_2_pcmpestrm): Ditto.
+       (sse4_2_pcmpestr_cconly): Ditto.
+       (sse4_2_pcmpistri): Ditto.
+       (sse4_2_pcmpistrm): Ditto.
+       (sse4_2_pcmpistr_cconly): Ditto.
+       (xop_phadd<u>bw): Ditto.
+       (xop_phadd<u>bd): Ditto.
+       (xop_phadd<u>bq): Ditto.
+       (xop_phadd<u>wd): Ditto.
+       (xop_phadd<u>wq): Ditto.
+       (xop_phadd<u>dq): Ditto.
+       (xop_phsubbw): Ditto.
+       (xop_phsubwd): Ditto.
+       (xop_phsubdq): Ditto.
+       (aesenc): Ditto.
+       (aesenclast): Ditto.
+       (aesdec): Ditto.
+       (aesdeclast): Ditto.
+       (aesimc): Ditto.
+       (aeskeygenassist): Ditto.
+       (<avx2_avx512>_permvar<mode><mask_name>): Ditto.
+       (avx2_perm<mode>_1<mask_name>): Ditto.
+       (<avx512>_permvar<mode><mask_name>): Ditto.
+       (avx512f_perm<mode>_1<mask_name>): Ditto.
+       (<mask_codefor>avx512f_broadcast<mode><mask_name>): Ditto.
+       (avx_vbroadcastf128_<mode>): Ditto.
+       (<mask_codefor>avx512vl_broadcast<mode><mask_name>_1): Ditto.
+       (<mask_codefor>avx512dq_broadcast<mode><mask_name>_1): Ditto.
+       (*<avx512>_vpermi2var<mode>3_mask): Ditto.
+       (<avx512>_vpermt2var<mode>3<sd_maskz_name>): Ditto.
+       (<avx512>_vpermt2var<mode>3_mask): Ditto.
+       (*avx_vperm2f128<mode>_nozero): Ditto.
+       (vec_set_lo_<mode><mask_name>): Ditto.
+       (vec_set_hi_<mode><mask_name>): Ditto.
+       (vec_set_lo_<mode>): Ditto.
+       (vec_set_hi_<mode>): Ditto.
+       (vec_set_lo_v32qi): Ditto.
+       (<avx_avx2>_maskload<ssemodesuffix><avxsizesuffix>): Ditto.
+       (<avx_avx2>_maskstore<ssemodesuffix><avxsizesuffix>): Ditto.
+       (avx_vec_concat<mode>): Ditto.
+       (<avx512>_compress<mode>_mask): Ditto.
+       (compress<mode>_mask): Ditto.
+       (<avx512>_compressstore<mode>_mask): Ditto.
+       (compressstore<mode>_mask): Ditto.
+       (expand<mode>_mask): Ditto.
+       (<mask_codefor>avx512bw_dbpsadbw<mode><mask_name>): Ditto.
+       (clz<mode>2<mask_name>): Ditto.
+       (vpmadd52<vpmadd52type>v8di): Ditto.
+       (vpmadd52<vpmadd52type><mode>): Ditto.
+       (vpmadd52<vpmadd52type><mode>_maskz_1): Ditto.
+       (vpmadd52<vpmadd52type><mode>_mask): Ditto.
+       (vaesdec_<mode>): Ditto.
+       (vaesdeclast_<mode>): Ditto.
+       (vaesenc_<mode>): Ditto.
+       (vaesenclast_<mode>): Ditto.
+
+2026-04-29  Pan Li  <[email protected]>
+
+       * config/riscv/predicates.md: Add ltu to swappable
+       cmp operator.
+       * config/riscv/riscv-v.cc (get_swapped_cmp_rtx_code): Handle
+       the swapped rtx code as well.
+
+2026-04-29  Jakub Jelinek  <[email protected]>
+
+       PR middle-end/123635
+       * gimple-lower-bitint.cc (bitint_large_huge::finish_arith_overflow):
+       Move obj_nelts/atype computation before bitint_extended handling.  For
+       bitint_big_endian in the bitint_extended handling use size_zero_node
+       only for limb_access_type calls, otherwise use
+       size_int (nelts - obj_nelts) and pass NULL_TREE as first argument to
+       limb_access calls.
+
+2026-04-29  Raghesh Aloor  <[email protected]>
+
+       * tree-vect-slp.cc (vect_slp_linearize_chain): Optional parameter
+       allow_alt_code added (default true), check added not to follow
+       MINUS_EXPR, when false.
+       (vect_slp_check_for_roots): Calls vect_slp_linearize_chain with
+       parameter allow_alt_code set to false.
+
 2026-04-28  David Malcolm  <[email protected]>
 
        PR analyzer/124217
diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP
index 9d1459a9cd52..500371a7ade1 100644
--- a/gcc/DATESTAMP
+++ b/gcc/DATESTAMP
@@ -1 +1 @@
-20260429
+20260430
diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog
index 6851725b2b4b..aa40526bd079 100644
--- a/gcc/c-family/ChangeLog
+++ b/gcc/c-family/ChangeLog
@@ -1,3 +1,15 @@
+2026-04-29  Julian Brown  <[email protected]>
+
+       * c-common.h (c_omp_region_type): Add C_ORT_EXIT_DATA,
+       C_ORT_OMP_EXIT_DATA.
+       (c_omp_instantiate_mappers): Add region type parameter.
+       * c-omp.cc (omp_split_map_kind, omp_join_map_kind,
+       omp_map_decayed_kind): New functions.
+       (omp_instantiate_mapper): Add ORT parameter.  Implement map kind decay
+       for instantiated mapper clauses.
+       (c_omp_instantiate_mappers): Add ORT parameter, pass to
+       omp_instantiate_mapper.
+
 2026-04-28  Jakub Jelinek  <[email protected]>
 
        * c-common.cc (c_common_signed_or_unsigned_type): Use
diff --git a/gcc/c/ChangeLog b/gcc/c/ChangeLog
index 305041fb081c..a8edc7f4c450 100644
--- a/gcc/c/ChangeLog
+++ b/gcc/c/ChangeLog
@@ -1,3 +1,15 @@
+2026-04-29  Julian Brown  <[email protected]>
+
+       * c-parser.cc (c_parser_omp_target_data): Instantiate mappers for
+       'omp target data'.
+       (c_parser_omp_target_enter_data): Instantiate mappers for 'omp target
+       enter data'.
+       (c_parser_omp_target_exit_data): Instantiate mappers for 'omp target
+       exit data'.
+       (c_parser_omp_target): Add c_omp_region_type argument to
+       c_omp_instantiate_mappers call.
+       * c-tree.h (c_omp_instantiate_mappers): Remove spurious prototype.
+
 2026-04-28  Jakub Jelinek  <[email protected]>
 
        * c-decl.cc (finish_declspecs) <case cts_bitint>: Implement
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 786cb94b48b0..08f64a95e4e5 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,45 @@
+2026-04-29  Patrick Palka  <[email protected]>
+
+       PR c++/125035
+       * module.cc (merge_key): Add iobj_p and xobj_p bits.
+       (trees_out::key_mergeable) <case MK_named>: Set and stream
+       merge_key's iobj_p and xobj_p bits.
+       (check_mergeable_decl) <case FUNCTION_DECL>: Compare merge_key's
+       iobj_p and xobj_p bits with that of the given function.
+       (trees_in::key_mergeable): Stream merge_key's iobj_p and xobj_p
+       bits.
+
+2026-04-29  Patrick Palka  <[email protected]>
+
+       PR c++/124582
+       PR c++/123810
+       * module.cc (check_mergeable_decl) <case TYPE_DECL>: Handle
+       merging a typedef to an unnamed type with the -freflection
+       representation.
+
+2026-04-29  Julian Brown  <[email protected]>
+
+       * parser.cc (cp_parser_omp_target_data): Instantiate mappers for 'omp
+       target data'.
+       (cp_parser_omp_target_enter_data): Instantiate mappers for 'omp target
+       enter data'.
+       (cp_parser_omp_target_exit_data): Instantiate mappers for 'omp target
+       exit data'.
+       (cp_parser_omp_target): Add c_omp_region_type argument to
+       c_omp_instantiate_mappers call.
+       * pt.cc (tsubst_omp_clauses): Instantiate mappers for OMP regions other
+       than just C_ORT_OMP_TARGET.
+       (tsubst_expr): Update call to tsubst_omp_clauses for OMP_TARGET_UPDATE,
+       OMP_TARGET_ENTER_DATA, OMP_TARGET_EXIT_DATA stanza.
+       * semantics.cc (cxx_omp_map_array_section): Avoid calling
+       build_array_ref for non-array/non-pointer bases (error reported
+       already).
+
+2026-04-29  Jakub Jelinek  <[email protected]>
+
+       * reflect.cc (compare_reflection): For REFLECT_BASE use lhs == rhs 
rather
+       than cp_tree_equal.
+
 2026-04-28  Marek Polacek  <[email protected]>
 
        PR c++/124756
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index 6fc08d9ccedb..e62e800ec3d7 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,12 @@
+2026-04-29  Andre Vehreschild  <[email protected]>
+
+       PR fortran/125021
+       * coarray.cc (check_add_new_comp_handle_array): Prefix internal
+       symbols by two underscores.
+       (create_get_callback): Same.
+       (create_allocated_callback): Same.
+       (create_send_callback): Same.
+
 2026-04-21  Paul Thomas  <[email protected]>
 
        PR fortran/117077
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 5e7e1f3056b0..c05e82cc90a8 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,134 @@
+2026-04-29  Pengxuan Zheng  <[email protected]>
+
+       PR tree-optimization/113379
+       * gcc.dg/tree-ssa/pr113379.c: New test.
+
+2026-04-29  Andrew Pinski  <[email protected]>
+
+       * g++.dg/tree-ssa/cond-add-vec-1.C: Add a check to make sure COND_ADD
+       is not there either.
+       * g++.dg/tree-ssa/cond-add-vec-2.C: Change the check for VEC_COND_EXPR
+       to allow for COND_ADD.
+
+2026-04-29  Wilco Dijkstra  <[email protected]>
+
+       * gcc.target/aarch64/pr123791.c: Add -Wno-deprecated.
+       * gcc.target/aarch64/pr78733.c: Likewise.
+       * gcc.target/aarch64/pr79041-2.c: Likewise.
+       * gcc.target/aarch64/pr94530.c: Likewise.
+
+2026-04-29  Richard Biener  <[email protected]>
+
+       PR tree-optimization/125080
+       * gcc.dg/torture/pr125080.c: New testcase.
+
+2026-04-29  Patrick Palka  <[email protected]>
+
+       PR c++/125035
+       * g++.dg/modules/merge-22.h: New test.
+       * g++.dg/modules/merge-22_a.H: New test.
+       * g++.dg/modules/merge-22_b.C: New test.
+
+2026-04-29  Patrick Palka  <[email protected]>
+
+       PR c++/124582
+       PR c++/123810
+       * g++.dg/modules/anon-4.h: New test.
+       * g++.dg/modules/anon-4_a.H: New test.
+       * g++.dg/modules/anon-4_b.C: New test.
+
+2026-04-29  Andre Vehreschild  <[email protected]>
+
+       PR fortran/125021
+       * gfortran.dg/coarray/pr125021.f90: New test.
+
+2026-04-29  Xin Liu  <[email protected]>
+           Zhaoling Bao  <[email protected]>
+
+       * gcc.target/i386/builtin_target.c: Add handling for HYGON CPUs by
+       validating the vendor and invoking HYGON-specific CPU detection.
+       * gcc.target/i386/funcspec-56.inc: Test function target attribute on
+       {arch,tune}=c86-4g-m{4,6,7}.
+       * g++.target/i386/mv33.C: New test.
+
+2026-04-29  Julian Brown  <[email protected]>
+
+       * c-c++-common/gomp/declare-mapper-15.c: New test.
+       * c-c++-common/gomp/declare-mapper-16.c: New test.
+       * g++.dg/gomp/declare-mapper-1.C: Adjust expected scan output.
+
+2026-04-29  Pan Li  <[email protected]>
+
+       * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u16.c: Add asm check
+       for vmsgtu.vx.
+       * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto.
+       * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto.
+       * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.c: Ditto.
+       * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u16.c: Ditto.
+       * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto.
+       * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto.
+       * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.c: Ditto.
+       * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u16.c: Ditto.
+       * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto.
+       * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto.
+       * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto.
+       * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test
+       helper macro.
+       * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test
+       data for run test.
+       * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmsgtu-run-1-u16.c: New test.
+       * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmsgtu-run-1-u32.c: New test.
+       * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmsgtu-run-1-u64.c: New test.
+       * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmsgtu-run-1-u8.c: New test.
+
+2026-04-29  Raghesh Aloor  <[email protected]>
+
+       * gcc.dg/vect/bb-slp-sum-of-diffs.c: New test.
+
+2026-04-29  Jakub Jelinek  <[email protected]>
+
+       * g++.dg/reflect/compare12.C: New test.
+
+2026-04-29  Jakub Jelinek  <[email protected]>
+
+       * g++.dg/plugin/uglification_plugin.cc (plugin_check_tree): Walk
+       REQUIRES_EXPR_PARMS of REQUIRES_EXPR.
+       (plugin_walk_decl): Walk TEMPLATE_PARMS_CONSTRAINTS using
+       plugin_check_tree.  Walk DECL_INITIAL of CONCEPT_DECL as well.
+       * g++.dg/plugin/uglification.C: Add tests for non-uglified names
+       in lambda parameters, lambda captures and requires expressions.
+
+2026-04-29  Jakub Jelinek  <[email protected]>
+
+       * g++.dg/plugin/plugin.exp: Set PLUGIN_DEFAULT_REPO.  Add
+       set*module*exports* to plugin_test_list.  Remove *.gcm files
+       at the start and end.
+       * g++.dg/plugin/std_module_exports_plugin.cc: New file.
+       * g++.dg/plugin/std-module-exports-c++20.C: New test.
+       * g++.dg/plugin/std-module-exports-c++23.C: New test.
+       * g++.dg/plugin/std-module-exports-c++26.C: New test.
+
+2026-04-29  Jakub Jelinek  <[email protected]>
+
+       * g++.dg/plugin/plugin.exp (plugin_test_list): Add uglification tests.
+       * g++.dg/plugin/uglification_plugin.cc: New file.
+       * g++.dg/plugin/uglification.C: New test.
+       * g++.dg/plugin/uglification-c++98.C: New test.
+       * g++.dg/plugin/uglification-c++11.C: New test.
+       * g++.dg/plugin/uglification-c++14.C: New test.
+       * g++.dg/plugin/uglification-c++17.C: New test.
+       * g++.dg/plugin/uglification-c++20.C: New test.
+       * g++.dg/plugin/uglification-c++23.C: New test.
+       * g++.dg/plugin/uglification-c++26.C: New test.
+
+2026-04-29  Alexandre Oliva  <[email protected]>
+
+       * gcc.dg/shouldfail-abort.c: New.
+       * gcc.dg/shouldfail-exit-neg.c: New.
+       * gcc.dg/shouldfail-exit-pos.c: New.
+       * gcc.dg/shouldfail-return-neg.c: New.
+       * gcc.dg/shouldfail-return-pos.c: New.
+
 2026-04-28  David Malcolm  <[email protected]>
 
        PR analyzer/124217
diff --git a/libsanitizer/ChangeLog b/libsanitizer/ChangeLog
index a58e7de581be..0fdc7f57e007 100644
--- a/libsanitizer/ChangeLog
+++ b/libsanitizer/ChangeLog
@@ -1,3 +1,8 @@
+2026-04-29  Jakub Jelinek  <[email protected]>
+
+       * sanitizer_common/sanitizer_platform_limits_posix.cpp: Cherry picked
+       from LLVM commit 3dc4fd6dd41100f051a63642f449b16324389c96.
+
 2026-04-28  Maximilian Ciric  <[email protected]>
 
        * configure.tgt: Enable HWASAN support for RISC-V target.
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 0a9136386ba9..83250ce01b88 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,30 @@
+2026-04-29  Tomasz KamiƄski  <[email protected]>
+
+       * testsuite/29_atomics/headers/stdatomic.h/macros.cc:
+       Copy of ../atomic/macros.cc with header include changed.
+
+2026-04-29  Alexandre Oliva  <[email protected]>
+
+       PR libstdc++/124657
+       * include/experimental/bits/simd_x86.h
+       (__is_x86_ps<_Tp>): New.  Replace is_same_v<_Tp, float> with it.
+       (__is_x86_pd<_Tp>): New.  Replace is_same_v<_Tp, double> with it.
+
+2026-04-29  Alexandre Oliva  <[email protected]>
+
+       PR libstdc++/124657
+       * include/experimental/bits/simd.h (__intrinsic_type::type):
+       Map long double to double.
+
+2026-04-29  Alexandre Oliva  <[email protected]>
+
+       * include/std/limits (__glibcxx_integral_traps): Set to
+       false.  Update comments.
+       (numeric_limits<bool>::traps): Drop comments.
+       * config/cpu/arm/cpu_defines.h: Remove.
+       * config/cpu/powerpc/cpu_defines.h: Likewise.
+       * configure.host (cpu_defines_dir): Adjust.
+
 2026-04-28  Jonathan Wakely  <[email protected]>
 
        * doc/xml/manual/status_cxx2023.xml: Update status table.

Reply via email to