[gcc r17-3451] Daily bump.

GCC Administrator gccadmin@gcc.gnu.org
Thu Aug 20 00:17:15 GMT 2026


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

commit r17-3451-gff56b86a447e20866d9f81fac209b5ad660cb880
Author: GCC Administrator <gccadmin@gcc.gnu.org>
Date:   Thu Aug 20 00:16:43 2026 +0000

    Daily bump.

Diff:
---
 ChangeLog               |  12 ++
 contrib/ChangeLog       |   5 +
 gcc/ChangeLog           | 309 ++++++++++++++++++++++++++++++++++++++++++++++++
 gcc/DATESTAMP           |   2 +-
 gcc/ada/ChangeLog       |  14 +++
 gcc/cobol/ChangeLog     |  44 +++++++
 gcc/cp/ChangeLog        |  25 ++++
 gcc/m2/ChangeLog        |  15 +++
 gcc/testsuite/ChangeLog | 232 ++++++++++++++++++++++++++++++++++++
 libcpp/ChangeLog        |   7 ++
 libgcobol/ChangeLog     |   7 ++
 libstdc++-v3/ChangeLog  | 121 +++++++++++++++++++
 12 files changed, 792 insertions(+), 1 deletion(-)

diff --git a/ChangeLog b/ChangeLog
index e2a7e2817dee..c0cd81773e01 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,15 @@
+2026-08-19  Claudio Bantaloukas  <claudio.bantaloukas@arm.com>
+
+	PR other/126226
+	* .gitignore: Ignore python eggs.
+	* pyproject.toml: New file.
+
+2026-08-19  Longjun Luo  <luolongjuna@gmail.com>
+
+	* MAINTAINERS.yml: Add myself.
+	* MAINTAINERS (Write After Approval): Regenerate.
+	(Contributing under the DCO): Regenerate.
+
 2026-08-18  Richard Earnshaw  <rearnsha@arm.com>
 
 	* MAINTAINERS.yml (users): Add forgeid for some users.
diff --git a/contrib/ChangeLog b/contrib/ChangeLog
index b095596adce6..219ab454df93 100644
--- a/contrib/ChangeLog
+++ b/contrib/ChangeLog
@@ -1,3 +1,8 @@
+2026-08-19  Richard Earnshaw  <rearnsha@arm.com>
+
+	* add-write-after.py (getuserdata): Also capture an optional
+	forge ID.
+
 2026-08-18  Richard Earnshaw  <rearnsha@arm.com>
 
 	* forge_teams.py: New file.
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 40935e20d915..944ebf672b42 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,312 @@
+2026-08-19  Konstantinos Eleftheriou  <konstantinos.eleftheriou@vrull.eu>
+	    Philipp Tomsich  <philipp.tomsich@vrull.eu>
+
+	PR tree-optimization/107090
+	PR tree-optimization/126642
+	* match.pd (long_mul_high_chain): New atom for the emitted high-part chain.
+	* tree-ssa-forwprop.cc (long_mul_classify_match): Gate the
+	HIGH_PART wide-chain emit on optimize_widening_mul_active_p
+	rather than on the target having a 2N multiply.
+	* tree-ssa-math-opts.cc (can_widen_to_narrow_p): New.
+	(build_long_mul_partials): New; emits the four partial products
+	using widening or plain multiplies.
+	(emit_long_mul_highpart): New; the high N bits of an N-bit
+	product, as a longhand over (N/2)-bit partials.
+	(combine_long_mul_halves): New; the high N bits of a product of
+	two 2N-bit values given as N-bit halves.
+	(long_mul_op_fits_p): New; true when an operand is provably
+	representable in narrow_prec unsigned bits.
+	(long_mul_split_operand): New; splits an operand into N-bit
+	halves using only N-bit operations.
+	(struct long_mul_halves): New; the halves an operand PHI was
+	split into.
+	(struct long_mul_arg_split): New; an argument of an operand PHI
+	with the statements that split it.
+	(long_mul_split_phi): New; splits an operand PHI by splitting its
+	arguments and merging the halves with two new PHIs. Record the
+	halves and reuse them for the next consumer of the same PHI.
+	(long_mul_high_half_uses): New; collects the `>> N' uses forming
+	a product's high half.
+	(long_mul_only_low_half_used_p): New.
+	(unexpandable_long_mul_p): New; true for a 2N multiply in a mode
+	the target cannot multiply.
+	(narrow_long_mul_low_half): New; narrow a 2N low-half-only mult
+	the target cannot expand to an N-bit mult.
+	(narrow_long_mul_operands): New; recurse into chained wide
+	products after a narrowing/lowering.
+	(finish_long_mul_low_half): New; narrows or removes a 2N mult
+	whose high half is synthesized elsewhere.
+	(narrow_long_mul_halves): New; rewrites a 2N multiply into the
+	N-bit halves its uses read.
+	(gimple_long_mul_high_chain): Declare.
+	(lower_long_mul_high_chain): New; lowers the high-part chain to a
+	longhand at narrow precision. Split each operand into N-bit
+	halves and combine, handling an operand wider than narrow_prec
+	instead of rejecting it. Narrow or drop the residual 2N mult via
+	the helpers and recurse into its operands.
+	(optimize_widening_mul_active_p): New; shared gate used by
+	pass_optimize_widening_mul::gate and by the forwprop long-multiply
+	recognizer. Return false when optimize_debug.
+	(math_opts_dom_walker::after_dom_children): Dispatch to
+	lower_long_mul_high_chain on the outer convert. Run
+	narrow_long_mul_low_half on MULT_EXPR before the widen/fma
+	conversion attempts.
+	(pass_optimize_widening_mul::execute): Sweep the function for
+	multiplies left in a mode the target cannot expand. Scope the
+	record of split operand PHIs to one run of the pass.
+	* tree-ssa-math-opts.h (optimize_widening_mul_active_p): Declare.
+
+2026-08-19  Konstantinos Eleftheriou  <konstantinos.eleftheriou@vrull.eu>
+	    Philipp Tomsich  <philipp.tomsich@vrull.eu>
+
+	PR tree-optimization/107090
+	* match.pd: Add cond_carry_add and cond_carry_add_neg match
+	recognizers for the 2-arg PHI form PHI<base + pow2, base>,
+	one per gcond polarity.
+	* tree-ssa-forwprop.cc (gimple_cond_carry_add): Declare.
+	(gimple_cond_carry_add_neg): Likewise.
+	(long_mul_check_low_plus_defer): Note that the PHI entry commits
+	only to HIGH_PART rows.
+	(long_mul_classify_match): Take the candidate statement for the
+	per-row checks.
+	(long_mul_classify_chain): Take an optional pre-classified extra
+	summand, for the carry the PHI entry synthesizes.
+	(match_long_mul): Adjust.
+	(match_long_mul_phi): New PHI-driven entry; recognizes a
+	cond_carry_add(_neg) PHI and folds the long-multiply
+	when the rest of the high-part chain matches.
+	(pass_forwprop::execute): Call match_long_mul_phi on each
+	PHI in the degenerate-PHI walk.
+
+2026-08-19  Konstantinos Eleftheriou  <konstantinos.eleftheriou@vrull.eu>
+
+	PR tree-optimization/107090
+	* tree-ssa-forwprop.cc (long_mul_check_low_plus_defer): New
+	helper, defers the fold when any GT/LT/GE/LE use shares an
+	operand with the PLUS; gates the LOW_PART PLUS_EXPR row added
+	to long_mul_table.
+
+2026-08-19  Konstantinos Eleftheriou  <konstantinos.eleftheriou@vrull.eu>
+
+	PR tree-optimization/107090
+	* match.pd: Add mul_ladder_sum1, mul_ladder_sum2,
+	mul_ladder_sum3 and mul_ladder_part_sum atom recognizers.
+	* tree-ssa-forwprop.cc (gimple_mul_ladder_sum1): Declare.
+	(gimple_mul_ladder_sum2): Likewise.
+	(gimple_mul_ladder_sum3): Likewise.
+	(gimple_mul_ladder_part_sum): Likewise.
+	(enum long_mul_kind): Add LMK_LADDER_SUM1 / LMK_LADDER_SUM2
+	/ LMK_LADDER_SUM3 / LMK_LADDER_PART_SUM, with the
+	long_mul_table HIGH_PART and LOW_PART rows for each ladder
+	form.
+	(long_mul_set_summand): Handle the new kinds.
+	(long_mul_classify_carry): Update the specificity note above
+	long_mul_classify_plus_kinds.
+	(long_mul_classify_plus_kinds): Try mul_ladder_sum3 and
+	mul_ladder_sum1 before mul_low_sum (more-constrained
+	first); add mul_ladder_sum2.
+	(long_mul_classify_hi_extract): Add mul_ladder_part_sum
+	branch.
+	(long_mul_classify_lo_extract): Adjust.
+
+2026-08-19  Konstantinos Eleftheriou  <konstantinos.eleftheriou@vrull.eu>
+
+	PR tree-optimization/107090
+	* match.pd: Add mul_carry_low atom recognizer.
+	* tree-ssa-forwprop.cc (gimple_mul_carry_low): Declare.
+	(enum long_mul_kind): Add LMK_CARRY_LOW.
+	(struct long_mul_summand): Add carry_a / carry_b for the
+	LMK_CARRY_LOW summand's two operands.
+	(long_mul_set_summand): Handle LMK_CARRY_LOW.
+	(long_mul_classify_carry): Try mul_carry_low after the
+	more-constrained mul_carry_low_sum / mul_carry_cross_sum.
+	(long_mul_find_summand): New helper, find the first summand
+	with a given kind.
+	(long_mul_check_two_carries): New extra check, validates the
+	LMK_CARRY_LOW summand's operands against the canonical
+	(op0, op1); gates the two-carry HIGH_PART row added to
+	long_mul_table.
+
+2026-08-19  Konstantinos Eleftheriou  <konstantinos.eleftheriou@vrull.eu>
+
+	PR tree-optimization/107090
+	* match.pd: Add mul_low_sum and mul_carry_low_sum atom
+	recognizers.
+	* tree-ssa-forwprop.cc (gimple_mul_low_sum): Declare.
+	(gimple_mul_carry_low_sum): Likewise.
+	(create_mul_low_seq): Update the widest-atom note above
+	LONG_MUL_MAX_CAPTURES to mul_carry_low_sum (7 captures).
+	(enum long_mul_kind): Add LMK_LOW_SUM and LMK_CARRY_LOW_SUM,
+	with the long_mul_table HIGH_PART and LOW_PART rows that
+	consume them.
+	(long_mul_set_summand): Handle the new kinds.
+	(long_mul_classify_carry): Try mul_carry_low_sum before
+	mul_carry_cross_sum (most-specific first).
+	(long_mul_classify_plus_kinds): Try mul_low_sum after
+	mul_low_accum (mul_low_sum's first arm is any plus and
+	mul_low_accum constrains both arms).
+
+2026-08-19  Konstantinos Eleftheriou  <konstantinos.eleftheriou@vrull.eu>
+	    Philipp Tomsich  <philipp.tomsich@vrull.eu>
+
+	PR tree-optimization/107090
+	* match.pd: Add atom match recognizers for long-multiply
+	(mul_hi, mul_lo, mul_hilo, mul_lolo, mul_hihi, mul_cross_sum,
+	mul_low_accum, mul_carry_cross_sum).
+	* tree-ssa-forwprop.cc (gimple_mul_hi): Declare.
+	(gimple_mul_lo): Likewise.
+	(gimple_mul_hilo): Likewise.
+	(gimple_mul_lolo): Likewise.
+	(gimple_mul_hihi): Likewise.
+	(gimple_mul_cross_sum): Likewise.
+	(gimple_mul_low_accum): Likewise.
+	(gimple_mul_carry_cross_sum): Likewise.
+	(build_mul_high_seq): New, emits (N)(((2N) op1 * (2N) op2) >> N)
+	into a caller-supplied destination.
+	(long_mul_apply_extras): New, combines the preserved addends back
+	on top of the folded multiply.
+	(create_mul_high_seq): New, replaces the statement with the
+	high-part multiply plus any extras.
+	(create_mul_low_seq): New, likewise for the low part.
+	(enum long_mul_kind): New.
+	(enum long_mul_extract): New.
+	(struct long_mul_summand): New.
+	(long_mul_linearize_chain): New, walks the outer add/ior chain
+	into a multiset of leaves.
+	(long_mul_is_lshift_def): New.
+	(long_mul_set_summand): New.
+	(long_mul_classify_carry): New.
+	(long_mul_classify_plus_kinds): New.
+	(long_mul_classify_hi_extract): New.
+	(long_mul_classify_lo_extract): New.
+	(long_mul_classify_shl_extract): New.
+	(long_mul_classify_bare): New.
+	(long_mul_classify_summand): New, classify each summand via the
+	match.pd atoms.
+	(long_mul_summand_compare): New.
+	(struct long_mul_row): New.
+	(long_mul_same_ops): New.
+	(long_mul_is_cross_half): New.
+	(long_mul_hilo_orientation): New, orientation of a mul_hilo
+	capture relative to (op0, op1).
+	(long_mul_canonical_ops): New.
+	(long_mul_check_consistency): New, cross-summand consistency
+	check (operand pairing, half-width shifts, hilo cross-half).
+	(long_mul_signature_matches): New.
+	(long_mul_hint_shared_intermediate): New, dump-file hint
+	pointing at a shared inner addition.
+	(long_mul_classify_match): New, looks a summand multiset up in
+	long_mul_table and runs the per-row checks.
+	(long_mul_classify_chain): New, linearize plus classify plus
+	table lookup; sets aside leaves that classify as no summand.
+	(match_long_mul): New, top-level entry: starts only at a chain
+	end, classifies the chain, and dispatches to create_mul_high_seq
+	/ create_mul_low_seq with any preserved addends.
+	(pass_forwprop::execute): Call match_long_mul on PLUS_EXPR and
+	BIT_IOR_EXPR statements.
+
+2026-08-19  Andrea Pinski  <andrew.pinski@oss.qualcomm.com>
+
+	PR tree-optimization/126934
+	* range-op.cc (operator_div::op1_op2_relation_effect): Fix
+	for ops range being negative with VREL_LT.
+
+2026-08-19  Kyrylo Tkachov  <ktkachov@nvidia.com>
+
+	* config/aarch64/iterators.md (vnarrowq): New mode attribute.
+	(sat_trunc_op): New code attribute.
+	* config/aarch64/aarch64-simd.md (<sat_trunc_op>trunc<mode><vnarrowq>2):
+	New expander.
+
+2026-08-19  Alice Carlotti  <alice.carlotti@arm.com>
+
+	* config/aarch64/aarch64-sys-regs.def: Sync from Binutils.
+
+2026-08-19  Iain Sandoe  <iain@sandoe.co.uk>
+
+	* config/darwin.h (LINK_COMMAND_SPEC_A): Synchronise the
+	options for coverage with gcc/gcc.cc.
+
+2026-08-19  Kyrylo Tkachov  <ktkachov@nvidia.com>
+
+	* config/aarch64/aarch64-simd.md (aarch64_cm<optab>di): Accept a
+	zero second operand in the general register alternative.
+
+2026-08-19  Kyrylo Tkachov  <ktkachov@nvidia.com>
+
+	PR tree-optimization/125557
+	* ifcvt.cc (average_cost): Scale a nonnegative cost difference using
+	the probability of the more expensive arm.
+
+2026-08-19  Kyrylo Tkachov  <ktkachov@nvidia.com>
+
+	* profile-count.h (profile_probability::apply): Scale an unsigned
+	magnitude with safe_scale_64bit.
+	* profile-count.cc (test_profile_probability_apply): New.
+	(profile_count_cc_tests): New.
+	* selftest.h (profile_count_cc_tests): Declare.
+	* selftest-run-tests.cc (selftest::run_tests): Run it.
+
+2026-08-19  Richard Biener  <rguenther@suse.de>
+
+	* tree-vect-slp.cc (vect_build_slp_instance): Remove dead code.
+	(vect_analyze_slp_instance): Likewise.
+
+2026-08-19  Richard Biener  <rguenther@suse.de>
+
+	* tree-vect-slp.cc (vect_print_slp_tree): Dump the scheduling
+	point, if set.
+
+2026-08-19  Richard Biener  <rguenther@suse.de>
+
+	* tree-vect-slp.cc (vect_optimize_slp_pass::containing_loop):
+	For nodes w/o representative use the region entry block
+	to indicate the containing loop.
+
+2026-08-19  Richard Biener  <rguenther@suse.de>
+
+	PR tree-optimization/126936
+	* tree-vect-slp.cc (vect_bb_slp_mark_live_stmts): Exclude
+	use_stmt from dominance check.
+	(vect_schedule_slp): Likewise for root.
+
+2026-08-19  Richard Biener  <rguenther@suse.de>
+
+	* tree-vect-slp.cc (vect_slp_build_two_operator_nodes):
+	Set SLP_TREE_REPRESENTATIVE to NULL for the permute nodes.
+	(vect_build_slp_tree_2): Likewise.
+	(vect_build_slp_store_interleaving): Likewise.
+	(vect_lower_load_permutations): Likewise.
+	(vect_optimize_slp_pass::get_result_with_layout): Likewise.
+	(vect_cse_slp_node_parts): Deal with NULL SLP_TREE_REPRESENTATIVE
+	for VEC_PERM nodes.
+	(vect_slp_analyze_node_operations_1): Assert permute nodes
+	do not have SLP_TREE_REPRESENTATIVE set.
+	* tree-vect-slp-patterns.cc (complex_pattern::build): Adjust.
+	(vect_build_swap_evenodd_node): Do not set SLP_TREE_REPRESENTATIVE.
+	(vect_build_combine_node): Likewise.
+
+2026-08-19  Richard Biener  <rguenther@suse.de>
+
+	* tree-vect-slp.cc (vect_slp_node_weight): Get vinfo as
+	context.  For nodes without representative use the
+	region entry block.
+	(vect_optimize_slp_pass::start_choosing_layouts): Always
+	assign vertex weight.
+
+2026-08-19  Kyrylo Tkachov  <ktkachov@nvidia.com>
+
+	PR target/126597
+	* config/aarch64/aarch64.cc (aarch64_expand_vec_perm_const_1): Swap
+	zero_op0_p and zero_op1_p along with the operands.
+
+2026-08-19  Richard Biener  <rguenther@suse.de>
+
+	PR ipa/126930
+	* tree-ssa-alias.cc (ptr_deref_may_alias_global_p): Guard
+	against non-pointers.
+	(ptr_deref_may_alias_auto_p): Likewise.
+
 2026-08-18  Andrew MacLeod  <amacleod@redhat.com>
 
 	PR tree-optimization/126856
diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP
index a8e78f54d93c..7a23bbffaa7d 100644
--- a/gcc/DATESTAMP
+++ b/gcc/DATESTAMP
@@ -1 +1 @@
-20260819
+20260820
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index f2ba6a9c942f..e2eaae947be5 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -1,3 +1,17 @@
+2026-08-19  Eric Botcazou  <ebotcazou@adacore.com>
+
+	PR ada/126928
+	* sem_ch12.adb (In_Local_Package_Of_Formal_Package): New predicate.
+	(Analyze_Package_Instantiation): Do not register the instantiation
+	of the body if it is present in the local package of a formal one.
+	(Need_Subprogram_Instance_Body): Likewise.
+
+2026-08-19  Eric Botcazou  <ebotcazou@adacore.com>
+
+	PR ada/126907
+	* sem_attr.adb (Resolve_Attribute) <Attribute_Reduce>: Do not call
+	Relocate_Node on nodes of the original unanalyzed tree.
+
 2026-08-01  Eric Botcazou  <ebotcazou@adacore.com>
 
 	PR ada/126553
diff --git a/gcc/cobol/ChangeLog b/gcc/cobol/ChangeLog
index 2ba14b3ff0cb..99b55f40fb9a 100644
--- a/gcc/cobol/ChangeLog
+++ b/gcc/cobol/ChangeLog
@@ -1,3 +1,47 @@
+2026-08-19  James K. Lowden  <jklowden@cobolworx.com>
+
+	* parse_ante.h (in_procedure_division): Position alphabetically.
+	(in_identification_division): New function.
+	(in_file_section): Remove void argument declaration.
+	* scan.l: Add TITLE pattern and accept as NAME outside ID Division.
+	* scan_ante.h (in_procedure_division): Remove void argument declaration.
+	(in_environment_division): Same.
+	(in_identification_division): Declare new function.
+
+2026-08-19  Robert Dubner  <rdubner@symas.com>
+	    James K. Lowden  <jklowden@cobolworx.com>
+
+	* cdf.y: Revise debug message and token numbers.  Remove USED_TOKEN
+	macro, introduce SAVE_LOOKAHEAD.
+	* gengen.cc (class DECL_COUNTER): Add VAR_DECL creation counter.
+	(gg_define_from_declaration): Likewise.
+	* parse.y: Move named XML tokens to first token list and recognize
+	FILLER.
+	* scan.l: Eliminate scan used for debug message.
+	* scan_ante.h (level_found): Remove function.
+	(PUSH_CDF_STATE): Push cdf_state SC at most once.
+	(trim_location): Less verbose debug message.
+	(symbol_lower_name): New function.
+	(symbol_exists): Use symbol_lower_name and accept override parameter.
+	(scanner_cache_update):  New function.
+	(unquote):  New function for string literals.
+	* scan_post.h (start_condition_str):  Update with new SC names.
+	(run_cdf): Do not pop from cdf_state unconditionally.
+	(RECENT): Remove macro.
+	(same_end): Remove function.
+	(same_token): Same.
+	(next_token): Same.
+	(prelex): Use cdf::last_lexed and cdf::had_lookahead().
+	(yylex): Remove one early return.
+	* symbols.cc (symbol_program): Use new map of programs.
+	(symbol_function_impl): Use new map of functions.
+	(symbol_temporaries): Use new list of alphanumerics.
+	(symbol_temporary_alphanumerics): New class to house alphanumerics
+	list.
+	(symbol_program_add): Populate new maps.
+	* token_names.h: Regenerate.
+	* util.cc (cdf_field_add):  Use scanner_cache_update.
+
 2026-08-17  Robert Dubner  <rdubner@symas.com>
 
 	* cdf.y: Revert changes.
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index b50649baef6b..2f4168c5c6f5 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,28 @@
+2026-08-19  Marek Polacek  <polacek@redhat.com>
+
+	* reflect.cc (check_splice_expr): Reject splicing a direct base
+	class relationship without an object.
+
+2026-08-19  Jakub Jelinek  <jakub@redhat.com>
+
+	PR c++/126918
+	* constexpr.cc (class constexpr_global_ctx): Extend description of
+	caught_exceptions vector.
+	(cxx_eval_cxa_builtin_fn): When catching a pointer-to-member and
+	the current exception is nullptr or pointer-to-member with different
+	type, create a temporary, initialize it from the exception value and
+	return address of it.  Make sure to free these temporaries at
+	__cxa_end_catch time.
+	* call.cc (handler_match_for_exception_type): Allow NULLPTR_TYPE
+	exception type or different pointer-to-member type even for
+	TYPE_PTRMEMFUNC_P types, not just TYPE_PTRDATAMEM_P types.
+
+2026-08-19  Eczbek  <eczbek.void@gmail.com>
+
+	PR c++/70097
+	* decl.cc (grokdeclarator): If rqual is REF_QUAL_NONE, set it to
+	result of type_memfn_rqual before passing to build_memfn_type.
+
 2026-08-18  Jakub Jelinek  <jakub@redhat.com>
 
 	PR c++/126867
diff --git a/gcc/m2/ChangeLog b/gcc/m2/ChangeLog
index f3cd33a6c6be..df7bb37239f6 100644
--- a/gcc/m2/ChangeLog
+++ b/gcc/m2/ChangeLog
@@ -1,3 +1,18 @@
+2026-08-19  Gaius Mulley  <gaiusmod2@gmail.com>
+
+	PR modula2/126911
+	* tools-src/mktargetsrc.py (safeRemove): New function.
+	(quietSystem): Call safeRemove for temporaryFile and
+	args.outputfile.
+
+2026-08-19  Gaius Mulley  <gaiusmod2@gmail.com>
+
+	PR modula2/126911
+	* tools-src/mktargetsrc.py (quietSystem): Add temporaryFile
+	parameter.
+	Tidy up if result is non zero by removing temporaryFile
+	and args.outputfile.
+
 2026-08-12  Gaius Mulley  <gaiusmod2@gmail.com>
 
 	PR modula2/125129
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 8859600ae0f8..7593552c1c65 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,235 @@
+2026-08-19  H.J. Lu  <hjl.tools@gmail.com>
+
+	PR testsuite/126923
+	* gcc.target/i386/pr125436-1a.c (dg-options): Add -mno-avx.
+	* gcc.target/i386/pr125436-1b.c (dg-options): Likewise.
+	* gcc.target/i386/pr125436-2a.c (dg-options): Likewise.
+	* gcc.target/i386/pr125436-2b.c (dg-options): Likewise.
+	* gcc.target/i386/pr125436-3.c (dg-options): Likewise.
+	* gcc.target/i386/pr125436-4.c (dg-options): Likewise.
+
+2026-08-19  H.J. Lu  <hjl.tools@gmail.com>
+
+	PR testsuite/126923
+	* gcc.target/i386/builtin-copysign-4.c (dg-options): Add
+	-mtune-ctrl=^sse_packed_single_insn_optimal.
+	* gcc.target/i386/builtin-copysign-5.c (dg-options): Likewise.
+	* gcc.target/i386/builtin-copysign-6.c (dg-options): Likewise.
+	* gcc.target/i386/builtin-copysign-7.c (dg-options): Likewise.
+	* gcc.target/i386/builtin-copysign-8a.c (dg-options): Likewise.
+
+2026-08-19  H.J. Lu  <hjl.tools@gmail.com>
+
+	PR testsuite/126923
+	* gcc.target/i386/sse2-shiftqihi-constant-1.c (dg-options): Add
+	-mno-gfni.
+
+2026-08-19  H.J. Lu  <hjl.tools@gmail.com>
+
+	PR testsuite/126923
+	* gcc.target/i386/avx512bw-shiftqihi-constant-1.c (dg-options):
+	Add -mno-gfni.
+
+2026-08-19  H.J. Lu  <hjl.tools@gmail.com>
+
+	PR testsuite/126923
+	* gcc.target/i386/avx2-shiftqihi-constant-1.c (dg-options): Add
+	-mno-gfni.
+
+2026-08-19  H.J. Lu  <hjl.tools@gmail.com>
+
+	PR testsuite/126923
+	* gcc.target/i386/abi-mix-1.c (dg-options): Add -mno-avx.
+
+2026-08-19  Konstantinos Eleftheriou  <konstantinos.eleftheriou@vrull.eu>
+	    Philipp Tomsich  <philipp.tomsich@vrull.eu>
+
+	PR tree-optimization/107090
+	PR tree-optimization/126642
+	* gcc.dg/torture/long-mul-64-run.c: Add near-miss variants of the
+	idiom, cross-checked against their literal meaning.
+	* gcc.dg/tree-ssa/long-mul-carry.c: Add scans for the high-part
+	chain lowering and its dump message. Exclude sparc/hppa from
+	the chain-lowering scan.
+	* gcc.dg/tree-ssa/long-mul-ladder.c: Likewise.
+	* lib/target-supports.exp (check_effective_target_oi_mode): New;
+	enumerates targets whose mode table declares OImode.
+	* gcc.dg/long-mul-128-Og.c: New test.
+	* gcc.dg/torture/long-mul-128.c: New test.
+	* gcc.dg/tree-ssa/long-mul-chain-cse-128.c: New test.
+	* gcc.dg/tree-ssa/long-mul-chain-trunc-128.c: New test.
+	* gcc.target/arm/long-mul-thumb1-inline.c: New test.
+	* gcc.target/arm/long-mul-umull.c: New test.
+	* gcc.target/i386/long-mul-phi-split.c: New test.
+	* gcc.target/i386/long-mul-sweep.c: New test.
+	* gcc.target/i386/widen_mult_high_chain.c: New test.
+
+2026-08-19  Konstantinos Eleftheriou  <konstantinos.eleftheriou@vrull.eu>
+	    Philipp Tomsich  <philipp.tomsich@vrull.eu>
+
+	PR tree-optimization/107090
+	* gcc.dg/tree-ssa/long-mul-carry.c: Add PHI-form CARRY_LOW_SUM,
+	CARRY_CROSS_SUM, and negated-branch compile variants; split the
+	forwprop1 high-part fold count into 10 on int128 and 8 on !int128.
+	* gcc.dg/tree-ssa/long-mul-two-carry.c: Add the
+	mulh_two_carry_low_phi function and its forwprop3 high-part
+	(carry PHI) fold scan.
+	* gcc.dg/tree-ssa/long-mul-boundary-64.c: New test.
+	* gcc.dg/tree-ssa/long-mul-boundary.c: New test.
+	* gcc.dg/tree-ssa/long-mul-partial.c: New test.
+
+2026-08-19  Konstantinos Eleftheriou  <konstantinos.eleftheriou@vrull.eu>
+
+	PR tree-optimization/107090
+	* gcc.dg/tree-ssa/long-mul-two-carry.c: Add a forwprop4 LOW
+	fold expectation for full_mul_two_carry, deferred from
+	forwprop3 by long_mul_check_low_plus_defer.
+	* gcc.dg/tree-ssa/long-mul-low-plus.c: New test.
+
+2026-08-19  Konstantinos Eleftheriou  <konstantinos.eleftheriou@vrull.eu>
+
+	PR tree-optimization/107090
+	* gcc.target/aarch64/long_mul.c: Add mulh_ladder and
+	mulh_ladder_32 functions; bump expected umulh / umull
+	scan counts from 1 to 2.
+	* gcc.target/i386/long_mul.c: Same for mulq / imulq.
+	* gcc.dg/tree-ssa/long-mul-ladder.c: New test.
+
+2026-08-19  Konstantinos Eleftheriou  <konstantinos.eleftheriou@vrull.eu>
+
+	PR tree-optimization/107090
+	* gcc.dg/tree-ssa/long-mul-two-carry.c: New test.
+
+2026-08-19  Konstantinos Eleftheriou  <konstantinos.eleftheriou@vrull.eu>
+
+	PR tree-optimization/107090
+	* gcc.dg/tree-ssa/long-mul-carry.c: Add carry-low-sum
+	coverage (mulh_carry_low_sum, full_mul_carry_low_sum,
+	mulh_carry_low_sum_comm, mulh_carry_low_sum_lohi,
+	mulh_carry_low_sum_128, mulh_carry_low_sum_v2i32) and
+	update fold counts.
+
+2026-08-19  Konstantinos Eleftheriou  <konstantinos.eleftheriou@vrull.eu>
+	    Philipp Tomsich  <philipp.tomsich@vrull.eu>
+
+	PR tree-optimization/107090
+	* gcc.dg/torture/long-mul-64-run.c: New test.
+	* gcc.dg/tree-ssa/long-mul-carry.c: New test.
+	* gcc.dg/tree-ssa/long-mul-extra-addend.c: New test.
+	* gcc.target/aarch64/long_mul.c: New test.
+	* gcc.target/i386/long_mul.c: New test.
+
+2026-08-19  Marek Polacek  <polacek@redhat.com>
+
+	* g++.dg/reflect/mangle3.C: Adjust.
+	* g++.dg/reflect/splice1.C: Remove XFAIL.
+
+2026-08-19  Torbjörn SVENSSON  <torbjorn.svensson@foss.st.com>
+
+	* gcc.target/arm/cmse/cmse-18.c: Use effective-target
+	arm_arch_v8m_main.
+	* gcc.target/arm/cmse/cmse-19.c: Use effective-target
+	arm_arch_v8_1m_mve.
+	* lib/target-supports.exp: Define effective-target
+	arm_arch_v8m_main.
+
+2026-08-19  Andrea Pinski  <andrew.pinski@oss.qualcomm.com>
+
+	PR tree-optimization/126934
+	* gcc.dg/torture/pr126934-1.c: New test.
+
+2026-08-19  Kyrylo Tkachov  <ktkachov@nvidia.com>
+
+	* gcc.target/aarch64/vect-sat-trunc-1.c: New test.
+	* gcc.target/aarch64/vect-sat-trunc-2.c: New test.
+
+2026-08-19  Kyrylo Tkachov  <ktkachov@nvidia.com>
+
+	* gcc.target/aarch64/cmpdi-neg-1.c: New test.
+
+2026-08-19  Kyrylo Tkachov  <ktkachov@nvidia.com>
+
+	PR tree-optimization/125557
+	* gcc.target/i386/ifcvt-average-cost-1.c: New test.
+
+2026-08-19  Eric Botcazou  <ebotcazou@adacore.com>
+
+	* gnat.dg/specs/generic_inst10.ads: New test.
+	* gnat.dg/specs/generic_inst10_g1.ads: New helper.
+	* gnat.dg/specs/generic_inst10_g2.ads: Likewise.
+	* gnat.dg/specs/generic_inst10_g3.ads: Likewise.
+	* gnat.dg/specs/generic_inst10_pkg.ads: Likewise.
+
+2026-08-19  Eric Botcazou  <ebotcazou@adacore.com>
+
+	* gnat.dg/reduce7.adb: New test.
+
+2026-08-19  Iain Sandoe  <iain@sandoe.co.uk>
+
+	* g++.dg/ext/sync-4.C: Adjust XFAIL to reflect that this issue
+	is now fixed on modern Darwin.
+
+2026-08-19  Iain Sandoe  <iain@sandoe.co.uk>
+
+	* g++.dg/lto/pr86585_0.C: Add -dylib0.o for Darwin8/9.
+	* g++.dg/lto/pr87906_0.C: Likewise.
+
+2026-08-19  H.J. Lu  <hjl.tools@gmail.com>
+
+	PR middle-end/126784
+	* g++.dg/tree-ssa/vec-narrow-1.C: Remove -Wno-psabi.  Add -msse4
+	and require int128 for x86.
+	* g++.dg/tree-ssa/vec-narrow-minmax-2.C: Likewise.
+
+2026-08-19  Richard Biener  <rguenther@suse.de>
+
+	PR tree-optimization/126936
+	* gcc.dg/vect/bb-slp-pr126936.c: New testcase.
+
+2026-08-19  H.J. Lu  <hjl.tools@gmail.com>
+
+	PR testsuite/126927
+	* gcc.target/x86_64/abi/ms-sysv/do-test.S (call_do_test_unaligned):
+	New.
+	* gcc.target/x86_64/abi/ms-sysv/gen.cc (make_do_tests_decl):
+	Replace do_test_unaligned with call_do_test_unaligned.
+	(make_do_test): Remove asm statements with stack adjustment.
+
+2026-08-19  H.J. Lu  <hjl.tools@gmail.com>
+
+	PR testsuite/126923
+	* gcc.target/i386/xorps-sse2.c (dg-options): Add
+	-mtune-ctrl=^sse_packed_single_insn_optimal.
+
+2026-08-19  H.J. Lu  <hjl.tools@gmail.com>
+
+	PR testsuite/126923
+	* gcc.target/i386/xop-pcmov3.c (dg-options): Replace -mno-avx512vl
+	with -mno-avx512f.
+
+2026-08-19  H.J. Lu  <hjl.tools@gmail.com>
+
+	PR testsuite/126923
+	* gcc.target/i386/zero-scratch-regs-29.c (dg-options): Add
+	-mtune-ctrl=^use_ffreep.
+	* gcc.target/i386/zero-scratch-regs-30.c (dg-options): Likewise.
+
+2026-08-19  Kyrylo Tkachov  <ktkachov@nvidia.com>
+
+	PR target/126597
+	* gcc.target/aarch64/pr126597.c: New test.
+
+2026-08-19  Jakub Jelinek  <jakub@redhat.com>
+
+	PR c++/126918
+	* g++.dg/cpp26/constexpr-eh24.C: New test.
+	* g++.dg/cpp26/constexpr-eh25.C: New test.
+
+2026-08-19  Eczbek  <eczbek.void@gmail.com>
+
+	PR c++/70097
+	* g++.dg/cpp0x/ref-qual22.C: New test.
+
 2026-08-18  Andrew MacLeod  <amacleod@redhat.com>
 
 	PR tree-optimization/126856
diff --git a/libcpp/ChangeLog b/libcpp/ChangeLog
index 4a71ab07f19d..d5e276fa4859 100644
--- a/libcpp/ChangeLog
+++ b/libcpp/ChangeLog
@@ -1,3 +1,10 @@
+2026-08-19  Kyrylo Tkachov  <ktkachov@nvidia.com>
+
+	PR target/126935
+	* lex.cc (HWCAP_SVE): Define if not already defined.
+	(init_vectorized_lexer): Require HWCAP_SVE as well as
+	HWCAP2_SVE2.
+
 2026-08-13  Kyrylo Tkachov  <ktkachov@nvidia.com>
 
 	* configure.ac: Test whether the AArch64 SVE2 lexer can be built.
diff --git a/libgcobol/ChangeLog b/libgcobol/ChangeLog
index 2c891fc96c67..074f3fcdf148 100644
--- a/libgcobol/ChangeLog
+++ b/libgcobol/ChangeLog
@@ -1,3 +1,10 @@
+2026-08-19  Robert Dubner  <rdubner@symas.com>
+	    James K. Lowden  <jklowden@cobolworx.com>
+
+	* posix/README.md: Updated documentation.
+	* posix/shim/open.cc (posix_open): Remove O_LARGEFILE from POSIX
+	mode flags.
+
 2026-08-12  Robert Dubner  <rdubner@symas.com>
 
 	* charmaps.h (ascii_at): New define for '@',
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 21dc169aa37d..d2211a924b3d 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,124 @@
+2026-08-19  Tomasz Kamiński  <tkaminsk@redhat.com>
+
+	* include/bits/stl_stack.h (std::stack): Declare members as
+	_GLIBCXX26_CONSTEXPR.
+	(std::operator==, std::operator!=, std::operator<, std::operator>)
+	(std::operator<=, std::operator>=, std::operator<=>, std::swap):
+	Declare as _GLIBCXX26_CONSTEXPR.
+	* include/bits/version.def (constexpr_stack): Define.
+	* include/bits/version.h: Regenerate.
+	* include/std/stack (__cpp_lib_constexpr_stack): Define.
+	* (formatter<stack<....>, _CharT>::format)
+	[__glibcxx_constexpr_format]: Declare as constexpr.
+	* testsuite/23_containers/headers/stack/synopsis.cc:
+	Update declarations.
+	* testsuite/std/format/ranges/adaptors.cc: Expand test to stack.
+	* testsuite/23_containers/stack/constexpr.cc: New test derived
+	from 23_containers/queue/constexpr.cc.
+
+2026-08-19  Tomasz Kamiński  <tkaminsk@redhat.com>
+
+	* include/bits/print.h (_File_sink::_File::_M_init_write_buf):
+	Fix whitespace and pass errno directly to __throw_system_error.
+
+2026-08-19  Anlai Lu  <agicy@qq.com>
+	    Tomasz Kamiński  <tkaminsk@redhat.com>
+
+	* include/bits/print.h (_File_sink::_File::_File)
+	[_GLIBCXX_USE_STDIO_LOCKING && _GLIBCXX_USE_GLIBC_STDIO_EXT]:
+	Move __overflow call to separate member function.
+	(_File_sink::_File::_M_init_write_buf)
+	[_GLIBCXX_USE_STDIO_LOCKING && _GLIBCXX_USE_GLIBC_STDIO_EXT]:
+	Extracted from constructor, call __overflow for null
+	_M_file->_IO_write_ptr.
+	(_File_sink::_File_sink)
+	[_GLIBCXX_USE_STDIO_LOCKING && _GLIBCXX_USE_GLIBC_STDIO_EXT]:
+	Call _M_init_write_buf instead of _M_write_buf.
+	* testsuite/27_io/print/1.cc: Add test_print_setvbuf.
+
+2026-08-19  Tomasz Kamiński  <tkaminsk@redhat.com>
+
+	* include/bits/random.h (std::__rotr, std::__rotl, std::__bit_ceil):
+	[__cplusplus >= 201103L]: Define as _GLIBCXX14_CONSTEXPR.
+	(std::__countl_zero, std::__countr_zero, std::__popcount)
+	[__cplusplus >= 201103L]: Split implementation using generic
+	builtin, define other as _GLIBCXX14_CONSTEXPR.
+	(std::__bit_width, std::__bit_floor) [__cplusplus >= 201103L]:
+	Modify to use single return statement.
+	* include/bits/random.tcc (std::__countl_zero, std::__countr_zero)
+	(std::__popcount, std::__bit_width): Define explicit specializations
+	for __detail::__rand_uint128.
+	* include/std/bit (std::__generate_canonical_pow2)
+	(std::__generate_canonical_any): Replace builtins call with
+	<bit> function calls.
+
+2026-08-19  Tomasz Kamiński  <tkaminsk@redhat.com>
+	    Thor Preimesberger  <tcpreimesberger@gmail.com>
+
+	* include/bits/deque.tcc (deque): Declare out of line member
+	defintions as _GLIBCXX26_CONSTEXPR.
+	(std::__fill_a1, std::__copy_move_dit, std::__copy_move_a1)
+	(std::__copy_move_a2, std::__copy_n_a)
+	(std::__copy_move_backward_dit, std::__copy_move_backward_a1)
+	(std::__equal_dit, std::__equal_aux1, std::__lex_cmp_dit)
+	(std::__lexicographical_compare_aux1, std::__uninitialized_copy_a)
+	(std::__uninitialized_move_a): Declare as _GLIBCXX26_CONSTEXPR.
+	* include/bits/stl_algobase.h (std::__fill_a1, std::__copy_n_a)
+	(std::__copy_move_a1, std::__copy_move_backward_a1)
+	(std::__equal_aux1, __lexicographical_compare_aux1): Declare
+	overloads accepting _Deque_iterator as _GLIBCXX26_CONSTEXPR.
+	* include/bits/stl_deque.h (std::_Deque_iterator, std::_Deque_base)
+	(std::deque): Declare members as _GLIBCXX26_CONSTEXPR.
+	(std::operator==, std::operator<=>, std::swap): Declare as
+	_GLIBCXX26_CONSTEXPR.
+	* include/bits/stl_queue.h (std::queue): Declare members as
+	_GLIBCXX26_CONSTEXPR.
+	(std::priority_queue): Make _GLIBCXX26_CONSTEXPR placement
+	consistient.
+	(std::operator==, std::operator!=, std::operator<, std::operator>)
+	(std::operator<=, std::operator>=, std::operator<=>, std::swap):
+	Declare as _GLIBCXX26_CONSTEXPR.
+	* include/bits/stl_uninitialized.h (std::__uninitialized_copy_a):
+	Declare overloads accepting _Deque_iterator as _GLIBCXX26_CONSTEXPR.
+	(std::__uninitialized_default_a): Declare as _GLIBCXX20_CONSTEXPR.
+	* include/bits/version.def (constexpr_deque, constexpr_queue):
+	Define.
+	* include/bits/version.h: Regenerate.
+	* include/debug/deque (__debug::deque): Declare members as
+	_GLIBCXX26_CONSTEXPR.
+	(__debug::operator==, __debug::operator<=>, __debug::swap)
+	(__debug::erase, __debug::__erase_if): Declare as
+	_GLIBCXX26_CONSTEXPR.
+	* include/std/deque (__cpp_lib_constexpr_deque): Define.
+	(std::erase, std::erase_if): Declare as _GLIBCXX26_CONSTEXPR.
+	* include/std/queue (__cpp_lib_constexpr_queue): Define.
+	(_GLIBCXX_CONSTEXPR_FORMAT): Define locally.
+	(std::formatter<priority_queue<...>, _CharT>::format)
+	(std::formatter<queue<...>, _CharT>::format): Declare as
+	_GLIBCXX_CONSTEXPR_FORMAT.
+	* testsuite/23_containers/deque/constexpr.cc: New test.
+	* testsuite/23_containers/headers/deque/synopsis.cc: Update
+	declarations.
+	* testsuite/23_containers/headers/queue/synopsis.cc: Likewise.
+	* testsuite/23_containers/queue/constexpr.cc: New test.
+	* testsuite/23_containers/priority_queue/constexpr.cc: Replace
+	existing test with expanded suite.
+	* testsuite/std/format/ranges/adaptors.cc: Test at compile
+	time.
+
+2026-08-19  Yuao Ma  <c8ef@outlook.com>
+
+	* include/bits/stl_algo.h (__for_each): Add segemented
+	iterators logic. Split out naive for-loop from ...
+	(for_each): ... here.
+	* testsuite/performance/25_algorithms/for_each.cc: New test.
+
+2026-08-19  Matthias Kretz  <m.kretz@gsi.de>
+
+	* include/bits/simd_vec.h (_M_elements_shifted_to_front): Remove
+	x86-specific implementation.
+	* testsuite/std/simd/traits_impl.cc: Fix incorrect macro name.
+
 2026-08-18  Jonathan Wakely  <jwakely@redhat.com>
 
 	PR libstdc++/126786


More information about the Libstdc++-cvs mailing list