https://gcc.gnu.org/g:b76fde4b175ff5f8e8ed8affede662bacb5775a4
commit r17-4211-gb76fde4b175ff5f8e8ed8affede662bacb5775a4 Author: GCC Administrator <[email protected]> Date: Mon Sep 14 00:16:34 2026 +0000 Daily bump. Diff: --- gcc/ChangeLog | 64 +++++++++++++++++++++++ gcc/DATESTAMP | 2 +- gcc/cp/ChangeLog | 104 +++++++++++++++++++++++++++++++++++++ gcc/fortran/ChangeLog | 41 +++++++++++++++ gcc/testsuite/ChangeLog | 134 ++++++++++++++++++++++++++++++++++++++++++++++++ libgm2/ChangeLog | 35 +++++++++++++ libstdc++-v3/ChangeLog | 8 +++ 7 files changed, 387 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 48d9cccd042f..dd78d1b98f2b 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,67 @@ +2026-09-13 Dominic P <[email protected]> + + * generic-match-head.cc (gimple_match_no_overflow_p): New. + * gimple-match-head.cc (gimple_match_no_overflow_p): New. + * match.pd (Y + MIN (X - Y, 0), X - MIN (X - Y, 0), Y + MAX (X - Y, 0), + X - MAX (X - Y, 0), MIN (X + Y, Y) - Y, MAX (X + Y, Y) - Y): New + patterns. + +2026-09-13 Dominic P <[email protected]> + + * match.pd (A - MIN (B, C), A - MAX (B, C)): New patterns. + +2026-09-13 Jeff Law <[email protected]> + Sun Yuechi <[email protected] + + * config/riscv/riscv-bclr-lowest-set-bit.cc + (pass_bclr_lowest_set_bit::execute): Do not handle addiw forms. + +2026-09-13 Dominic P <[email protected]> + + * match.pd (ior_range_test, ior_range_test_1, ior_range_test_0): + New matchers. + (((X + C1) | (C2 - X)) < 0): New simplification. + ((unsigned) ((X + C1) | (C2 - X)) >> (prec - 1)): Likewise. + (ABS_EXPR <X> > C): Likewise. + +2026-09-13 Michiel Derhaeg <[email protected]> + + * config/riscv/bitmanip.md (crc_rev<ANYI1:mode><ANYI:mode>4): + Use the clmul expansion for a word-sized crc on rv32 with Zbc. + * config/riscv/riscv.cc (expand_reversed_crc_using_clmul): Use + clmulr with the unshifted reflected polynomial when the crc is + word-sized. + (riscv_optab_supported_p): Allow crc_rev for a word-sized result + on rv32 with Zbc when optimizing for size. + +2026-09-13 Marek Polacek <[email protected]> + + PR c++/125820 + PR c++/124249 + PR c++/124414 + * expr.cc (count_type_elements) <case LANG_TYPE>: Return 1. + * tree.cc (wide_int_to_tree_1) <case LANG_TYPE>: New. + (cache_integer_cst) <case LANG_TYPE>: New. + +2026-09-13 Jeff Law <[email protected]> + + PR target/127318 + * config/riscv/riscv.cc (riscv_v_adjust_scalable_frame): Attach + REG_CFA_DEF_CFA note to the copy from the stack pointer. + +2026-09-13 Andrea Pinski <[email protected]> + + PR tree-optimization/127358 + * match.pd (two_value cond): Prefer unsigned types. + +2026-09-13 Xi Ruoyao <[email protected]> + + PR target/127153 + * config/loongarch/loongarch.md (both_non_zero): Defer the split + post reload and add constraint to ensure operands[0] and + operands[2] are in different hard registers. + (both_non_zero_subreg): Likewise. + 2026-09-12 Shivam Gupta <[email protected]> * tree-ssa-loop-niter.cc (number_of_iterations_cltz): Reject diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index 15c8f6800f3f..1c5002a42eae 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20260913 +20260914 diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 27ee45968188..86543ad9da12 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,107 @@ +2026-09-13 Iain Sandoe <[email protected]> + + PR c++/126811 + * typeck2.cc (store_init_value): Skip folding CONSTRUCTORs + when handling template decls. + +2026-09-13 Marek Polacek <[email protected]> + + PR c++/125820 + PR c++/124249 + PR c++/124414 + * constexpr.cc (cxx_eval_binary_expression): Check + REFLECTION_TYPE_P instead of REFLECT_EXPR_P. + (check_bit_cast_type): Also detect REFLECTION_TYPE_P. + (cxx_eval_outermost_constant_expr): Delete consteval-only + smuggling detection code. + (potential_constant_expression_1) <case CONVERT_EXPR>: Recurse + with want_rval=false for discarded-value expressions. + * constraint.cc (satisfy_atom): Check require_constant_expression + before calling cxx_constant_value. Set result to error_mark_node + otherwise. + * cp-gimplify.cc (cp_gimplify_expr) <case CALL_EXPR>: Don't call + consteval_only_p and check_out_of_consteval_use. + (wipe_consteval_only_r): Remove. + (cp_fold_immediate_r): Don't detect invalid uses of consteval-only + types here. Set *stmt_p to error_mark_node if the consteval call + was invalid. + <case IF_STMT>: Don't call wipe_consteval_only_r. + (cp_fold_r) <case CONVERT_EXPR>: New, remove discarded-value + expressions. + (cp_genericize_r) <case ADDR_EXPR>: Call check_out_of_consteval_use. + <case BIND_EXPR>: Call rewrite_null_reflection before pruning. + <case REFLECT_EXPR>: Detect invalid uses of consteval-only + expressions. + * cp-objcp-common.cc (cp_common_init_ts): Remove the META_TYPE + marking. + * cp-tree.def (META_TYPE): Remove. + * cp-tree.h (REFLECTION_TYPE_P): Adjust to check if TYPE is + meta_info_type_node. + (rewrite_null_reflection): Declare. + (consteval_only_p): No longer pure. + (check_consteval_only_fn): Remove. + * cvt.cc (convert_to_void): Don't call check_out_of_consteval_use + here. Don't remove discarded-value expressions here. Use a + location when building the CONVERT_EXPR. + * cxx-pretty-print.cc (cxx_pretty_printer::simple_type_specifier) + <case META_TYPE>: Remove. + <case LANG_TYPE>: New. + (cxx_pretty_printer::type_id) <case META_TYPE>: Remove. + <case LANG_TYPE>: New. + * decl.cc (wrapup_namespace_globals): Call + rewrite_null_reflection on each element of statics. + (cp_finish_decl): Don't call check_out_of_consteval_use. Assert + !consteval_only_p. + (grokfndecl): Don't call check_consteval_only_fn. + * decl2.cc (maybe_make_one_only): Don't return early for + consteval_only_p. + (mark_needed): Likewise. + (prune_vars_needing_no_initialization): Don't prune + consteval_only_p variables. + (c_parse_final_cleanups): Call rewrite_null_reflection. + * error.cc (dump_type) <case LANG_TYPE>: Handle + REFLECTION_TYPE_P. + <case META_TYPE>: Remove. + (dump_type_prefix) <case META_TYPE>: Remove. + (dump_type_suffix) <case META_TYPE>: Remove. + (dump_expr): Use REFLECTION_TYPE_P. + * init.cc (perform_member_init): Don't call + check_out_of_consteval_use. + * mangle.cc (write_type) <case META_TYPE>: Remove. + <case LANG_TYPE>: Handle REFLECTION_TYPE_P. + * module.cc (trees_out::type_node) <case META_TYPE>: Remove. + <case LANG_TYPE>: New. + (trees_in::tree_node) <case META_TYPE>: Remove. + <case LANG_TYPE>: New. + * name-lookup.cc (name_lookup::adl_type): Move the + REFLECTION_TYPE_P handling to case LANG_TYPE. + * pt.cc (tsubst) <case META_TYPE>: Remove. + (unify) <case META_TYPE>: Remove. + <case LANG_TYPE>: New. + (instantiate_body): Don't call check_consteval_only_fn. + * reflect.cc (init_reflection): Use LANG_TYPE instead of + META_TYPE for meta_info_type_node. + (null_reflection_p): Also accept the rewritten form. + (rewrite_null_reflection): New. + (consteval_only_p): Rewrite for P4101. + (struct consteval_only_p_walker): Remove. + (consteval_only_value_p): New. + (consteval_only_p_walker::walk): Remove. + (check_out_of_consteval_use_r): Walk INIT_EXPR. Handle EXPR_STMT + specially. + (check_out_of_consteval_use): Remove the special VAR_P handling. + (compare_reflections): Deal with null reflections first. + (check_consteval_only_fn): Remove. + * search.cc (check_final_overrider): Don't check + consteval_only_p. + * semantics.cc (cp_build_bit_cast): Likewise. + * tree.cc (type_has_unique_obj_representations) <case LANG_TYPE>: + New, handle REFLECTION_TYPE_P. + * typeck.cc (cp_build_binary_op): Use REFLECTION_TYPE_P. + (check_return_expr): Don't call check_out_of_consteval_use. + * typeck2.cc (store_init_value): Check that an immediate object + is associated with a constexpr variable. + 2026-09-12 Jakub Jelinek <[email protected]> P3598R0 diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 724d238836ea..3f62aef87ef4 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,44 @@ +2026-09-13 Jerry DeLisle <[email protected]> + + PR fortran/103474 + * simplify.cc (simplify_cobound): Take the array spec from the + base symbol, using its class data for a CLASS coarray, so that a + subobject of a coarray finds the codimensions. Return NULL for a + symbol already flagged as erroneous and in place of the two + gcc_unreachable calls reached on invalid code. + * resolve.cc (gfc_expression_rank): Track the reference carrying + the codimensions and take the corank from it rather than from the + last array reference. Clear it at an allocatable or pointer + component selector, which ends the coarray. + * trans-intrinsic.cc (strip_subobject_of_coarray): New function. + Return a copy of the expression cut back to the reference carrying + the codimensions. + (conv_intrinsic_cobound, trans_this_image, trans_image_index): Use + it, so that the descriptor queried for the cobounds is that of the + coarray and not that of a component of it. + +2026-09-13 Jerry DeLisle <[email protected]> + + PR fortran/126781 + * check.cc (check_team_or_team_number): New function. + (gfc_check_image_index, gfc_check_num_images): Take the actual + argument list and use it. + * intrinsic.cc (add_sym_2red, add_sym_4red): New functions. + (add_functions): Give NUM_IMAGES and IMAGE_INDEX separate TEAM + and TEAM_NUMBER arguments. + (check_specific): Pass the actual argument list to + gfc_check_num_images and gfc_check_image_index. + * intrinsic.h (gfc_check_num_images, gfc_check_image_index, + gfc_simplify_image_index, gfc_simplify_num_images, + gfc_resolve_image_index): Update prototypes. + * intrinsic.texi (IMAGE_INDEX, NUM_IMAGES): Document TEAM and + TEAM_NUMBER as separate arguments. Fix the NUM_IMAGES example. + * iresolve.cc (gfc_resolve_image_index): Add TEAM_NUMBER argument. + * simplify.cc (gfc_simplify_num_images, gfc_simplify_image_index): + Likewise. + * trans-intrinsic.cc (trans_image_index, trans_num_images): Take + the team number from the TEAM_NUMBER argument. + 2026-09-08 Kael Andrew Alonzo Franco <[email protected]> PR middle-end/126622 diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index bb6b739a834c..c9d4c37a53e5 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,137 @@ +2026-09-13 Dominic P <[email protected]> + + * gcc.dg/torture/minmax-swar-1.c: New test. + * gcc.dg/tree-ssa/minmax-swar-1.c: New test. + * gcc.dg/tree-ssa/minmax-swar-2.c: New test. + * gcc.dg/tree-ssa/minmax-swar-3.c: New test. + * gcc.dg/tree-ssa/minmax-swar-4.c: New test. + * gcc.dg/tree-ssa/minmax-swar-5.c: New test. + * gcc.dg/tree-ssa/minmax-swar-6.c: New test. + * gcc.dg/tree-ssa/minmax-swar-7.c: New test. + +2026-09-13 Dominic P <[email protected]> + + * gcc.dg/torture/minmax-negate-1.c: New test. + * gcc.dg/tree-ssa/minmax-negate-1.c: New test. + * gcc.dg/tree-ssa/minmax-negate-2.c: New test. + * gcc.dg/tree-ssa/minmax-negate-3.c: New test. + +2026-09-13 Jeff Law <[email protected]> + Sun Yuechi <[email protected] + + * gcc.target/riscv/bclr-lowest-set-bit-1.c: Update expected output. + * gcc.target/riscv/bclr-lowest-set-bit-2.c: New test. + +2026-09-13 Dominic P <[email protected]> + + * gcc.dg/torture/abs-gt-1.c: New test. + * gcc.dg/torture/ior-range-test-1.c: New test. + * gcc.dg/tree-ssa/ior-range-test-1.c: New test. + * gcc.dg/tree-ssa/ior-range-test-2.c: New test. + * gcc.dg/tree-ssa/ior-range-test-3.c: New test. + +2026-09-13 Michiel Derhaeg <[email protected]> + + * gcc.target/riscv/crc-builtin-zbc32.c: Add reversed crc32 tests. + +2026-09-13 Jerry DeLisle <[email protected]> + + PR fortran/103474 + * gfortran.dg/coarray_52.f90: New test. + * gfortran.dg/coarray/cobounds_subobject_1.f90: New test. + +2026-09-13 Jerry DeLisle <[email protected]> + + PR fortran/126781 + * gfortran.dg/coarray_this_image_3.f90: Update expected errors. + * gfortran.dg/coarray/num_images_team_1.f90: New test. + * gfortran.dg/coarray/num_images_team_2.f90: New test. + * gfortran.dg/coarray_team_kw_1.f90: New test. + * gfortran.dg/coarray_team_std_1.f90: New test. + +2026-09-13 Iain Sandoe <[email protected]> + + PR c++/126811 + * g++.dg/cpp0x/nsdmi-template27.C: New test. + +2026-09-13 Iain Sandoe <[email protected]> + + * gcc.c-torture/compile/pr106433.c: Require avx512 support from the + assembler. + * gcc.c-torture/compile/pr113322-1.c: Likewise. + * gcc.c-torture/compile/pr116348.c: Likewise. + * gcc.c-torture/compile/pr97576.c: Likewise. + +2026-09-13 Marek Polacek <[email protected]> + + PR c++/125820 + PR c++/124249 + PR c++/124414 + * g++.dg/cpp2a/concepts-uneval3.C: Add a dg-error. + * g++.dg/gcov/gcov-24.C: Adjust expected output. + * g++.dg/reflect/bit_cast.C: Remove dg-error. Extend. + * g++.dg/reflect/crash12.C: Remove dg-error. + * g++.dg/reflect/crash18.C: Likewise. + * g++.dg/reflect/diag3.C: Adjust expected output. + * g++.dg/reflect/expr11.C: Likewise. + * g++.dg/reflect/expr12.C: Likewise. + * g++.dg/reflect/init10.C: Likewise. + * g++.dg/reflect/init11.C: Likewise. + * g++.dg/reflect/init12.C: Remove dg-error. + * g++.dg/reflect/init16.C: Adjust expected output. + * g++.dg/reflect/init19.C: Remove dg-error. + * g++.dg/reflect/init4.C: Add an XFAIL. + * g++.dg/reflect/init5.C: Remove dg-error. + * g++.dg/reflect/init6.C: Adjust expected output. + * g++.dg/reflect/init7.C: Likewise. + * g++.dg/reflect/init9.C: Likewise. + * g++.dg/reflect/override1.C: Likewise. + * g++.dg/reflect/p2996-15.C: Remove dg-error. + * g++.dg/reflect/parm3.C: Adjust expected output. + * g++.dg/reflect/parm4.C: Likewise. + * g++.dg/reflect/pr124012.C: Remove dg-error. + * g++.dg/reflect/type12.C: Likewise. + * g++.dg/reflect/type2.C: Adjust expected output. + * g++.dg/reflect/bit_cast2.C: New test. + * g++.dg/reflect/expr19.C: New test. + * g++.dg/reflect/null7.C: New test. + * g++.dg/reflect/type_trait19.C: New test. + * g++.dg/reflect/typeinfo1.C: New test. + * g++.dg/reflect/value1.C: New test. + * g++.dg/reflect/value2.C: New test. + * g++.dg/reflect/value3.C: New test. + * g++.dg/reflect/value4.C: New test. + * g++.dg/reflect/value5.C: New test. + * g++.dg/reflect/value6.C: New test. + * g++.dg/reflect/value7.C: New test. + * g++.dg/reflect/value8.C: New test. + * g++.dg/reflect/vector2.C: New test. + +2026-09-13 Iain Sandoe <[email protected]> + + * gcc.target/i386/avx512bw-pr103750-2.c: Add -mtune=generic. + * gcc.target/i386/avx512bw-pr88465.c: Likewise. + * gcc.target/i386/avx512dq-pr88465.c: Likewise. + * gcc.target/i386/avx512f-pr103750-2.c: Likewise. + * gcc.target/i386/avx512f-pr88465.c: Likewise. + * gcc.target/i386/avx512fp16-pr103750-2.c: Likewise. + * gcc.target/i386/sse2-stv-2.c: Likewise. + * gcc.target/i386/sse2-stv-3.c: Likewise. + * gcc.target/i386/sse2-stv-4.c: Likewise. + * gcc.target/i386/sse2-stv-5.c: Likewise. + * gcc.target/i386/sse2-stv-6.c: Likewise. + * gcc.target/i386/sse2-stv-7.c: Likewise. + +2026-09-13 Andrea Pinski <[email protected]> + + PR tree-optimization/127358 + * gcc.dg/torture/pr127358-1.c: New test. + +2026-09-13 Xi Ruoyao <[email protected]> + + PR target/127153 + * c-c++-common/pr127153.c: New test. + 2026-09-12 Jakub Jelinek <[email protected]> P3598R0 diff --git a/libgm2/ChangeLog b/libgm2/ChangeLog index afd1f65faaf1..38702ea48fd2 100644 --- a/libgm2/ChangeLog +++ b/libgm2/ChangeLog @@ -1,3 +1,38 @@ +2026-09-13 Iain Sandoe <[email protected]> + + * acinclude.m4: Rename configure variables to match the + library. + * configure.ac: Likewise. + * configure.host: Likewise. + * libm2iso/wrapclock.cc: Likewise. + * config.h.in: Regenerate. + * configure: Regenerate. + * Makefile.in: Regenerate. + * libm2cor/Makefile.in: Regenerate. + * libm2iso/Makefile.in: Regenerate. + * libm2log/Makefile.in: Regenerate. + * libm2min/Makefile.in: Regenerate. + * libm2pim/Makefile.in: Regenerate. + +2026-09-13 Iain Sandoe <[email protected]> + + * libm2iso/wrapclock.cc (GetTimeRealtime): Provide a fallback when + clock_gettime is not available. + +2026-09-13 Iain Sandoe <[email protected]> + + * acinclude.m4: Do not gate the use of 'timespec' with + _POSIX_TIMERS > 0. For the auto case, set ac_has_clock_monotonic + and ac_has_clock_realtime for Darwin versions that implement them. + * configure: Regenerate. + +2026-09-13 Iain Sandoe <[email protected]> + + * libm2iso/wrapclock.cc: Use stdlib.h instead of + malloc.h. + * libm2iso/wrapsock.c: Likewise. + * libm2iso/wraptime.cc: Likewise. + 2026-09-11 Gaius Mulley <[email protected]> * Makefile.am (GM2_FOR_TARGET_ESC): Remove. diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 0afc3748883e..1575ba80d395 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,11 @@ +2026-09-13 Marek Polacek <[email protected]> + + PR c++/125820 + PR c++/124249 + PR c++/124414 + * include/std/meta (std::meta::exception::what): Change it to + constexpr. + 2026-09-11 Tomasz KamiĆski <[email protected]> PR libstdc++/125845
