https://gcc.gnu.org/g:b11e85adbfdb02bc7743098d358a5ea362648ca1
commit r15-6377-gb11e85adbfdb02bc7743098d358a5ea362648ca1 Author: GCC Administrator <gccadmin@gcc.gnu.org> Date: Fri Dec 20 00:19:11 2024 +0000 Daily bump. Diff: --- gcc/ChangeLog | 62 ++++++++++++++++++++++++++++++++++ gcc/DATESTAMP | 2 +- gcc/cp/ChangeLog | 25 ++++++++++++++ gcc/testsuite/ChangeLog | 70 ++++++++++++++++++++++++++++++++++++++ libgomp/ChangeLog | 5 +++ libstdc++-v3/ChangeLog | 89 +++++++++++++++++++++++++++++++++++++++++++++++++ 6 files changed, 252 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index aa501c13f568..96d98672a453 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,65 @@ +2024-12-19 Patrick Palka <ppa...@redhat.com> + + PR c++/118069 + * hwint.h (add_sat_hwi): New function. + (mul_sat_hwi): Likewise. + +2024-12-19 Tobias Burnus <tbur...@baylibre.com> + + * omp-general.cc (vendor_properties): Add "nec". + +2024-12-19 Andrew Carlotti <andrew.carlo...@arm.com> + + * tree-assume.cc: Fix comment typos. + +2024-12-19 Pan Li <pan2...@intel.com> + + PR target/118075 + * config/riscv/vector.md: Add the (mem:BLK (scratch)) as the + lhs of strided store define insn. + +2024-12-19 Alexandre Oliva <ol...@adacore.com> + + * gimple-fold.cc (decode_field_reference): Add psignbit + parameter. Set it if the mask references sign-extending + bits. + (fold_truth_andor_for_ifcombine): Adjust calls with new + variables. Swap them along with other r?_* variables. Handle + extended sign bit compares with zero. + * tree-ssa-ifcombine.cc (ifcombine_ifandif): If bits_test + fails in a way that doesn't prevent other ifcombine strategies + from passing, give them a try. + +2024-12-19 Alexandre Oliva <ol...@adacore.com> + + * gimple-fold.cc (decode_field_reference): Accept incoming + mask. + (fold_truth_andor_for_ifcombine): Handle some compares with + powers of two, minus 1 or 0, like masked compares with zero. + +2024-12-19 Alexandre Oliva <ol...@adacore.com> + + PR tree-optimization/117915 + * tree-ssa-ifcombine.cc (ifcombine_mark_ssa_name): Move + preconditions from... + (ifcombine_mark_ssa_name_walk): ... here. + +2024-12-19 Alexandre Oliva <ol...@adacore.com> + + PR tree-optimization/118046 + * gimple-fold.cc (decode_field_reference): Don't follow more + than one conversion. + +2024-12-19 Alexandre Oliva <ol...@adacore.com> + + * gimple-fold.cc (gimple_convert_def_p): Reject load stmts + unless requested. + (decode_field_reference): Accept a converting load at the last + conversion matcher, subsuming the load identification. + (fold_truth_andor_for_ifcombine): Refuse to merge operands + when only one of them has an associated load stmt. Swap + operands of one of the compares if that helps them match. + 2024-12-18 Eric Botcazou <ebotca...@adacore.com> PR target/118096 diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index fcb1ceaa6b99..938c9799fa11 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20241219 +20241220 diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 7cefff38ff08..7f241bb24c13 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,28 @@ +2024-12-19 Patrick Palka <ppa...@redhat.com> + + PR c++/118069 + * constraint.cc (atom_hasher): Define here, instead of ... + * cp-tree.h (atom_hasher): ... here. + * logic.cc (clause::m_set): Use pointer instead of structural + hashing. + +2024-12-19 Patrick Palka <ppa...@redhat.com> + + PR c++/118069 + * logic.cc (dnf_size_r): Use HOST_WIDE_INT instead of int, and + handle overflow gracefully via add_sat_hwi and mul_sat_hwi. + (cnf_size_r): Likewise. + (dnf_size): Use HOST_WIDE_INT instead of int. + (cnf_size): Likewise. + +2024-12-19 Marek Polacek <pola...@redhat.com> + Jason Merrill <ja...@redhat.com> + + PR c++/117980 + * constexpr.cc (cxx_eval_outermost_constant_expr): If there's + an object to initialize, take its type. Don't set the type + in the constexpr dtor case. + 2024-12-18 Jakub Jelinek <ja...@redhat.com> * parser.cc (cp_lexer_new_main): Attempt to optimize large sequences diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 8e6ece031741..d04940194bf7 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,73 @@ +2024-12-19 Marek Polacek <pola...@redhat.com> + Jason Merrill <ja...@redhat.com> + + PR c++/117980 + * g++.dg/cpp0x/constexpr-prvalue2.C: New test. + * g++.dg/cpp0x/constexpr-prvalue3.C: New test. + +2024-12-19 Torbjörn SVENSSON <torbjorn.svens...@foss.st.com> + + * gcc.target/arm/memset-inline-4.c: Only check assembler output. + * gcc.target/arm/memset-inline-5.c: Likewise. + * gcc.target/arm/memset-inline-6.c: Likewise. + * gcc.target/arm/memset-inline-8.c: Likewise. + * gcc.target/arm/memset-inline-9.c: Likewise. + * gcc.target/arm/memset-inline-4-exe.c: New test. + * gcc.target/arm/memset-inline-5-exe.c: Likewise. + * gcc.target/arm/memset-inline-6-exe.c: Likewise. + * gcc.target/arm/memset-inline-8-exe.c: Likewise. + * gcc.target/arm/memset-inline-9-exe.c: Likewise. + +2024-12-19 Torbjörn SVENSSON <torbjorn.svens...@foss.st.com> + + * g++.dg/abi/arm_rtti1.C: Check for expected symbol in C++26. + +2024-12-19 Jakub Jelinek <ja...@redhat.com> + + * c-c++-common/toplevel-asm-1.c: Use %cc3 %cc4 instead of %c3 %c4 + on riscv. + +2024-12-19 Pan Li <pan2...@intel.com> + + * gcc.target/riscv/rvv/autovec/strided/strided_ld_st-1-f64.c: Adjust + the vsse check times based on optimization option. + * gcc.target/riscv/rvv/autovec/strided/strided_ld_st-1-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/strided/strided_ld_st-1-u64.c: Ditto. + +2024-12-19 Pan Li <pan2...@intel.com> + + PR target/118075 + * gcc.target/riscv/rvv/base/pr118075-run-1.c: New test. + +2024-12-19 Alexandre Oliva <ol...@adacore.com> + + * gcc.dg/field-merge-16.c: New. + +2024-12-19 Alexandre Oliva <ol...@adacore.com> + + * gcc.dg/field-merge-15.c: New. + +2024-12-19 Alexandre Oliva <ol...@adacore.com> + + PR tree-optimization/117915 + * gcc.dg/pr117915.c: New. + +2024-12-19 Alexandre Oliva <ol...@adacore.com> + + PR testsuite/118025 + * gcc.dg/field-merge-9.c (q): Drop overcorrection for + big-endian. + * gcc.dg/field-merge-12.c: Include stdbool.h. + +2024-12-19 Alexandre Oliva <ol...@adacore.com> + + PR tree-optimization/118046 + * gcc.dg/field-merge-14.c: New. + +2024-12-19 Alexandre Oliva <ol...@adacore.com> + + * gcc.dg/field-merge-13.c: New. + 2024-12-18 Jakub Jelinek <ja...@redhat.com> PR tree-optimization/118081 diff --git a/libgomp/ChangeLog b/libgomp/ChangeLog index cf9ed57ce800..21c4eeb34ea0 100644 --- a/libgomp/ChangeLog +++ b/libgomp/ChangeLog @@ -1,3 +1,8 @@ +2024-12-19 Tobias Burnus <tbur...@baylibre.com> + + * libgomp.texi (OpenMP Context Selectors): Document that 'kind' also + accepts 'cpu'/'any' on host and 'any'/'nohost' on 'nohost' devices. + 2024-12-10 Tobias Burnus <tbur...@baylibre.com> * plugin/plugin-gcn.c (GOMP_OFFLOAD_dev2dev, GOMP_OFFLOAD_async_run): diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index c0c3f12fdf1d..335f4bc9f61b 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,92 @@ +2024-12-19 François Dumont <frs.dum...@gmail.com> + + PR libstdc++/57272 + * include/bits/stl_tree.h + [_GLIBCXX_USE_ALLOC_PTR_FOR_RB_TREE]: New macro to control usage of the + code required to support fancy allocator pointer type. + (_Rb_tree_node_base::_Const_Base_ptr): Remove. + (_Rb_tree_node_base::_S_minimum, _Rb_tree_node_base::_S_maximum): Remove + overloads for _Const_Base_ptr. + (_Rb_tree_node_base::_M_base_ptr()): New. + (_Rb_tree_node::_Link_type): Remove. + (_Rb_tree_node::_M_node_ptr()): New. + (__rb_tree::_Node_base<>): New. + (__rb_tree::_Header<>): New. + (__rb_tree::_Node<>): New. + (_Rb_tree_increment(const _Rb_tree_node_base*)): Remove declaration. + (_Rb_tree_decrement(const _Rb_tree_node_base*)): Remove declaration. + (_Rb_tree_iterator<>::_Self): Remove. + (_Rb_tree_iterator<>::_Link_type): Rename into... + (_Rb_tree_iterator<>::_Node_ptr): ...this. + (_Rb_tree_const_iterator<>::_Link_type): Rename into... + (_Rb_tree_const_iterator<>::_Node_ptr): ...this. + (_Rb_tree_const_iterator<>::_M_const_cast): Remove. + (_Rb_tree_const_iterator<>::_M_node): Change type into _Base_ptr. + (__rb_tree::_Iterator<>): New. + (__rb_tree::_Node_traits<>): New. + (_Rb_tree<>::_Node_base, _Rb_tree::_Node): New. + (_Rb_tree<>::_Link_type): Rename into... + (_Rb_tree<>::_Node_ptr): ...this. + (_Rb_tree<>::_Const_Base_ptr, _Rb_tree<>::_Const_Node_ptr): Remove. + (_Rb_tree<>::_M_mbegin): Remove. + (_Rb_tree<>::_M_begin_node()): New. + (_S_key(const _Node&)): New. + (_S_key(_Base_ptr)): New, call latter. + (_S_key(_Node_ptr)): Likewise. + (_Rb_tree<>::_S_left(_Const_Base_ptr)): Remove. + (_Rb_tree<>::_S_right(_Const_Base_ptr)): Remove. + (_Rb_tree<>::_S_maximum(_Const_Base_ptr)): Remove. + (_Rb_tree<>::_S_minimum(_Const_Base_ptr)): Remove. + * testsuite/23_containers/map/allocator/ext_ptr.cc: New test case. + * testsuite/23_containers/multimap/allocator/ext_ptr.cc: New test case. + * testsuite/23_containers/multiset/allocator/ext_ptr.cc: New test case. + * testsuite/23_containers/set/allocator/ext_ptr.cc: New test case. + * testsuite/23_containers/set/requirements/explicit_instantiation/alloc_ptr.cc: + New test case. + * testsuite/23_containers/set/requirements/explicit_instantiation/alloc_ptr_ignored.cc: + New test case. + +2024-12-19 Patrick Palka <ppa...@redhat.com> + Jonathan Wakely <jwak...@redhat.com> + + * include/Makefile.am: Add new header <flat_set>. + * include/Makefile.in: Regenerate. + * include/bits/version.def (__cpp_flat_set): Define. + * include/bits/version.h: Regenerate + * include/precompiled/stdc++.h: Include <flat_set>. + * include/std/flat_set: New file. + * src/c++23/std.cc.in: Export <flat_set>. + * testsuite/23_containers/flat_multiset/1.cc: New test. + * testsuite/23_containers/flat_set/1.cc: New test. + +2024-12-19 Patrick Palka <ppa...@redhat.com> + Jonathan Wakely <jwak...@redhat.com> + + * include/Makefile.am: Add new header <flat_map>. + * include/Makefile.in: Regenerate. + * include/bits/alloc_traits.h (__not_allocator_like): New concept. + * include/bits/stl_function.h (__transparent_comparator): Likewise. + * include/bits/stl_iterator_base_types.h (__has_input_iter_cat): + Likewise. + * include/bits/uses_allocator.h (__allocator_for): Likewise. + * include/bits/utility.h (sorted_unique_t): Define for C++23. + (sorted_unique): Likewise. + (sorted_equivalent_t): Likewise. + (sorted_equivalent): Likewise. + * include/bits/version.def (flat_map): Define. + * include/bits/version.h: Regenerate. + * include/precompiled/stdc++.h: Include <flat_map>. + * include/std/flat_map: New file. + * src/c++23/std.cc.in: Export <flat_map>. + * testsuite/23_containers/flat_map/1.cc: New test. + * testsuite/23_containers/flat_multimap/1.cc: New test. + +2024-12-19 Patrick Palka <ppa...@redhat.com> + + * include/bits/ranges_base.h (__detail::__range_key_type): + Define as per P1206R7. + (__detail::__range_mapped_type): Likewise. + 2024-12-18 François Dumont <frs.dum...@gmail.com> * include/bits/move.h (std::addressof): Call __builtin_addressof.