[gcc r17-216] Daily bump.
GCC Administrator
gccadmin@gcc.gnu.org
Thu Apr 30 00:16:59 GMT 2026
https://gcc.gnu.org/g:4695252ee8493236c6267892b52b204c22106d37
commit r17-216-g4695252ee8493236c6267892b52b204c22106d37
Author: GCC Administrator <gccadmin@gcc.gnu.org>
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 <pengxuan.zheng@oss.qualcomm.com>
+
+ PR tree-optimization/113379
+ * match.pd (min(a,b) {<=,>,<,>=} max(a,b)): New patterns.
+
+2026-04-29 John David Anglin <danglin@gcc.gnu.org>
+
+ * doc/install.texi (hppa64-hp-hpux11*): Remove incorrect
+ statement.
+
+2026-04-29 Wilco Dijkstra <wilco.dijkstra@arm.com>
+
+ * 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 <wilco.dijkstra@arm.com>
+
+ * 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 <vmakarov@redhat.com>
+
+ * lra-remat.cc (do_remat): Use the right nregs for pseudo hard reg
+ when updating live hard regs.
+
+2026-04-29 Vladimir N. Makarov <vmakarov@redhat.com>
+
+ * lra-remat.cc (reg_overlap_for_remat_p): Use the right mode for
+ regno2.
+
+2026-04-29 Vladimir N. Makarov <vmakarov@redhat.com>
+
+ * ira-conflicts.cc (build_object_conflicts): Use the right
+ conflicting allocno.
+
+2026-04-29 Richard Biener <rguenther@suse.de>
+
+ 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 <liulxx@hygon.cn>
+ Zhaoling Bao <baozhaoling@hygon.cn>
+
+ * 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 <pan2.li@intel.com>
+
+ * 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 <jakub@redhat.com>
+
+ 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 <Raghesh.Aloor@amd.com>
+
+ * 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 <dmalcolm@redhat.com>
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 <julian@codesourcery.com>
+
+ * 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 <jakub@redhat.com>
* 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 <julian@codesourcery.com>
+
+ * 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 <jakub@redhat.com>
* 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 <ppalka@redhat.com>
+
+ 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 <ppalka@redhat.com>
+
+ 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 <julian@codesourcery.com>
+
+ * 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 <jakub@redhat.com>
+
+ * reflect.cc (compare_reflection): For REFLECT_BASE use lhs == rhs rather
+ than cp_tree_equal.
+
2026-04-28 Marek Polacek <polacek@redhat.com>
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 <vehre@gcc.gnu.org>
+
+ 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 <pault@gcc.gnu.org>
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 <pengxuan.zheng@oss.qualcomm.com>
+
+ PR tree-optimization/113379
+ * gcc.dg/tree-ssa/pr113379.c: New test.
+
+2026-04-29 Andrew Pinski <andrew.pinski@oss.qualcomm.com>
+
+ * 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 <wilco.dijkstra@arm.com>
+
+ * 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 <rguenther@suse.de>
+
+ PR tree-optimization/125080
+ * gcc.dg/torture/pr125080.c: New testcase.
+
+2026-04-29 Patrick Palka <ppalka@redhat.com>
+
+ 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 <ppalka@redhat.com>
+
+ 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 <vehre@gcc.gnu.org>
+
+ PR fortran/125021
+ * gfortran.dg/coarray/pr125021.f90: New test.
+
+2026-04-29 Xin Liu <liulxx@hygon.cn>
+ Zhaoling Bao <baozhaoling@hygon.cn>
+
+ * 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 <julian@codesourcery.com>
+
+ * 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 <pan2.li@intel.com>
+
+ * 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 <Raghesh.Aloor@amd.com>
+
+ * gcc.dg/vect/bb-slp-sum-of-diffs.c: New test.
+
+2026-04-29 Jakub Jelinek <jakub@redhat.com>
+
+ * g++.dg/reflect/compare12.C: New test.
+
+2026-04-29 Jakub Jelinek <jakub@redhat.com>
+
+ * 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 <jakub@redhat.com>
+
+ * 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 <jakub@redhat.com>
+
+ * 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 <oliva@adacore.com>
+
+ * 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 <dmalcolm@redhat.com>
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 <jakub@redhat.com>
+
+ * sanitizer_common/sanitizer_platform_limits_posix.cpp: Cherry picked
+ from LLVM commit 3dc4fd6dd41100f051a63642f449b16324389c96.
+
2026-04-28 Maximilian Ciric <max.ciric@gmail.com>
* 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 <tkaminsk@redhat.com>
+
+ * testsuite/29_atomics/headers/stdatomic.h/macros.cc:
+ Copy of ../atomic/macros.cc with header include changed.
+
+2026-04-29 Alexandre Oliva <oliva@adacore.com>
+
+ 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 <oliva@adacore.com>
+
+ PR libstdc++/124657
+ * include/experimental/bits/simd.h (__intrinsic_type::type):
+ Map long double to double.
+
+2026-04-29 Alexandre Oliva <oliva@adacore.com>
+
+ * 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 <jwakely@redhat.com>
* doc/xml/manual/status_cxx2023.xml: Update status table.
More information about the Libstdc++-cvs
mailing list