diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 0ee5f8b67cb54d6aef5724781ad598dc4996a665..30312ec1299d27ac71f6a7ce5d16f4e6551525c0 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,142 @@ +2024-07-25 Carl Love <cel@linux.ibm.com> + + * config/rs6000/rs6000-builtin.cc (get_element_number, + altivec_expand_vec_set_builtin): Remove functions. + (rs6000_expand_builtin): Remove the if statement to call + altivec_expand_vec_set_builtin. + * config/rs6000/rs6000-builtins.def (__builtin_vsx_set_1ti, + __builtin_vsx_set_2df, __builtin_vsx_set_2di): Remove the + built-in definitions. + * config/rs6000/rs6000-gen-builtins.cc (struct attrinfo): + Remove the isset variable from the structure. + (parse_bif_attrs): Remove the uses of the isset variable. + +2024-07-25 Carl Love <cel@linux.ibm.com> + + * config/rs6000/rs6000-builtins.def (__builtin_vec_set_v1ti, + __builtin_vec_set_v2df, __builtin_vec_set_v2di): Remove built-in + definitions. + * config/rs6000/rs6000-c.cc (resolve_vec_insert): Remove the + handling for constant vec_insert position with + VECTOR_UNIT_VSX_P V1TImode, V2DFmode and V2DImode modes. + +2024-07-25 Carl Love <cel@linux.ibm.com> + + * config/rs6000/rs6000-builtins.def (__builtin_vsx_xvcmpeqsp, + __builtin_vsx_xvcmpgesp, __builtin_vsx_xvcmpgtsp): Remove + definitions. + +2024-07-25 Jeff Law <jlaw@ventanamicro.com> + + PR rtl-optimization/116039 + * ext-dce.cc (ext_dce_process_uses): Add some comments about concerns + with current code. Mark additional bit groups as live when we have + an extension of a suitably promoted subreg. + +2024-07-25 Christoph Müllner <christoph.muellner@vrull.eu> + + PR target/116033 + * config/riscv/thead.cc (th_memidx_classify_address_modify): + Fix mode test. + +2024-07-25 Richard Biener <rguenther@suse.de> + + PR tree-optimization/116083 + * tree-vect-slp.cc (vect_build_slp_tree): Do not allocate + a discovery fail node when we reached the discovery limit. + (vect_build_slp_instance): Terminate early when the + discovery limit is reached. + +2024-07-25 Richard Sandiford <richard.sandiford@arm.com> + + * doc/rtl.texi: Document the need to define INCLUDE_ARRAY before + including rtl-ssa.h. + * rtl-ssa.h: Likewise (in comment). + * config/aarch64/aarch64-cc-fusion.cc: Add INCLUDE_ARRAY. + * config/aarch64/aarch64-early-ra.cc: Likewise. + * config/riscv/riscv-avlprop.cc: Likewise. + * config/riscv/riscv-vsetvl.cc: Likewise. + * fwprop.cc: Likewise. + * late-combine.cc: Likewise. + * pair-fusion.cc: Likewise. + * rtl-ssa/accesses.cc: Likewise. + * rtl-ssa/blocks.cc: Likewise. + * rtl-ssa/changes.cc: Likewise. + * rtl-ssa/functions.cc: Likewise. + * rtl-ssa/insns.cc: Likewise. + * rtl-ssa/movement.cc: Likewise. + +2024-07-25 Sam James <sam@gentoo.org> + + PR middle-end/114855 + * doc/invoke.texi (Optimize options): Mention machine-generated + code for -O1. + +2024-07-25 Richard Biener <rguenther@suse.de> + + PR tree-optimization/116081 + * tree-vect-loop.cc (get_initial_defs_for_reduction): + Use operand_equal_p for comparing the element with the + neutral op. + +2024-07-25 Richard Biener <rguenther@suse.de> + + PR tree-optimization/116079 + * tree-ssa-loop-im.cc (hoist_memory_references): Clear + VDEF of elided clobbers. + +2024-07-25 Richard Biener <rguenther@suse.de> + + PR tree-optimization/116081 + * tree-vect-stmts.cc (vect_get_vector_types_for_stmt): + Properly compare types. + +2024-07-25 Robin Dapp <rdapp@ventanamicro.com> + + PR target/116036 + * config/riscv/riscv.cc (riscv_override_options_internal): Error + with TARGET_VECTOR && !TARGET_MUL. + +2024-07-25 Juzhe-Zhong <juzhe.zhong@rivai.ai> + + * config/riscv/riscv.cc (riscv_legitimize_move): Fix poly_int dest generation. + +2024-07-25 Richard Sandiford <richard.sandiford@arm.com> + + PR rtl-optimization/116044 + * rtl-ssa/functions.h (function_info::split_clobber_group): Return + an array of two clobber_groups. + * rtl-ssa/accesses.cc (function_info::split_clobber_group): Return + the new clobber groups. Don't modify the splay tree here. + (function_info::add_def): Update call accordingly. Generalize + the splay tree insertion code so that the new definition can be + inserted as a child of any existing node, not just the root. + Fix the insertion used after calling split_clobber_group. + +2024-07-25 Jennifer Schmitz <jschmitz@nvidia.com> + + * config/aarch64/aarch64-sve-builtins.cc + (gimple_folder::redirect_call): Update return type. + * config/aarch64/aarch64-sve-builtins.h: Likewise. + * config/aarch64/aarch64-sve-builtins-sve2.cc (svqshl_impl::fold): + Remove cast to gcall. + (svrshl_impl::fold): Likewise. + +2024-07-25 Richard Biener <rguenther@suse.de> + + * tree-ssa-structalias.cc (constraint_equal): Take const + reference to constraints. + (constraint_vec_find): Similar. + (solve_graph): Keep constraint vector sorted and verify + sorting with checking. + +2024-07-25 Lingling Kong <lingling.kong@intel.com> + + PR target/115749 + * config/i386/x86-tune-costs.h (struct processor_costs): + Adjust rtx_cost of imulq and imulw for COST_N_INSNS (4) + to COST_N_INSNS (3). + 2024-07-24 David Malcolm <dmalcolm@redhat.com> * diagnostic-format-sarif.cc (sarif_builder::make_locations_arr): diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index 503038db09ce10b8a15fad6a2168a5c6446b0a7f..c8f8a5f000ae48dd0b235d3e63027c1a967dcec7 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20240725 +20240726 diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 493bd527b95dc0906034833108f02eee7db068e7..c647803124d1b10b0efcfb699aa77e0780a3e9ba 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,59 @@ +2024-07-25 Jason Merrill <jason@redhat.com> + + PR c++/115403 + PR c++/109753 + * decl.cc (start_preparsed_function): Only call decl_attributes for + artificial functions. + +2024-07-25 Patrick Palka <ppalka@redhat.com> + + PR c++/115897 + * cp-tree.h (dependent_opaque_alias_p): Declare. + * pt.cc (push_template_decl): Manually mark a dependent opaque + alias or dependent alias template specialization as dependent, + and use structural equality for them. + (dependent_opaque_alias_p): Define. + (alias_template_specialization_p): Don't look through an + opaque alias. + (complex_alias_template_p): Use dependent_opaque_alias_p instead of + any_dependent_template_arguments_p directly. + (dependent_alias_template_spec_p): Don't look through an + opaque alias. + (get_underlying_template): Use dependent_opaque_alias_p instead of + any_dependent_template_arguments_p. + (instantiate_alias_template): Mention same logic in + push_template_decl. + (dependent_type_p_r): Remove dependent_alias_template_spec_p check. + (any_template_arguments_need_structural_equality_p): Return true + for a dependent opaque alias. + (alias_ctad_tweaks): Use template_args_equal instead of same_type_p + followed by dependent_alias_template_spec_p. + * tree.cc (strip_typedefs): Don't strip an opaque alias. + * typeck.cc (structural_comptypes): Compare declaration attributes + for an opaque alias. + +2024-07-25 Patrick Palka <ppalka@redhat.com> + + PR c++/115897 + * tree.cc (strip_typedefs): Move up the typedef recursion case. + Never strip a dependent alias template-id that has dependent + attributes. + +2024-07-25 Arsen Arsenović <arsen@aarsen.me> + + PR c++/110171 + * coroutines.cc (co_await_get_resume_call): New function. + Returns the await_resume expression of a given co_await. + * cp-tree.h (co_await_get_resume_call): New function. + * cvt.cc (convert_to_void): Handle CO_AWAIT_EXPRs and call + maybe_warn_nodiscard on their resume exprs. + +2024-07-25 Arsen Arsenović <arsen@aarsen.me> + + PR c++/111728 + * coroutines.cc (rewrite_param_uses): Skip unevaluated + subexpressions. + 2024-07-24 Jason Merrill <jason@redhat.com> PR c++/116071 diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 163fbec92732ccda369ce3336780140c969f0598..ee342d2089866163e560a2336eb838516b89f43d 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,124 @@ +2024-07-25 Jason Merrill <jason@redhat.com> + + PR c++/115403 + PR c++/109753 + * g++.dg/ext/pragma-target1.C: New test. + +2024-07-25 Patrick Palka <ppalka@redhat.com> + + PR c++/115897 + * g++.dg/cpp0x/alias-decl-79.C: Remove xfails. + * g++.dg/cpp0x/alias-decl-79a.C: New test. + +2024-07-25 Patrick Palka <ppalka@redhat.com> + + PR c++/115897 + * g++.dg/cpp0x/alias-decl-78.C: New test. + * g++.dg/cpp0x/alias-decl-79.C: New test. + * g++.dg/cpp0x/alias-decl-pr92206-1a.C: New test. + +2024-07-25 Carl Love <cel@linux.ibm.com> + + * gcc.target/powerpc/vsx-builtin-3.c: Remove test cases for the + __builtin_vsx_set_2df built-in. + +2024-07-25 Carl Love <cel@linux.ibm.com> + + * gcc.target/powerpc/vsx-builtin-3.c (do_cmp): Replace + __builtin_vsx_xvcmp{eq,gt,ge}{sp,dp} by vec_cmp{eq,gt,ge} + respectively and add explicit casts to vector {float,double}. + Add more testing code assigning result to vector boolean types. + +2024-07-25 Jakub Jelinek <jakub@redhat.com> + + PR c++/110343 + * c-c++-common/raw-string-1.c: Use { c || c++11 } effective target, + remove c++ specific dg-options. + * c-c++-common/raw-string-2.c: Likewise. + * c-c++-common/raw-string-4.c: Likewise. + * c-c++-common/raw-string-5.c: Likewise. Expect some diagnostics + only for non-c++26, for c++26 expect different. + * c-c++-common/raw-string-6.c: Use { c || c++11 } effective target, + remove c++ specific dg-options. + * c-c++-common/raw-string-11.c: Likewise. + * c-c++-common/raw-string-13.c: Likewise. + * c-c++-common/raw-string-14.c: Likewise. + * c-c++-common/raw-string-15.c: Use { c || c++11 } effective target, + change c++ specific dg-options to just -Wtrigraphs. + * c-c++-common/raw-string-16.c: Likewise. + * c-c++-common/raw-string-17.c: Use { c || c++11 } effective target, + remove c++ specific dg-options. + * c-c++-common/raw-string-18.c: Use { c || c++11 } effective target, + remove -std=c++11 from c++ specific dg-options. + * c-c++-common/raw-string-19.c: Likewise. + * g++.dg/cpp26/raw-string1.C: New test. + * g++.dg/cpp26/raw-string2.C: New test. + +2024-07-25 Jeff Law <jlaw@ventanamicro.com> + + PR rtl-optimization/116039 + * gcc.dg/torture/pr116039.c: New test. + +2024-07-25 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR libfortran/105361 + * gfortran.dg/pr105361.f90: New test. + +2024-07-25 Christoph Müllner <christoph.muellner@vrull.eu> + + PR target/116033 + * gcc.target/riscv/pr116033.c: New test. + +2024-07-25 Arsen Arsenović <arsen@aarsen.me> + + PR c++/110171 + * g++.dg/coroutines/pr110171-1.C: New test. + * g++.dg/coroutines/pr110171.C: New test. + +2024-07-25 Arsen Arsenović <arsen@aarsen.me> + + PR c++/111728 + * g++.dg/coroutines/pr111728.C: New test. + +2024-07-25 Jeff Law <jlaw@ventanamicro.com> + + * gcc.dg/torture/pr116037.c: Fix target selector. + +2024-07-25 Richard Biener <rguenther@suse.de> + + PR tree-optimization/116079 + * gcc.dg/torture/pr116079.c: New testcase. + +2024-07-25 Robin Dapp <rdapp@ventanamicro.com> + + * gcc.target/riscv/arch-31.c: Add m to arch string and expect it. + * gcc.target/riscv/arch-32.c: Ditto. + * gcc.target/riscv/arch-37.c: Ditto. + * gcc.target/riscv/arch-38.c: Ditto. + * gcc.target/riscv/predef-14.c: Ditto. + * gcc.target/riscv/predef-15.c: Ditto. + * gcc.target/riscv/predef-16.c: Ditto. + * gcc.target/riscv/predef-26.c: Ditto. + * gcc.target/riscv/predef-27.c: Ditto. + * gcc.target/riscv/predef-32.c: Ditto. + * gcc.target/riscv/predef-33.c: Ditto. + * gcc.target/riscv/predef-36.c: Ditto. + * gcc.target/riscv/predef-37.c: Ditto. + * gcc.target/riscv/rvv/autovec/pr111486.c: Add m to arch string. + * gcc.target/riscv/compare-debug-1.c: Ditto. + * gcc.target/riscv/compare-debug-2.c: Ditto. + * gcc.target/riscv/rvv/base/pr116036.c: New test. + +2024-07-25 Juzhe-Zhong <juzhe.zhong@rivai.ai> + + * gcc.target/riscv/rvv/autovec/poly_licm-1.c: New test. + * gcc.target/riscv/rvv/autovec/poly_licm-2.c: New test. + * gcc.target/riscv/rvv/autovec/poly_licm-3.c: New test. + +2024-07-25 Lingling Kong <lingling.kong@intel.com> + + * gcc.target/i386/pr115749.c: New test. + 2024-07-24 David Malcolm <dmalcolm@redhat.com> * c-c++-common/diagnostic-format-sarif-file-Wbidi-chars.c: Verify diff --git a/libcpp/ChangeLog b/libcpp/ChangeLog index 840114198454f2f525a3f8f5a765cef4c1571a44..ed80d698e9b26523bbe286c1eb94f68cded4b708 100644 --- a/libcpp/ChangeLog +++ b/libcpp/ChangeLog @@ -1,3 +1,10 @@ +2024-07-25 Jakub Jelinek <jakub@redhat.com> + + PR c++/110343 + * lex.cc: C++26 P2558R2 - Add @, $, and ` to the basic character set. + (lex_raw_string): For C++26 allow $@` characters in prefix. + * charset.cc (_cpp_valid_ucn): For C++26 reject \u0024 in identifiers. + 2024-07-24 David Malcolm <dmalcolm@redhat.com> * include/rich-location.h diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog index a38544f59dc57f7e8fd8107ae0beba2a06173146..f34f359c995fc84122f5aa84c5fd63e0b1648c91 100644 --- a/libgfortran/ChangeLog +++ b/libgfortran/ChangeLog @@ -1,3 +1,10 @@ +2024-07-25 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR libfortran/105361 + * io/list_read.c (finish_list_read): Add a condition check for + a user defined derived type IO operation to avoid calling the + EOF error. + 2024-07-11 Andre Vehreschild <vehre@gcc.gnu.org> PR fortran/96992 diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 150759aa1d882cf8486f768c471019a0e30025a0..74bda47fa0e3f5fb48f71ef5bd8d6fb1e4fbc6f8 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,103 @@ +2024-07-25 Jonathan Wakely <jwakely@redhat.com> + + * include/std/expected (expected::value): Add assertions for LWG + 3843 requirements. + (expected<cv void, E>::value): Add assertions for LWG 3940 + requirements. + +2024-07-25 Jonathan Wakely <jwakely@redhat.com> + + * include/std/format (basic_format_args): Remove default + constructor, as per LWG 4106. + * testsuite/std/format/arguments/args.cc: Check it isn't default + constructible. + +2024-07-25 Jonathan Wakely <jwakely@redhat.com> + + * include/bits/utility.h (_Swallow_assign): Make assignment + constexpr for C++11 as well, and add noexcept. + * include/std/tuple (_Swallow_assign, ignore): Move to + bits/utility.h. + * testsuite/20_util/headers/utility/ignore.cc: New test. + +2024-07-25 Jonathan Wakely <jwakely@redhat.com> + + * include/std/optional: Reorder parameters in comparison + operators as per LWG 2945. + +2024-07-25 Patrick Palka <ppalka@redhat.com> + + PR libstdc++/116038 + * include/std/functional (_Bind_front::operator()): Use __like_t + instead of std::forward when forwarding __self. + (_Bind_back::operator()): Likewise. + * include/std/ranges (_Partial::operator()): Likewise. + (_Pipe::operator()): Likewise. + * testsuite/20_util/function_objects/bind_back/116038.cc: New test. + * testsuite/20_util/function_objects/bind_front/116038.cc: New test. + * testsuite/std/ranges/adaptors/116038.cc: New test. + +2024-07-25 Jonathan Wakely <jwakely@redhat.com> + + * include/std/expected (bad_expected_access<void>): Add noexcept + to special member functions, as per LWG 4031. + * testsuite/20_util/expected/bad.cc: Check for nothrow copy and + move members. + +2024-07-25 Jonathan Wakely <jwakely@redhat.com> + + * include/std/optional (optional): Use C++20 features to + simplify overload sets for constructors and assignment + operators. + +2024-07-25 Jonathan Wakely <jwakely@redhat.com> + + * include/std/optional (optional): Constrain constructors to + prevent problematic bool conversions, as per LWG 3836. + * testsuite/20_util/optional/cons/lwg3836.cc: New test. + +2024-07-25 Jonathan Wakely <jwakely@redhat.com> + + * include/std/expected (expected): Constrain constructors to + prevent problematic bool conversions, as per LWG 3836. + * testsuite/20_util/expected/lwg3836.cc: New test. + +2024-07-25 Jonathan Wakely <jwakely@redhat.com> + + * include/std/optional (_Optional_payload_base::_Storage) + [C++20]: Define constrained non-trivial destructor. + (_Optional_payload_base::_Storage<U, false>) [C++20]: Do not + define partial specialization when primary template has + constrained destructor. + (_Optional_base) [C++20]: Define constrained trivial copy and + move cons and move constructors. Define payload accessors here + instead of inheriting them from _Optional_base_impl. + (_Optional_base_impl, _Optional_base<T, false, true>) + (_Optional_base<T, true, false>, _Optional_base<T, true, true>) + [C++20]: Do not define. + +2024-07-25 Jonathan Wakely <jwakely@redhat.com> + + * include/std/optional (optional): Add using-declaraction for + _Base::_M_get and declare optional<U> as friend. + (optional(const optional<U>&)): Use + _M_get instead of operator*. + (optional(optional<U>&&)): Likewise. + (operator=(const optional<U>&)): Likewise. + (operator=(optional<U>&&)): Likewise. + (and_then, tansform): Likewise. + +2024-07-25 Jonathan Wakely <jwakely@redhat.com> + + * include/std/optional (_Optional_base_impl::_M_get()): Move + assertions to ... + (optional::operator->, optional::operator*): ... here. + +2024-07-25 Andrew Pinski <quic_apinski@quicinc.com> + + * testsuite/lib/libstdc++.exp (v3_target_compile): Call + string trim on v3_target_compile before calling split. + 2024-07-24 Jonathan Wakely <jwakely@redhat.com> PR libstdc++/116070