https://gcc.gnu.org/g:d2558e55a6eb3baf204b6f67bd19b74bac967ec4
commit r17-396-gd2558e55a6eb3baf204b6f67bd19b74bac967ec4 Author: GCC Administrator <[email protected]> Date: Fri May 8 00:16:28 2026 +0000 Daily bump. Diff: --- gcc/ChangeLog | 120 ++++++++++++++++++++++++++++++++++++++++++++++++ gcc/DATESTAMP | 2 +- gcc/cp/ChangeLog | 63 +++++++++++++++++++++++++ gcc/fortran/ChangeLog | 28 +++++++++++ gcc/testsuite/ChangeLog | 117 ++++++++++++++++++++++++++++++++++++++++++++++ libstdc++-v3/ChangeLog | 24 ++++++++++ 6 files changed, 353 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 43fbd776157f..d18eb640f1aa 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,123 @@ +2026-05-07 Eikansh Gupta <[email protected]> + + PR tree-optimization/109878 + * match.pd(min/max (a & CST0, a & CST1)): New pattern. + (min/max (a, a & CST)): New pattern. + +2026-05-07 Jeff Law <[email protected]> + + PR tree-optimization/106244 + * config/riscv/riscv.md ((and (ashift X Y) const_int 1)): New splitter. + +2026-05-07 Eikansh Gupta <[email protected]> + + PR tree-optimization/123514 + * match.pd ((x - (x<0)) ^ -(x<0) into ABS_EXPR<x>): New pattern. + +2026-05-07 Richard Sandiford <[email protected]> + + * rtlanal.cc (commutative_operand_precedence): Bump the precedence + of non-commutative binary arithmetic to 3. Give comparisons a + precedence of 2. + +2026-05-07 Richard Sandiford <[email protected]> + + * combine.cc (make_compound_operation_int): Remove PLUS and MINUS + simplifications and PLUS operand order swapping. Delegate those + tasks to simplify_gen_binary instead. + +2026-05-07 Richard Sandiford <[email protected]> + + * alloc-pool.h (object_allocator::allocate): Generalize to handle + non-default constructors. + +2026-05-07 Richard Sandiford <[email protected]> + + * rtl.h (post_ra_split_completed): Declare. + * final.cc (rest_of_clean_state): Set it to false. + * recog.cc (post_ra_split_completed): New variable. + (split_insn): Temporarily set post_ra_split_completed while walking + the new instructions. + (split_all_insns, split_all_insns_noflow): Set post_ra_split_completed + after completing a post-reload split. + * config/rx/rx.md (*cmpsi, *tstsi, *cmpsf, *conditional_branch) + (*sccc, *stcc, *stcc_reg, *abssi2_flags, *addsi3_flags, adc_internal) + (*adc_flags, *andsi3_flags, *negsi2_flags, *one_cmplsi2_flags) + (*iorsi3_flags, *rotlsi3_flags, *rotrsi3_flags, *ashrsi3_flags) + (*lshrsi3_flags, *ashlsi3_flags, *sat, *subsi3_flags, sbb_internal) + (*sbb_flags, *xorsi3_flags, *bmcc): Require post_ra_split_completed + rather than reload_completed. + (comparesi3_<extend_types:code><small_int_modes:mode>, addsi3_flags) + (subsi3_flags): Require post_ra_split_completed. + +2026-05-07 Pengxuan Zheng <[email protected]> + + PR tree-optimization/125214 + * match.pd (min|max(a+|-c,b+|-c)): Add integral type check. + +2026-05-07 Roger Sayle <[email protected]> + + PR middle-end/122871 + * expmed.cc (synth_mult): Handle doubleword left shifts by + BITS_PER_WORD bits or more, for scalar modes. + * optabs.cc (expand_doubleword_mult): Avoid generating multiply + instructions by immediate constants 0, 1 or 2. + +2026-05-07 Avinash Jayakar <[email protected]> + + * config/rs6000/crypto.md (UNSPEC_XXAESENCP): New unspec entry. + (UNSPEC_XXAES128ENCP): Likewise. + (UNSPEC_XXAES192ENCP): Likewise. + (UNSPEC_XXAES256ENCP): Likewise. + (UNSPEC_XXAESDECP): Likewise. + (UNSPEC_XXAES128DECP): Likewise. + (UNSPEC_XXAES192DECP): Likewise. + (UNSPEC_XXAES256DECP): Likewise. + (UNSPEC_XXAESGENLKP): Likewise. + (UNSPEC_XXAES128GENLKP): Likewise. + (UNSPEC_XXAES192GENLKP): Likewise. + (UNSPEC_XXAES256GENLKP): Likewise. + (UNSPEC_XXGFMUL128): Likewise. + (UNSPEC_XXGFMUL128GCM): Likewise. + (UNSPEC_XXGFMUL128XTS): Likewise. + (AESACC_base_code): New iterator for xxaesencp and xxaesdecp base + mnemonics. + (AESACC_code): New iterator for xxaesencp and xxaesdecp extended + mnemonics. + (AESGENLKP_code): New iterator for xxaesgenlkp extended mnemonics. + (AESGF_code): New iterator for xxgfmul128 extended mnemonics. + (AESACC_base_insn): New attribute iterator for xxaesencp and xxaesdecp + base mnemonics. + (AESACC_insn): New attribute iterator for xxaesencp and xxaesdecp + extended mnemonics. + (AESGENLKP_insn): New attribute iterator for xxaesgenlkp extended + mnemonics. + (AESGF_insn): New attribute iterator for xxgfmul128 extended mnemonics. + (<AESACC_base_insn>): New define_insn for xxaesencp and xxaesdecp base + mnemonics. + (<AESACC_insn>): New define_insn for xxaesencp and xxaesdecp extended + mnemonics. + (<AESGENLKP_insn>): New define_insn for xxaesgenlkp extended mnemonics. + (xxaesgenlkp): New define_insn for genlkp base mnemonic. + (<AESGF_insn>): New define_insn for xxgfmul128 extended mnemonics. + (xxgfmul128): New define_insn for xxgfmul128 base mnemonic. + * config/rs6000/rs6000-builtins.def: Added new builtin definitions for + AES acceleration. + * doc/extend.texi: Add new section for AES acceleration builtins + for Future ISA. + +2026-05-07 Pan Li <[email protected]> + + * config/riscv/predicates.md: Add lt to swapped operator. + * config/riscv/riscv-v.cc (get_swapped_cmp_rtx_code): Handle + the rtl as well. + +2026-05-07 Pengxuan Zheng <[email protected]> + + PR tree-optimization/116008 + PR tree-optimization/124560 + * match.pd (min|max(a+|-c,b+|-c)): New patterns. + 2026-05-06 Jason Merrill <[email protected]> * Makefile.in (TAGS): Add diagnostics/ and text-art/. diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index 4700f4f5c2f7..7ad52d8546ed 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20260507 +20260508 diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 64cd76833937..1609970fd11a 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,66 @@ +2026-05-07 Marek Polacek <[email protected]> + + PR c++/124770 + * decl.cc (wrapup_namespace_globals): Give the odr-used + inline variable error only when !DECL_INITIAL. + +2026-05-07 Marek Polacek <[email protected]> + + PR c++/125206 + * tree.cc (strip_typedefs_expr) <case REFLECT_EXPR>: Always + return instead of recursing. + +2026-05-07 Jakub Jelinek <[email protected]> + + PR c++/125007 + * cp-tree.h (maybe_update_function_parm): Declare. + * reflect.cc (maybe_update_function_parm): No longer static. + * error.cc (dump_expr) <case REFLECT_EXPR>: Improve printing + of various reflections. + +2026-05-07 Jakub Jelinek <[email protected]> + + PR c++/125184 + * reflect.cc (check_out_of_consteval_use_r): Don't walk children of + USING_STMTs. + +2026-05-07 Jakub Jelinek <[email protected]> + + PR c++/124347 + * constexpr.cc (cxx_eval_builtin_function_call): For + mce_true strip nops in first argument of BUILT_IN*_OBJECT_SIZE + if the inner expression is ADDR_EXPR. + +2026-05-07 Jakub Jelinek <[email protected]> + + PR c++/125111 + * reflect.cc (extract_ref): Throw instead of trying to build + arrays of functions, methods or arrays with NULL TYPE_DOMAIN. + +2026-05-07 Jakub Jelinek <[email protected]> + + PR c++/124991 + * cp-tree.h (struct lang_type): Document typeinfo_var member. + (get_classtype_typeinfo_var): New inline function. + (CLASSTYPE_TYPEINFO_VAR): Use it. + (set_classtype_typeinfo_var): New inline function. + (SET_CLASSTYPE_TYPEINFO_VAR): Define. + (get_anon_aggr_type_field): New inline function. + (ANON_AGGR_TYPE_FIELD): Use it. + (set_anon_aggr_type_field): New inline function. + (SET_ANON_AGGR_TYPE_FIELD): Define. + * decl.cc (fixup_anonymous_aggr): Use SET_ANON_AGGR_TYPE_FIELD + instead of ANON_AGGR_TYPE_FIELD. + * module.cc (trees_in::read_class_def): Use + SET_CLASSTYPE_TYPEINFO_VAR instead of setting + CLASSTYPE_TYPEINFO_VAR and do it even for ANON_AGGR_TYPE_P + types. Use SET_ANON_AGGR_TYPE_FIELD instead of setting + ANON_AGGR_TYPE_FIELD. + * rtti.cc (get_tinfo_decl_direct): Use SET_CLASSTYPE_TYPEINFO_VAR + instead of setting CLASSTYPE_TYPEINFO_VAR. + * semantics.cc (finish_member_declaration): Use + SET_ANON_AGGR_TYPE_FIELD instead of setting ANON_AGGR_TYPE_FIELD. + 2026-05-06 Patrick Palka <[email protected]> PR c++/125179 diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 4e6b0bd0e8ce..8632d34eb598 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,31 @@ +2026-05-07 Mikael Morin <[email protected]> + + PR fortran/125192 + PR fortran/125198 + * trans-array.cc (gfc_conv_expr_descriptor): Add bounds checking + code to the outermost loop's preliminary block. + +2026-05-07 Mikael Morin <[email protected]> + + * trans-array.cc (trans_array_bound_check): Replace references + to SE->PRE with references to the new argument BLOCK. Remove + argument SE. + (array_bound_check_elemental): Likewise. Update caller. + (conv_array_index_offset): Update caller. + (gfc_conv_expr_descriptor): Update caller. + +2026-05-07 Paul Thomas <[email protected]> + + PR fortran/125172 + * resolve.cc (gfc_fixup_inferred_type_refs): Update kind for + INQUIRY_RE and INQUIRY_IM references on inferred complex + associate-name. + (resolve_variable): For an inferred-type associate-name with + no subobject ref, refresh e->ts from sym->ts. + (resolve_assoc_var): For an inferred-type complex/character + associate-name, refresh sym->ts from the resolved target when + only the kind differs. + 2026-05-02 Tobias Burnus <[email protected]> Julian Brown <[email protected]> diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 3fff73c8423a..f34e272b073a 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,120 @@ +2026-05-07 Eikansh Gupta <[email protected]> + + PR tree-optimization/109878 + * gcc.dg/tree-ssa/pr109878-1.c: New test. + * gcc.dg/tree-ssa/pr109878-2.c: New test. + * gcc.dg/tree-ssa/pr109878-3.c: New test. + * gcc.dg/tree-ssa/pr109878.c: New test. + +2026-05-07 Jeff Law <[email protected]> + + PR tree-optimization/106244 + * gcc.target/riscv/pr106244.c: New test. + +2026-05-07 Eikansh Gupta <[email protected]> + + PR tree-optimization/123514 + * gcc.dg/tree-ssa/pr123514.c: New test. + +2026-05-07 Marek Polacek <[email protected]> + + PR c++/124770 + * g++.dg/reflect/init18.C: New test. + +2026-05-07 Marek Polacek <[email protected]> + + PR c++/125206 + * g++.dg/reflect/bases_of4.C: New test. + +2026-05-07 Mikael Morin <[email protected]> + + PR fortran/125192 + PR fortran/125198 + * gfortran.dg/bounds_check_29.f90: New test. + +2026-05-07 Pengxuan Zheng <[email protected]> + + PR tree-optimization/125214 + * gcc.dg/tree-ssa/pr125214.c: New test. + +2026-05-07 Roger Sayle <[email protected]> + + PR middle-end/122871 + * gcc.target/arm/muldi-1.c: New test case. + +2026-05-07 Jakub Jelinek <[email protected]> + + PR c++/125007 + * g++.dg/reflect/pr125007.C: New test. + +2026-05-07 Jakub Jelinek <[email protected]> + + * gcc.dg/analyzer/divide-by-zero-6.c (init_foo): Use sizeof (*f) + rather than sizeof (f). + +2026-05-07 Jakub Jelinek <[email protected]> + + PR c++/125184 + * g++.dg/reflect/using3.C: New test. + +2026-05-07 Jakub Jelinek <[email protected]> + + PR c++/124347 + * g++.dg/ext/builtin-object-size4.C: New test. + * g++.dg/ext/builtin-object-size5.C: New test. + * g++.dg/ext/builtin-object-size6.C: New test. + +2026-05-07 Avinash Jayakar <[email protected]> + + * gcc.target/powerpc/aes-builtin-1.c: New test. + * gcc.target/powerpc/aes-builtin-2.c: New test. + * gcc.target/powerpc/aes-builtin-3.c: New test. + +2026-05-07 Paul Thomas <[email protected]> + + PR fortran/125172 + * gfortran.dg/associate_79.f90: New test. + +2026-05-07 Jakub Jelinek <[email protected]> + + PR c++/125111 + * g++.dg/reflect/extract12.C: New test. + +2026-05-07 Jakub Jelinek <[email protected]> + + PR c++/124991 + * g++.dg/reflect/anon5.C: New test. + +2026-05-07 Pan Li <[email protected]> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add asm check + for vmsgt.vx. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test + helper macros. + * 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_vmsgt-run-1-i16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmsgt-run-1-i32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmsgt-run-1-i64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vmsgt-run-1-i8.c: New test. + +2026-05-07 Pengxuan Zheng <[email protected]> + + PR tree-optimization/116008 + PR tree-optimization/124560 + * gcc.dg/tree-ssa/pr124560.c: New test. + 2026-05-06 Harald Anlauf <[email protected]> PR libfortran/125095 diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 607f56d44b9e..6f9c49639641 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,27 @@ +2026-05-07 Jonathan Wakely <[email protected]> + + PR libstdc++/78302 + PR libstdc++/71301 + * include/std/tuple [C++20] (tuple(tuple&&)): Add + requires-clause. + * testsuite/20_util/tuple/cons/78302.cc: New test. + +2026-05-07 Tomasz KamiĆski <[email protected]> + + PR libstdc++/105580 + * include/bits/streambuf_iterator.h (istreambuf_iterator::_M_sbuf): + Remove mutable and adjust whitespace. + (istreambuf_iterator::_M_c): Adjust whitespace. + (istreambuf_iterator::operator++()): Clear _M_sbuf if next character + is EoF. + (istreambuf_iterator::operator++(int)): Use _M_sbuf->sgetc() to + load current character, and define in terms of ++*this. + (istreambuf_iterator::_M_get()): Do not clear _M_sbuf in case of EoF. + * include/std/streambuf (streambuf::gptr, streambuf::egptr) + (streambuf::gbump): Remove surrounding pragma disabling -Wnull-dereference. + * testsuite/24_iterators/istreambuf_iterator/2.cc: Test for using + multiple iterators to same rdbuf. + 2026-05-06 Jonathan Wakely <[email protected]> * include/bits/out_ptr.h (out_ptr_t::_Impl::~_Impl): Adjust
