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

commit r17-3245-gee9c991d1567aa6677b21abab7d01e9fdf86b5a9
Author: GCC Administrator <[email protected]>
Date:   Thu Aug 13 00:16:40 2026 +0000

    Daily bump.

Diff:
---
 gcc/ChangeLog           | 438 ++++++++++++++++++++++++++++++++++++++++++++++++
 gcc/DATESTAMP           |   2 +-
 gcc/c-family/ChangeLog  |   9 +
 gcc/cobol/ChangeLog     |   8 +
 gcc/cp/ChangeLog        |  13 ++
 gcc/m2/ChangeLog        | 101 +++++++++++
 gcc/testsuite/ChangeLog | 206 +++++++++++++++++++++++
 libgcc/ChangeLog        |   9 +
 libgcobol/ChangeLog     |  21 +++
 libgm2/ChangeLog        |  32 ++++
 10 files changed, 838 insertions(+), 1 deletion(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 0d182cec2937..393204965b5d 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,441 @@
+2026-08-12  Iain Sandoe  <[email protected]>
+
+       PR target/126723
+       * config/darwin.cc (darwin_encode_section_info): Make all
+       string constant labels linker-visible.  Likewise const
+       section anchors.
+
+2026-08-12  Aldy Hernandez  <[email protected]>
+
+       * range-op-float.cc (range_operator::fold_range): Fold each pair
+       of sub-ranges, or the diagonal when the operands are equal.
+       (range_op_float_tests): New test.
+
+2026-08-12  Uros Bizjak  <[email protected]>
+
+       * config/i386/i386.md (*bt<mode>): Change operand 1 constraint
+       from "q<S>,<S>" to "r<S>,<S>".
+       (*bt<SWI48:mode>_mask): Remove constraints from operand 0.
+
+2026-08-12  Georg-Johann Lay  <[email protected]>
+
+       * config/avr/avr-fixed.md (*round<mode>3.libgcc_split)
+       (*round<mode>3.libgcc): Use the ALL12QA mode iterator instead
+       of ALL1Q and ALL2QA separately.
+
+2026-08-12  Georg-Johann Lay  <[email protected]>
+
+       * config/avr/avr-fixed.md (ALL12QA): New mode iterator.
+       (sat_ashl): New code iterator.
+       (usashluqq3, ssashlqq3, usashluhq3, ssashlhq3, usashluha3)
+       (ssashlha3, usashlusq3, ssashlsq3, usashlusa3, ssashlsa3)
+       (*usashluqq3, *ssashlqq3, *usashluhq3, *ssashlhq3)
+       (*usashluha3, *ssashlha3, *usashlusq3, *ssashlsq3, *usashlusa3)
+       (*ssashlsa3): New insns.
+       * config/avr/avr.md (code_stdname): Also map ss_ashift, us_ashift.
+
+2026-08-12  Gerald Pfeifer  <[email protected]>
+
+       * doc/extend.texi (RISC-V Vector Intrinsics): Update link to
+       specification.
+
+2026-08-12  Andrea Pinski  <[email protected]>
+
+       PR tree-optimization/126418
+       * match.pd (`(A ^ -cmp) + cmp`): Cast to unsigned type
+       before taking the negative.
+
+2026-08-12  Matt Turner  <[email protected]>
+
+       * configure.ac (gcc_cv_irelative_reloc): New variable, set for
+       riscv*-*-linux* and alpha*-*-linux*.  Perform the linker
+       IRELATIVE check once, driven by it.
+       * configure: Regenerate.
+
+2026-08-12  Kyrylo Tkachov  <[email protected]>
+
+       * config/aarch64/aarch64-simd.md (reduc_widen_<su>sum<mode><vsi2qi>3):
+       Expand through aarch64_expand_reduc_widen_sum.
+       * config/aarch64/aarch64.cc (aarch64_expand_reduc_widen_sum): Use
+       [SU]DOT for a step from byte to word elements.
+
+2026-08-12  Kyrylo Tkachov  <[email protected]>
+
+       * config/aarch64/aarch64-protos.h (aarch64_expand_reduc_widen_sum):
+       Declare.
+       * config/aarch64/aarch64.cc (aarch64_expand_reduc_widen_sum): New
+       function.
+       * config/aarch64/aarch64-simd.md (aarch64_<su>adalp<mode>): Rename
+       to ...
+       (@aarch64_<su>adalp<mode>): ... this.
+       (reduc_widen_ssum<Vdblw><mode>3, reduc_widen_usum<Vdblw><mode>3):
+       Replace by ...
+       (reduc_widen_<su>sum<Vdblw><mode>3): ... this.  Expand to [SU]ADALP.
+       (reduc_widen_ssum<mode><vsi2qi>3, reduc_widen_usum<mode><vsi2qi>3):
+       Replace by ...
+       (reduc_widen_<su>sum<mode><vsi2qi>3): ... this.  Handle
+       !TARGET_DOTPROD.
+       (reduc_widen_<su>sumv2di<mode>3): New expander.
+       * config/aarch64/iterators.md (VQ_BH): New mode iterator.
+
+2026-08-12  H.J. Lu  <[email protected]>
+
+       PR target/94649
+       PR target/126293
+       * common/config/i386/i386-cpuinfo.h (ix86_decode_cpu_info): New
+       function.
+       * config/i386/i386-options.cc
+       (ix86_option_override_internal): Issue an error for -m128bit-atomic
+       in 32-bit mode.  Turn on -mcx16 if -m128bit-atomic is enabled.
+       Enable -m128bit-atomic in 64-bit mode by default if supported by
+       the targeting processor.
+       * config/i386/i386.h (TARGET_128BIT_ATOMIC_ENABLED): New.
+       * config/i386/i386.opt (m128bit-atomic): New option.
+       * config/i386/i386.opt.urls: Regenerated.
+       * config/i386/sync.md: Update comments for 128-bit aligned vector
+       loads and stores.
+       (atomic_loadti): New pattern.
+       (atomic_loadti_sse): Likewise.
+       (atomic_storeti): Likewise.
+       (atomic_storeti_sse): Likewise.
+       * doc/invoke.texi: Remove __atomic Builtins reference from -mcx16.
+       Document -m128bit-atomic.
+
+2026-08-12  Tamar Christina  <[email protected]>
+
+       PR tree-optimization/126589
+       * tree-vect-slp-patterns.cc (vect_validate_multiplication): Cleanup
+       comment.
+       (vect_validate_multiplication_commutative): Remove last 4 orders.
+
+2026-08-12  Tamar Christina  <[email protected]>
+
+       PR tree-optimization/126589
+       * tree-vect-slp-patterns.cc (complex_fms_pattern::matches): Check
+       another form of FMS.
+
+2026-08-12  Gaius Mulley  <[email protected]>
+
+       PR modula2/125129
+       * doc/gm2.texi (-fdump-builtins): New switch.
+
+2026-08-12  Abhishek Kaushik  <[email protected]>
+
+       * config/aarch64/aarch64-acle-builtins.h
+       (TYPES_qshr_x2): New macro.
+       (TYPES_qrshr_x2_8): Likewise.
+       (TYPES_qshru_x2): Likewise.
+       (TYPES_qrshrun_x2): Likewise.
+       (DEF_SVE_TYPES_ARRAY): Add qshr_x2, qrshr_x2_8, qrshrun_x2
+       and qshru_x2.
+       * config/aarch64/aarch64-sve-builtins-sve2.cc (svqshrn): New
+       function.
+       (svqshrun): Likewise.
+       * config/aarch64/aarch64-sve-builtins-sve2.def (svqrshrn): Add
+       SVE2p3/SME2p3 x2 form.
+       (svqrshrun): Likewise.
+       (svqshrn): Add SVE2p3/SME2p3 x2 form.
+       (svqshrun): Likewise.
+       * config/aarch64/aarch64-sve-builtins-sve2.h (svqshrn): Declare.
+       (svqshrun): Likewise.
+       * config/aarch64/aarch64-sve2.md
+       (@aarch64_sve_<sve_int_op><mode>): New define_insn.
+       * config/aarch64/iterators.md (SVE_FULL_HIx2): New mode iterator.
+       (UNSPEC_SQSHRN, UNSPEC_SQSHRUN, UNSPEC_UQSHRN): New unspecs.
+       (VNARROW): Add VNx16HI mapping.
+       (Ventype): Likewise.
+       (SVE2_INT_SHIFT_IMM_NARROWxN): Add UNSPEC_SQSHRN,
+       UNSPEC_SQSHRUN and UNSPEC_UQSHRN.
+       (sve_int_op): Add sqshrn, sqshrun and uqshrn.
+
+2026-08-12  Kyrylo Tkachov  <[email protected]>
+
+       * match.pd (((X - 1) | C) + 1): New simplification.
+
+2026-08-12  Kyrylo Tkachov  <[email protected]>
+
+       * doc/md.texi (reduc_widen_ssum@var{n}@var{m}3)
+       (reduc_widen_usum@var{n}@var{m}3): Document that the assignment of
+       input elements to accumulator elements is unconstrained, that
+       intermediate sums must not overflow, and that the widen_[us]sum
+       names are reserved.  Fix a typo.
+       * tree.def (WIDEN_SUM_EXPR): Document that the assignment of elements
+       of the first argument to elements of the second is unconstrained.
+       (DOT_PROD_EXPR, SAD_EXPR): Note the same freedom.
+
+2026-08-12  Kyrylo Tkachov  <[email protected]>
+
+       * optabs.def (ssum_widen_optab): Rename to ...
+       (reduc_widen_ssum_optab): ... this.  Rename the pattern from
+       widen_ssum$a$b3 to reduc_widen_ssum$a$b3.
+       (usum_widen_optab): Rename to ...
+       (reduc_widen_usum_optab): ... this.  Rename the pattern from
+       widen_usum$a$b3 to reduc_widen_usum$a$b3.
+       * optabs-tree.cc (optab_for_tree_code): Update for the renamed
+       optabs.
+       * doc/md.texi (widen_ssum@var{n}@var{m}3): Rename to ...
+       (reduc_widen_ssum@var{n}@var{m}3): ... this.
+       (widen_usum@var{n}@var{m}3): Rename to ...
+       (reduc_widen_usum@var{n}@var{m}3): ... this.
+       * config/aarch64/aarch64-simd.md (widen_ssum<Vdblw><mode>3): Rename
+       to ...
+       (reduc_widen_ssum<Vdblw><mode>3): ... this.
+       (widen_ssum<Vwide><mode>3): Rename to ...
+       (reduc_widen_ssum<Vwide><mode>3): ... this.
+       (widen_usum<Vdblw><mode>3): Rename to ...
+       (reduc_widen_usum<Vdblw><mode>3): ... this.
+       (widen_usum<Vwide><mode>3): Rename to ...
+       (reduc_widen_usum<Vwide><mode>3): ... this.
+       (widen_ssum<mode><vsi2qi>3): Rename to ...
+       (reduc_widen_ssum<mode><vsi2qi>3): ... this.
+       (widen_usum<mode><vsi2qi>3): Rename to ...
+       (reduc_widen_usum<mode><vsi2qi>3): ... this.
+       * config/aarch64/aarch64-sve.md (widen_<sur>sum<mode><vsi2qi>3):
+       Rename to ...
+       (reduc_widen_<sur>sum<mode><vsi2qi>3): ... this.
+       * config/aarch64/aarch64-sve2.md (widen_ssum<mode><Vnarrow>3): Rename
+       to ...
+       (reduc_widen_ssum<mode><Vnarrow>3): ... this.
+       (widen_usum<mode><Vnarrow>3): Rename to ...
+       (reduc_widen_usum<mode><Vnarrow>3): ... this.
+       * config/arm/neon.md (widen_ssum<v_double_width><mode>3): Rename
+       to ...
+       (reduc_widen_ssum<v_double_width><mode>3): ... this.
+       (widen_ssum<V_widen_l><mode>3): Rename to ...
+       (reduc_widen_ssum<V_widen_l><mode>3): ... this.
+       (widen_usum<v_double_width><mode>3): Rename to ...
+       (reduc_widen_usum<v_double_width><mode>3): ... this.
+       (widen_usum<V_widen_l><mode>3): Rename to ...
+       (reduc_widen_usum<V_widen_l><mode>3): ... this.
+       * config/ia64/vect.md (widen_usumv4hiv8qi3): Rename to ...
+       (reduc_widen_usumv4hiv8qi3): ... this.
+       (widen_usumv2siv4hi3): Rename to ...
+       (reduc_widen_usumv2siv4hi3): ... this.
+       (widen_ssumv4hiv8qi3): Rename to ...
+       (reduc_widen_ssumv4hiv8qi3): ... this.
+       (widen_ssumv2siv4hi3): Rename to ...
+       (reduc_widen_ssumv2siv4hi3): ... this.
+       * config/rs6000/altivec.md (widen_usumv4si<mode>3): Rename to ...
+       (reduc_widen_usumv4si<mode>3): ... this.
+       (widen_ssumv4siv16qi3): Rename to ...
+       (reduc_widen_ssumv4siv16qi3): ... this.
+       (widen_ssumv4siv8hi3): Rename to ...
+       (reduc_widen_ssumv4siv8hi3): ... this.
+
+2026-08-12  Richard Biener  <[email protected]>
+
+       PR tree-optimization/126099
+       PR tree-optimization/126053
+       * tree-vect-slp.cc (vect_cse_gather_part_starts): New function.
+       (vect_cse_slp_node_parts): Likewise.
+       (vect_optimize_slp): For BB SLP CSE to low/highparts of
+       other nodes.
+
+2026-08-12  Richard Biener  <[email protected]>
+
+       * tree-vectorizer.h (vect_schedule_slp): Adjust prototype.
+       * tree-vect-slp.cc (vect_slp_analyze_bb_1): When scheduling
+       fails, fail vectorization.
+       (vect_schedule_slp_node): Return whether we can schedule
+       the node.
+       (vect_schedule_scc): Likewise.
+       (vect_schedule_slp): When asked, elide SLP graph entries
+       that cannot be scheduled.
+
+2026-08-12  Richard Biener  <[email protected]>
+
+       PR tree-optimization/126028
+       * tree-vectorizer.h (_slp_tree::si): New member.
+       (vect_schedule_slp): Adjust prototype.
+       * tree-vect-loop.cc (vect_transform_loop): Adjust.
+       * tree-vect-slp.cc (_slp_tree::_slp_tree): Initialize si.
+       (vect_bb_slp_mark_live_stmts): Use vector stmt placement
+       constraint computed by pre-scheduling of SLP nodes.
+       (vect_slp_analyze_bb_1): Pre-schedule SLP nodes before
+       computing live lane extraction points.
+       (vect_slp_region): Adjust.
+       (vect_schedule_slp_node): Add parameter indicating to whether
+       we should perform pre-scehduling or not.  Compute the
+       insertion place suitable for dominance checks when
+       pre-scheduling.
+       (vect_schedule_scc): Adjust.
+       (vect_schedule_slp): Likewise.
+
+2026-08-12  Richard Biener  <[email protected]>
+
+       * tree-vect-stmts.cc (vect_is_simple_cond): Simplify and
+       inline ...
+       (vectorizable_condition): ... here.  Simplify.
+
+2026-08-12  Kyrylo Tkachov  <[email protected]>
+
+       * config/aarch64/predicates.md (aarch64_general_reg): Test the
+       register number rather than REGNO_REG_CLASS, which reports the
+       W8_W11_REGS and W12_W15_REGS subclasses for x8-x15.
+
+2026-08-12  Kyrylo Tkachov  <[email protected]>
+
+       * config/aarch64/aarch64-c.cc (aarch64_update_cpp_builtins): Define
+       __ARM_FEATURE_CSSC for TARGET_CSSC.
+
+2026-08-12  Richard Biener  <[email protected]>
+
+       PR tree-optimization/126789
+       * config/i386/mmx.md (mmxxmmmode): Add V2SF and V2SI.
+       (mmxxmmmodelower): Likewise.
+       (vcond_mask_<mode>qi): New expander for V2SF and V2SI.
+       * tree-vect-stmts.cc (vectorizable_conversion): Handle
+       conversion via VEC_COND_EXPR.
+       (supportable_indirect_convert_operation): For mask vector
+       conversions to vector integer mode try using a VEC_COND_EXPR.
+
+2026-08-12  Jørgen Kvalsvik  <[email protected]>
+
+       * cfg-flags.def (COVERAGE_SUPPRESSED): New flag.
+       * doc/extend.texi: Add sections on suppress_coverage.
+       * doc/gcov.texi: Add sections on suppress_coverage.
+       * gcov-dump.cc (tag_suppress): New function.
+       * gcov-io.h (GCOV_TAG_SUPPRESS): New.
+       (GCOV_TAG_SUPPRESS_LENGTH): New.
+       (GCOV_TAG_SUPPRESS_NUM): New.
+       * gcov.cc (struct arc_info): Add field suppressed.
+       (block_info::block_info): Initialize suppressed.
+       (line_info::line_info): Initialize suppressed.
+       (struct coverage_info): Add fields lines_suppressed,
+       (struct path_info): Add fields residual_paths,
+       residual_covered.
+       (executed_summary): Add suppressed argument.
+       (tombstone_p): New function.
+       (remove_tombstones): New function.
+       (tombstone_subsequence_p): New function.
+       (subsumed_by_any_p): New function.
+       (path_info::suppress_blocks): New function.
+       (path_info::get_paths): New function.
+       (path_info::count): New function.
+       (path_info::suppressed_count): New function.
+       (path_info::suppressed_p): New function.
+       (find_arc): Return NULL if arc cannot be found.
+       (main): Pass total_suppressed to executed_summary.
+       (output_intermediate_json_line): Skip suppressed.
+       (json_set_prime_path_coverage): Include suppressed counts.
+       (output_json_intermediate_file): Likewise.
+       (process_all_functions): Record block, arc suppressed status.
+       (generate_results): Count total suppressed.
+       (read_graph_file): Read SUPPRESS tag.
+       (add_branch_counts): Count suppressed.
+       (add_condition_counts): Likewise.
+       (add_path_counts): Likewise.
+       (function_summary): Print info on suppressed blocks.
+       (file_summary): Count suppressed.
+       (add_line_counts): Likewise.
+       (accumulate_line_info): Likewise.
+       (accumulate_line_counts): Likewise.
+       (output_conditions): Skip suppressed.
+       (output_branch_count): Likewise.
+       (print_prime_path_lines): Annotate suppressed arcs.
+       (print_prime_path_source): Likewise, and widen the annotation
+       column.
+       (output_path_coverage): Print info on suppressed paths.
+       (output_line_beginning): Prefix suppressed lines with '#'.
+       (output_line_details): Pass suppressed.
+       (output_lines): Likewise.
+       * profile.cc (suppress_coverage): New function.
+       (suppress_coverage_unset): New function.
+       (coverage_suppressed_p): New function.
+       (any_block_coverage_suppressed_p): New function.
+       (suppress_coverage_begin): New function.
+       (suppress_coverage_end): New function.
+       (in_pragma_suppress_coverage_p): New function.
+       (location_in_pragma_suppress_coverage_p): New function.
+       (fn_in_pragma_suppress_coverage_p): New function.
+       (branch_prob): Write SUPPRESS record, skip MC/DC and path
+       coverage when the entire function is suppressed.
+       * profile.h (in_pragma_suppress_coverage_p): New forward
+       declaration.
+       (location_in_pragma_suppress_coverage_p): Ditto.
+       (coverage_suppressd_p): Ditto.
+       (suppress_coverage): Ditto.
+       (suppress_coverage_unset): Ditto.
+       * tree-cfg.cc (gimple_empty_block_p): New forward declaration.
+       (make_blocks_1): Set coverage-suppresesed on blocks.
+       (make_blocks): Sometimes insert NOP to help coverage
+       suppression on blocks.
+       (gimple_can_merge_blocks_p): Don't merge coverage-suppressed
+       block with non-suppressed blocks.
+       (gimple_merge_blocks): Likewise.
+       (gimple_split_edge): Propagate coverage-suppressed on block
+       splits.
+       (gimple_split_block): Likewise.
+       (gimple_duplicate_bb): Likewise.
+       (insert_cond_bb): Likewise.
+
+2026-08-12  Aldy Hernandez  <[email protected]>
+
+       PR tree-optimization/126103
+       * tree-ssa-threadbackward.cc (class back_threader): Add
+       find_taken_edge_goto.
+       (back_threader::find_taken_edge): Handle GIMPLE_GOTO.
+       (back_threader::find_taken_edge_goto): New.
+       (back_threader::maybe_thread_block): Handle GIMPLE_GOTO.
+
+2026-08-12  Tamar Christina  <[email protected]>
+
+       PR tree-optimization/126778
+       * tree-vect-loop-manip.cc (get_live_virtual_operand_on_edge): Move it.
+       (vect_set_loop_condition_partial_vectors): Use it to update edge.
+
+2026-08-12  Hongyu Wang  <[email protected]>
+
+       PR target/126787
+       * config/i386/sse.md (*fma_fmadd_<mode>): Use the "jm" to replace
+       "m" constraint and set addr attribute to "gpr16" for vex only
+       alternatives.
+       (*fma_fmsub_<mode>): Likewise.
+       (*fma_fnmadd_<mode>): Likewise.
+       (*fma_fnmsub_<mode>): Likewise.
+       (*fma_fmaddsub_<mode>): Likewise.
+       (*fma_fmsubadd_<mode>): Likewise.
+       (xop_p<macs><ssemodesuffix><ssemodesuffix>): Likewise.
+       (xop_p<macs>dql): Likewise.
+       (xop_p<macs>dqh): Likewise.
+       (xop_p<macs>wd): Likewise.
+       (xop_p<madcs>wd): Likewise.
+       (xop_pcmov_<mode><avxsizesuffix>): Likewise.
+       (xop_phadd<u>bw): Likewise.
+       (xop_phadd<u>bd): Likewise.
+       (xop_phadd<u>bq): Likewise.
+       (xop_phadd<u>wd): Likewise.
+       (xop_phadd<u>wq): Likewise.
+       (xop_phadd<u>dq): Likewise.
+       (xop_phsubbw): Likewise.
+       (xop_phsubwd): Likewise.
+       (xop_phsubdq): Likewise.
+       (xop_pperm): Likewise.
+       (xop_pperm_pack_v2di_v4si): Likewise.
+       (xop_pperm_pack_v4si_v8hi): Likewise.
+       (xop_pperm_pack_v8hi_v16qi): Likewise.
+       (xop_rotl<mode>3): Likewise.
+       (xop_rotr<mode>3): Likewise.
+       (xop_vrotl<mode>3): Likewise.
+       (xop_sha<mode>3): Likewise.
+       (xop_shl<mode>3): Likewise.
+       (xop_frcz<mode>2): Likewise.
+       (*xop_vmfrcz<mode>2): Likewise.
+       (xop_maskcmp<mode>3): Likewise.
+       (xop_maskcmp_uns<mode>3): Likewise.
+       (xop_maskcmp_uns2<mode>3): Likewise.
+       (xop_pcom_tf<mode>3): Likewise.
+       (xop_vpermil2<mode>3): Likewise.
+
+2026-08-12  Jin Ma  <[email protected]>
+
+       * config/riscv/riscv-protos.h (enum riscv_fusion_pairs): Use
+       HOST_WIDE_INT_1U for bit masks.
+       (riscv_get_fusible_ops): Return unsigned HOST_WIDE_INT.
+       * config/riscv/riscv.cc (struct riscv_tune_param): Change
+       fusible_ops to unsigned HOST_WIDE_INT.
+       (riscv_get_fusible_ops): Likewise.
+
 2026-08-11  Andrew MacLeod  <[email protected]>
 
        * value-relation.cc (dom_oracle::create_relation_in_bb): Adjust
diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP
index a2a375f66903..b945d86017fe 100644
--- a/gcc/DATESTAMP
+++ b/gcc/DATESTAMP
@@ -1 +1 @@
-20260812
+20260813
diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog
index a27eccc38094..ae6c2a0c7af0 100644
--- a/gcc/c-family/ChangeLog
+++ b/gcc/c-family/ChangeLog
@@ -1,3 +1,12 @@
+2026-08-12  Jørgen Kvalsvik  <[email protected]>
+
+       * c-attribs.cc (handle_suppress_coverage_attribute): New
+       function.
+       * c-pragma.cc (handle_pragma_suppress_coverage): New function.
+       (init_pragma): Register pragma GCC suppress_coverage.
+       * c-pragma.h (suppress_coverage_begin): New forward declaration.
+       (suppress_coverage_end): Ditto.
+
 2026-08-10  Josef Melcr  <[email protected]>
 
        PR testsuite/126708
diff --git a/gcc/cobol/ChangeLog b/gcc/cobol/ChangeLog
index ad48640e7519..06127d4967bd 100644
--- a/gcc/cobol/ChangeLog
+++ b/gcc/cobol/ChangeLog
@@ -1,3 +1,11 @@
+2026-08-12  Robert Dubner  <[email protected]>
+
+       * genapi.cc (get_level_88_domain): Expanded comment.
+       (create_and_call): Handle CALL USING BY VALUE ZERO.
+       * structs.cc: Updated comment.
+       * util.cc: Prevent segfault when the procedures_t(size_t)
+       constructor is invoked with exactly 512 symbols.
+
 2026-08-10  Robert Dubner  <[email protected]>
 
        * gcobol.1: Documentation
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 34d383d6ce1c..b74f6b56b99c 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,16 @@
+2026-08-12  Patrick Palka  <[email protected]>
+           Bernhard M. Wiedemann  <[email protected]>
+
+       PR c++/124811
+       * decl.cc (typename_hasher::hash): Instead of pointer hashing,
+       hash TYPE_HASH of context and use iterative_hash_template_arg
+       to hash fullname.
+
+2026-08-12  Jakub Jelinek  <[email protected]>
+
+       * reflect.cc (init_reflection): Also initialize TYPE_UNSIGNED,
+       TYPE_PRECISION, TYPE_MODE and TYPE_ALIGN of meta_info_type_node.
+
 2026-08-06  Jakub Jelinek  <[email protected]>
 
        PR c++/125541
diff --git a/gcc/m2/ChangeLog b/gcc/m2/ChangeLog
index ca80db76fa5b..f3cd33a6c6be 100644
--- a/gcc/m2/ChangeLog
+++ b/gcc/m2/ChangeLog
@@ -1,3 +1,104 @@
+2026-08-12  Gaius Mulley  <[email protected]>
+
+       PR modula2/125129
+       * Make-lang.in (escape_path): New define.
+       (GM2_FOR_TARGET_ESC): New define.
+       (RSTSRC): Remove.
+       (gm2-libs.texi-check): Rewrite without $(objdir).
+       (m2/gm2-libs.rst): Remove.
+       (gm2-ebnf.rst): Ditto.
+       (gm2-ebnf.rst-check): Ditto.
+       (SYSTEM-pim-texi-check): Ditto.
+       (m2/SYSTEM-pim.rst): Ditto.
+       (m2/SYSTEM-iso.texi): Rewrite without $(objdir).
+       (Builtins.texi-check): Rewrite specifying $(srcdir).
+       (m2/Builtins.rst): Remove.
+       (MC_ARGS): Add -I$(srcdir)/m2/gm2-libs-pim-common
+       and -I$(srcdir)/m2/mc-boot-ch.
+       (m2/mc-boot/$(SRC_PREFIX)%.o): Add -I$(srcdir)/m2/mc-boot-ch.
+       (m2/mc-boot-ch/$(SRC_PREFIX)%.o): Ditto.
+       (MC_BOOT_INCLUDES): New define.
+       (m2/gm2-libs-boot/UnixArgs.o): Add MC_BOOT_INCLUDES.
+       (m2/gm2-libs-boot/choosetemp.o): Ditto.
+       (m2/gm2-libs-boot/errno.o): Ditto.
+       (m2/gm2-libs-boot/dtoa.o): Ditto.
+       (m2/gm2-libs-boot/ldtoa.o): Ditto.
+       (m2/gm2-libs-boot/termios.o): Ditto.
+       (m2/gm2-libs-boot/SysExceptions.o): Ditto.
+       (m2/gm2-libs-boot/SysStorage.o): Ditto.
+       (m2/gm2-libs/Builtins.def): Rewrite.
+       (m2/gm2-libs/Builtins.mod): Ditto.
+       (m2/gm2-libs/SYSTEM.def): Ditto.
+       (m2/gm2-libs-iso/SYSTEM.def): Ditto.
+       (m2/gm2-libs-coroutines/SYSTEM.def): Ditto.
+       (m2/gm2-libs/%.o): Ditto.
+       * gm2-compiler/M2Options.def (SetDumpBuiltins): New procedure.
+       (GetDumpBuiltins): New procedure function.
+       * gm2-compiler/M2Options.mod (DumpBuiltinsFlag): New variable.
+       (SetDumpBuiltins): Implement new procedure.
+       (GetDumpBuiltins): Implement new procedure function.
+       * gm2-compiler/M2Quads.mod (BuildComponentValue): Removed unused
+       variable virtpos.
+       * gm2-gcc/m2builtins.cc (GM2_BUG_REPORT): Reformat.
+       (ASSERT): Ditto.
+       (ERROR): Ditto.
+       (dump_available): New funmction.
+       (define_builtin): Call dump_available if GetDumpBuiltins is set.
+       (dump_builtin): New function.
+       (m2builtins_init): Call dump_builtin.
+       * gm2-gcc/m2options.h (M2Options_SetDumpBuiltins): New prototype.
+       (M2Options_GetDumpBuiltins): Ditto.
+       * gm2-lang.cc (gm2_langhook_handle_option): Add OPT_fdump_builtins
+       case.
+       * gm2-libs-coroutines/SYSTEM.def: Move to...
+       * gm2-libs-cor-common/SYSTEM.def: ...here.
+       * gm2-libs-coroutines/SYSTEM.mod: Move to...
+       * gm2-libs-cor-common/SYSTEM.mod: ...here.
+       * gm2-libs-iso/ComplexMath.def: Move to...
+       * gm2-libs-iso-common/ComplexMath.def: ...here.
+       Add tags.
+       * gm2-libs-iso/ComplexMath.mod: Move to...
+       * gm2-libs-iso-common/ComplexMath.mod: ...here.
+       Add tags.
+       * gm2-libs-iso/LongComplexMath.def: Move to...
+       * gm2-libs-iso-common/LongComplexMath.def: ...here.
+       Add tags.
+       * gm2-libs-iso/LongComplexMath.mod: Move to...
+       * gm2-libs-iso-common/LongComplexMath.mod: ...here.
+       Add tags.
+       * gm2-libs-iso/SYSTEM.def: Move to...
+       * gm2-libs-iso-common/SYSTEM.def: ...here.
+       Add tags.
+       * gm2-libs-iso/SYSTEM.mod: Move to...
+       * gm2-libs-iso-common/SYSTEM.mod: ...here.
+       Add tags.
+       * gm2-libs-iso/ShortComplexMath.def: Move to...
+       * gm2-libs-iso-common/ShortComplexMath.def: ...here.
+       Add tags.
+       * gm2-libs-iso/ShortComplexMath.mod: Move to...
+       * gm2-libs-iso-common/ShortComplexMath.mod: ...here.
+       Add tags.
+       * gm2-libs/Builtins.def: Move to...
+       * gm2-libs-pim-common/Builtins.def: ...here.
+       Add tags.
+       * gm2-libs/Builtins.mod: Move to...
+       * gm2-libs-pim-common/Builtins.mod: ...here.
+       Add tags.
+       * gm2-libs/SYSTEM.def: Move to...
+       * gm2-libs-pim-common/SYSTEM.def: ...here.
+       Add tags.
+       * gm2-libs/SYSTEM.mod: Move to...
+       * gm2-libs-pim-common/SYSTEM.mod: ...here.
+       Add tags.
+       * gm2-libs/cbuiltin.def: Move to...
+       * gm2-libs-pim-common/cbuiltin.def: ...here.
+       Add tags.
+       * gm2-libs-min/SYSTEM.def: Add tags.
+       * lang.opt (fdump-builtins): Add.
+       * tools-src/def2doc.py: Modified to process tags.
+       * tools-src/makeSystem: Modified to reflect new tags.
+       * tools-src/mktargetsrc.py: New file.
+
 2026-07-10  Léo Hardt  <[email protected]>
 
        * plugin/m2rte.cc: Removed unused extern bool
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 7887c6fa0bae..c66630d9d0b7 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,209 @@
+2026-08-12  Iain Sandoe  <[email protected]>
+
+       * gcc.target/aarch64/dwarf-cfa-reg.c: Require cfi instructions.
+       * gcc.target/aarch64/stack-check-cfa-1.c: Likewise.
+       * gcc.target/aarch64/stack-check-cfa-2.c: Likewise.
+       * gcc.target/aarch64/stack-check-cfa-3.c: Likewise.
+
+2026-08-12  Iain Sandoe  <[email protected]>
+
+       * gcc.target/aarch64/inline-mem-set-pr112804.c: Require
+       mabi-ilp32 support.
+       * gcc.target/aarch64/pr100518.c: Likewise.
+       * gcc.target/aarch64/pr113114.c: Likewise.
+       * gcc.target/aarch64/pr80295.c: Likewise.
+       * gcc.target/aarch64/pr94201.c: Likewise.
+       * gcc.target/aarch64/pr94577.c: Likewise.
+       * gcc.target/aarch64/sve/pr108603.c: Likewise.
+       * lib/target-supports.exp: Add target supports for mabi=ilp32.
+
+2026-08-12  Aldy Hernandez  <[email protected]>
+
+       * gcc.dg/tree-ssa/vrp-float-subrange-1.c: New test.
+
+2026-08-12  Georg-Johann Lay  <[email protected]>
+
+       * gcc.target/avr/fx.h: New file.
+       * gcc.target/avr/sat-shift-s.c: New test.
+       * gcc.target/avr/sat-shift-u.c: New test.
+
+2026-08-12  Andrea Pinski  <[email protected]>
+
+       PR tree-optimization/126418
+       * gcc.dg/tree-ssa/pr126418-1.c: New test.
+
+2026-08-12  Kyrylo Tkachov  <[email protected]>
+
+       * gcc.target/aarch64/widen_sum_pairwise_2.c: Cover every widening
+       sum shape and check the dot product sequences.
+       * gcc.target/aarch64/widen_sum_pairwise_3.c: New test.
+
+2026-08-12  Kyrylo Tkachov  <[email protected]>
+
+       * gcc.target/aarch64/pr122069_1.c: Update expected output.
+       * gcc.target/aarch64/pr122069_3.c: Likewise.
+       * gcc.target/aarch64/saddw-1.c: Renamed to...
+       * gcc.target/aarch64/sadalp-1.c: ...this.  Update expected output.
+       * gcc.target/aarch64/saddw-2.c: Renamed to...
+       * gcc.target/aarch64/sadalp-2.c: ...this.  Update expected output.
+       * gcc.target/aarch64/uaddw-1.c: Renamed to...
+       * gcc.target/aarch64/uadalp-1.c: ...this.  Update expected output.
+       * gcc.target/aarch64/uaddw-2.c: Renamed to...
+       * gcc.target/aarch64/uadalp-2.c: ...this.  Update expected output.
+       * gcc.target/aarch64/uaddw-3.c: Renamed to...
+       * gcc.target/aarch64/uadalp-3.c: ...this.  Update expected output.
+       * gcc.target/aarch64/widen_sum_pairwise_1.c: New test.
+       * gcc.target/aarch64/widen_sum_pairwise_2.c: New test.
+
+2026-08-12  H.J. Lu  <[email protected]>
+
+       PR target/94649
+       PR target/126293
+       * g++.target/i386/pr94649-1.C: New test.
+       * gcc.target/i386/pr126293-1a.c: Likewise.
+       * gcc.target/i386/pr126293-1b.c: Likewise.
+       * gcc.target/i386/pr126293-1c.c: Likewise.
+       * gcc.target/i386/pr126293-1d.c: Likewise.
+       * gcc.target/i386/pr126293-2a.c: Likewise.
+       * gcc.target/i386/pr126293-2b.c: Likewise.
+       * gcc.target/i386/pr126293-3a.c: Likewise.
+       * gcc.target/i386/pr126293-3b.c: Likewise.
+       * gcc.target/i386/pr126293-4a.c: Likewise.
+       * gcc.target/i386/pr126293-4b.c: Likewise.
+       * gcc.target/i386/pr126293-4c.c: Likewise.
+       * gcc.target/i386/pr126293-4d.c: Likewise.
+       * gcc.target/i386/pr126293-4e.c: Likewise.
+       * gcc.target/i386/pr126293-4f.c: Likewise.
+       * gcc.target/i386/pr126293-4g.c: Likewise.
+       * gcc.target/i386/pr126293-4h.c: Likewise.
+       * gcc.target/i386/pr126293-4i.c: Likewise.
+       * gcc.target/i386/pr126293-4j.c: Likewise.
+       * gcc.target/i386/pr126293-4k.c: Likewise.
+       * gcc.target/i386/pr126293-4l.c: Likewise.
+       * gcc.target/i386/pr126293-4m.c: Likewise.
+       * gcc.target/i386/pr126293-4n.c: Likewise.
+       * gcc.target/i386/pr126293-4o.c: Likewise.
+       * gcc.target/i386/pr126293-4p.c: Likewise.
+       * gcc.target/i386/pr126293-4q.c: Likewise.
+       * gcc.target/i386/pr126293-4r.c: Likewise.
+       * gcc.target/i386/pr126293-4s.c: Likewise.
+       * gcc.target/i386/pr126293-5.c: Likewise.
+       * gcc.target/i386/pr126293-6.c: Likewise.
+       * gcc.target/i386/pr126293-7.c: Likewise.
+       * gcc.target/i386/pr126293-8.c: Likewise.
+       * gcc.target/i386/pr126293-9.c: Likewise.
+       * gcc.target/i386/pr126293-10.c: Likewise.
+       * gcc.target/i386/pr126293-11.c: Likewise.
+       * gcc.target/i386/pr126293-12.c: Likewise.
+       * gcc.target/i386/pr126293-13.c: Likewise.
+       * gcc.target/i386/pr126293-14.c: Likewise.
+       * gcc.target/i386/pr126293-15.c: Likewise.
+       * gcc.target/i386/pr126293-16.c: Likewise.
+       * gcc.target/i386/pr126293-17.c: Likewise.
+
+2026-08-12  Tamar Christina  <[email protected]>
+
+       PR tree-optimization/126589
+       * gfortran.target/aarch64/pr122408_1.f90: update scans to check for FMS.
+       * gcc.dg/vect/complex/complex-mul2.c: New test.
+       * gcc.dg/vect/complex/fast-math-complex-mls-manual-invalid-float.c: New 
test.
+       * gcc.dg/vect/complex/fast-math-complex-mls-outofplace-double.c: New 
test.
+       * gcc.dg/vect/complex/fast-math-complex-mls-outofplace-float.c: New 
test.
+
+2026-08-12  Gaius Mulley  <[email protected]>
+
+       PR modula2/125129
+       * gm2/exceptions/run/pass/exceptions-run-pass.exp: Use
+       gm2_target_compiler rather than target_compile.
+       * lib/gm2.exp (gm2_target_compile_default): Check
+       check_effective_target_pie and append -fPIE if necessary.
+
+2026-08-12  Abhishek Kaushik  <[email protected]>
+
+       * gcc.target/aarch64/sme2/acle-asm/qrshrn_s8_x2.c: New test.
+       * gcc.target/aarch64/sme2/acle-asm/qrshrn_u8_x2.c: New test.
+       * gcc.target/aarch64/sme2/acle-asm/qrshrun_u8_x2.c: New test.
+       * gcc.target/aarch64/sme2/acle-asm/qshrn_s16_x2.c: New test.
+       * gcc.target/aarch64/sme2/acle-asm/qshrn_s8_x2.c: New test.
+       * gcc.target/aarch64/sme2/acle-asm/qshrn_u16_x2.c: New test.
+       * gcc.target/aarch64/sme2/acle-asm/qshrn_u8_x2.c: New test.
+       * gcc.target/aarch64/sme2/acle-asm/qshrun_u16_x2.c: New test.
+       * gcc.target/aarch64/sme2/acle-asm/qshrun_u8_x2.c: New test.
+
+2026-08-12  Kyrylo Tkachov  <[email protected]>
+
+       * gcc.dg/tree-ssa/round-up-ior-1.c: New test.
+       * gcc.dg/tree-ssa/round-up-ior-2.c: Likewise.
+
+2026-08-12  Richard Biener  <[email protected]>
+
+       PR tree-optimization/126099
+       PR tree-optimization/126053
+       * gcc.dg/vect/bb-slp-pr126099-1.c: New testcase.
+       * gcc.dg/vect/bb-slp-pr126099-2.c: Likewise.
+       * gcc.dg/vect/bb-slp-pr126099-3.c: Likewise.
+       * gcc.dg/vect/bb-slp-pr126099-4.c: Likewise.
+       * gcc.dg/vect/bb-slp-pr126099-5.c: Likewise.
+       * gcc.dg/vect/costmodel/x86_64/costmodel-pr126053.c: Likewise.
+
+2026-08-12  Richard Biener  <[email protected]>
+
+       PR tree-optimization/126028
+       * gcc.dg/vect/bb-slp-46.c: Un-XFAIL.
+       * gcc.dg/vect/bb-slp-pr126053.c: New testcase.
+       * gcc.dg/vect/costmodel/x86_64/costmodel-pr126028.c: Likewise.
+
+2026-08-12  Kyrylo Tkachov  <[email protected]>
+
+       * gcc.dg/rtl/aarch64/subs_general_reg.c: New test.
+
+2026-08-12  Kyrylo Tkachov  <[email protected]>
+
+       * gcc.target/aarch64/pragma_cpp_predefs_4.c: Add __ARM_FEATURE_CSSC
+       tests.
+
+2026-08-12  Richard Biener  <[email protected]>
+
+       PR tree-optimization/126789
+       * gcc.target/i386/vect-pr126789-2.c: New testcase.
+
+2026-08-12  Jørgen Kvalsvik  <[email protected]>
+
+       * g++.dg/gcov/gcov-24.C: New test.
+       * g++.dg/gcov/gcov-25.C: New test.
+       * g++.dg/gcov/gcov-26.C: New test.
+       * g++.dg/gcov/gcov-27.C: New test.
+       * gcc.dg/pragma-suppress-coverage.c: New test.
+       * gcc.misc-tests/gcov-37.c: New test.
+       * gcc.misc-tests/gcov-38.c: New test.
+       * gcc.misc-tests/gcov-39.c: New test.
+       * gcc.misc-tests/gcov-40.c: New test.
+       * gcc.misc-tests/gcov-41.c: New test.
+       * gcc.misc-tests/gcov-42.c: New test.
+       * gcc.misc-tests/gcov-42.h: New test.
+
+2026-08-12  Aldy Hernandez  <[email protected]>
+
+       PR tree-optimization/126103
+       * gcc.dg/pr89737.c: Add -fno-thread-jumps.
+       * gcc.dg/tree-ssa/backthread-computed-goto-1.c: New test.
+       * gcc.dg/tree-ssa/backthread-computed-goto-3.c: New test.
+
+2026-08-12  Jakub Jelinek  <[email protected]>
+
+       * g++.dg/reflect/info1.C: New test.
+
+2026-08-12  Tamar Christina  <[email protected]>
+
+       PR tree-optimization/126778
+       * gcc.dg/vect/vect-early-break_145-pr126778_1.c: New test.
+       * gcc.dg/vect/vect-early-break_145-pr126778_2.c: New test.
+
+2026-08-12  Hongyu Wang  <[email protected]>
+
+       PR target/126787
+       * gcc.target/i386/pr126787.c: New test.
+
 2026-08-11  Andrew MacLeod  <[email protected]>
 
        PR tree-optimization/126536
diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog
index 2f52a55997c8..04e7035f0ad5 100644
--- a/libgcc/ChangeLog
+++ b/libgcc/ChangeLog
@@ -1,3 +1,12 @@
+2026-08-12  Georg-Johann Lay  <[email protected]>
+
+       * config/avr/t-avr (LIB1ASMFUNCS): Add _usshift_1, _usshift_2,
+       _usshift_4, _ssshift_1, _ssshift_2, _ssshift_4.
+       (FUNCS_notiny): Add _usshift_8, _ssshift_8.
+       (LIB2FUNCS_EXCLUDE): Add all the default libgcc saturated shifts.
+       * config/avr/lib1funcs-fixed.S: Support saturated ashl for
+       all fixed-point modes.
+
 2026-08-11  Georg-Johann Lay  <[email protected]>
 
        * config/avr/t-avr (conv_YX): New variable.
diff --git a/libgcobol/ChangeLog b/libgcobol/ChangeLog
index eea67cfb7d2f..2c891fc96c67 100644
--- a/libgcobol/ChangeLog
+++ b/libgcobol/ChangeLog
@@ -1,3 +1,24 @@
+2026-08-12  Robert Dubner  <[email protected]>
+
+       * charmaps.h (ascii_at): New define for '@',
+       (charmap_load_unaligned): Eliminate.
+       (charmap_store_unaligned): Eliminate.
+       (store_uint16): Eliminate.
+       (store_uint32): Eliminate.
+       (class charmap_t): Make m_ascii_sign_bit, ::getch, ::putch, and
+       ::memset behave for big-endian architectures.
+       * gfileio.cc (write_a_char): Behave properly on big-endian
+       architectures.
+       (sequential_file_write): Likewise.
+       (line_sequential_file_read_sbc): Likewise.
+       (line_sequential_file_read): Likewise.
+       * libgcobol.cc (edited_to_binary): Simplified.
+       (int128_to_field): Proper big-endian behavior.
+       (uber_compare): Proper big-endian behavior, simplified ABI.
+       (__gg__dirty_to_binary): Simplified.
+       (compare_strings): Use new uber_compare call.
+       (__gg__compare_2): Likewise.
+
 2026-08-10  Robert Dubner  <[email protected]>
 
        * common-defs.h (enum cbl_field_attr_t): Update comments.
diff --git a/libgm2/ChangeLog b/libgm2/ChangeLog
index cb6979bb6bb0..cfc79ab82f73 100644
--- a/libgm2/ChangeLog
+++ b/libgm2/ChangeLog
@@ -1,3 +1,35 @@
+2026-08-12  Gaius Mulley  <[email protected]>
+
+       PR modula2/125129
+       * Makefile.am (GM2_FOR_TARGET_ESC): New define.
+       (AM_MAKEFLAGS): Add GM2_FOR_TARGET_ESC.
+       Add HAVE_PYTHON_INTERPRETER.
+       * Makefile.in: Regenerate.
+       * aclocal.m4: Regenerate.
+       * config.h.in: Regenerate.
+       * configure: Regenerate.
+       * configure.ac: Call AC_PYTHON_DEVEL.
+       Call GCC_PICFLAG.
+       * libm2cor/Makefile.am (libm2cor_la_M2FLAGS): Add
+       gm2-libs-cor-common and pathname.
+       (SYSTEM.def): Rewrite rule.
+       (SYSTEM.mod): Copy common file.
+       * libm2cor/Makefile.in: Regenerate.
+       * libm2iso/Makefile.am (AM_MAKEFLAGS): Add GM2_FOR_TARGET_ESC.
+       Add HAVE_PYTHON_INTERPRETER.
+       (libm2iso_la_CFLAGS): Add m2pim pathname and ../libm2pim to
+       include path.
+       * libm2log/Makefile.am: Rewrite to handle HAVE_PYTHON_INTERPRETER.
+       Falling back to the common versions of target sources if
+       HAVE_PYTHON_INTERPRETER is false.
+       * libm2min/Makefile.am: Ditto.
+       * libm2pim/Makefile.am: Ditto.
+       * libm2iso/Makefile.in: Regenerate.
+       * libm2log/Makefile.in: Regenerate.
+       * libm2min/Makefile.in: Regenerate.
+       * libm2pim/Makefile.in: Regenerate.
+       * ax_python_devel.m4: New file.
+
 2026-07-09  Stefan Schulze Frielinghaus  <[email protected]>
 
        * configure.host: Remove s390 host part; keep s390x.

Reply via email to