diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 3eef06a517b..9b885348fde 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,142 @@ +2024-04-30 Andrew MacLeod + + * gimple-range-op.cc (gimple_range_op_handler::calc_op1): Don't + assert that here are less than 3 operands. + (gimple_range_op_handler::maybe_builtin_call): Simply return if + there is no type for the function call. + +2024-04-30 Andrew MacLeod + + * gimple-range.cc (gimple_ranger::range_on_entry): Adjust for new + API and support non-SSA expressions. + (gimple_ranger::range_on_exit): Ditto. + * gimple-range.h (range_on_entry, range_on_exit): Adjust API. + * value-query.cc (range_query::range_on_entry): New. + (range_query::range_on_exit): New. + (range_query::value_on_entry): New. + (range_query::value_on_exit): New. + (range_query::invoke_range_of_expr): New. + (range_query::get_tree_range): Allow stmt, on_entry or on_exit + range queries. + SSA_NAMES should invoke range_of_expr if possible. + * value-query.h (class range_query): Adjust prototypes. + +2024-04-30 Andrew MacLeod + + * gimple-range.cc (gimple_ranger::range_of_expr): Call range_of_stmt + when there is no context stmt. + +2024-04-30 Andrew MacLeod + + * gimple-range-cache.cc (ranger_cache::get_global_range): Do not + pre-evaluate PHI nodes from the cache. + (ranger_cache::fill_block_cache): Make re-entrant. + +2024-04-30 Andrew MacLeod + + * value-query.cc (get_range_global): Rename to gimple_range_global. + (gimple_range_global): Remove wrapper function. + (global_range_query::range_of_expr): Call gimple_range_global. + +2024-04-30 Andrew Pinski + + * tree-cfg.cc (verify_gimple_assign): Remove quote + mark to shut up the warning. + +2024-04-30 Andrew Pinski + + * tree-ssa-phiopt.cc (value_replacement): Reject undef variables + so they don't become unconditional used. + +2024-04-30 Andrew Pinski + + * tree-ssa-phiopt.cc (value_replacement): Move check for + NE/EQ earlier. + +2024-04-30 Andrew Pinski + + * tree-ssa-phiopt.cc (single_non_singleton_phi_for_edges): + Remove the special case of gimple_seq_singleton_p. + +2024-04-30 Andrew Pinski + + PR middle-end/112976 + * cfgexpand.cc (expand_gimple_stmt_1): Remove + support for expanding nontemporal "moves" with + ssa names on the LHS. + +2024-04-30 Andrew Pinski + + PR middle-end/112976 + * tree-cfg.cc (verify_gimple_assign): Verify that + nontmporal moves are stores. + * gimple.h (struct gimple): Note that only + nontemporal stores are supported. + +2024-04-30 Jivan Hakobyan + + * config/riscv/iterators.md (fix_ops, fix_uns): New iterators. + (RINT, rint_pattern, rint_rm): Remove unused iterators. + * config/riscv/riscv-protos.h (get_fp_rounding_coefficient): Prototype. + * config/riscv/riscv-v.cc (get_fp_rounding_coefficient): Externalize. + external linkage. + * config/riscv/riscv.md (UNSPEC_LROUND): Remove. + (fix_trunc2): Replace with ... + (_truncsi2): New expander & associated insn. + (_truncsi2_ext): New insn. + (_truncdi2): Likewise. + (l2): Replace with ... + (lrintsi2): New expander and associated insn. + (lrintsi2_ext, lrintdi2): New insns. + (2): Replace with.... + (lsi2): New expander and associated insn. + (lsi2_sext): New insn. + (ldi2): Likewise. + (2): New expander. + +2024-04-30 Aldy Hernandez + + * gimple-ssa-warn-access.cc (check_nul_terminated_array): Change + int_range<2> to int_range_max. + (memmodel_to_uhwi): Same. + * tree-ssa-loop-niter.cc (refine_value_range_using_guard): Same. + (determine_value_range): Same. + (infer_loop_bounds_from_signedness): Same. + (scev_var_range_cant_overflow): Same. + +2024-04-30 Richard Biener + + PR middle-end/13421 + * optabs-tree.cc (optab_for_tree_code): Do not consider + {add,sub}v or {us,ss}{add,sub} optabs for POINTER_DIFF_EXPR + or POINTER_PLUS_EXPR. + +2024-04-30 Jakub Jelinek + + PR tree-optimization/114876 + * gimple-ssa-sprintf.cc (format_character): For min == 0 && max == 0, + set max, likely and unlikely members to 1 rather than 0. Remove + useless res.knownrange = true;. Formatting fixes. + +2024-04-30 Jakub Jelinek + Hongtao Liu + + PR tree-optimization/114883 + * tree-vect-loop.cc (vect_transform_reduction): Allow IFN_COND_MIN and + IFN_COND_MAX in the assert. + +2024-04-30 Jakub Jelinek + + * doc/cpp.texi (__STDC_VERSION__): Document 202311L value + for -std=c23/-std=gnu23. + +2024-04-30 Richard Biener + + PR middle-end/114734 + * internal-fn.cc (expand_call_mem_ref): Use + get_gimple_for_ssa_name to get at the def stmt of the address + argument to honor SSA coalescing constraints. + 2024-04-29 demin.han PR target/114506 diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index d46e1cb1feb..3424846c2ca 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20240430 +20240501 diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog index 3bff87d51da..f6af0dc2dc8 100644 --- a/gcc/c-family/ChangeLog +++ b/gcc/c-family/ChangeLog @@ -1,3 +1,10 @@ +2024-04-30 Jakub Jelinek + + PR c++/114456 + * c-cppbuiltin.cc (c_cpp_builtins): Predefine + __cpp_structured_bindings for C++26 to 202403L rather than + 201606L. + 2024-04-23 Jakub Jelinek * c-attribs.cc (handle_objc_nullability_attribute): Spelling fix: diff --git a/gcc/c/ChangeLog b/gcc/c/ChangeLog index 1bf256daa35..4601d5fc499 100644 --- a/gcc/c/ChangeLog +++ b/gcc/c/ChangeLog @@ -1,3 +1,8 @@ +2024-04-30 Richard Biener + + * gimple-parser.cc (c_parser_gimple_binary_expression): + Parse __{CEIL,FLOOR,ROUND}_{DIV,MOD} and __EXACT_DIV. + 2024-04-19 Martin Uecker Jakub Jelinek diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index b6696680f98..8234073701a 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,58 @@ +2024-04-30 Jakub Jelinek + + PR c++/114456 + * parser.cc (cp_parser_decomposition_declaration): Implement C++26 + P0609R3 - Attributes for Structured Bindings. Parse attributed + identifier lists for structured binding declarations, pass the + attributes to start_decl. + +2024-04-30 Nathaniel Shead + + PR c++/105320 + PR c++/114275 + * cp-tree.h (propagate_defining_module): Declare. + (lookup_imported_hidden_friend): Declare. + * decl.cc (duplicate_decls): Also check if hidden decls can be + redeclared in this module. + * module.cc (imported_temploid_friends): New. + (init_modules): Initialize it. + (trees_out::decl_value): Write it; don't consider imported + temploid friends as attached to a module. + (trees_in::decl_value): Read it. + (get_originating_module_decl): Follow the owning decl for an + imported temploid friend. + (propagate_defining_module): New. + * name-lookup.cc (get_mergeable_namespace_binding): New. + (lookup_imported_hidden_friend): New. + * pt.cc (tsubst_friend_function): Propagate defining module for + new friend functions. + (tsubst_friend_class): Lookup imported hidden friends. Check + for valid module attachment of existing names. Propagate + defining module for new classes. + +2024-04-30 Nathaniel Shead + + * cp-tree.h (module_may_redeclare): Add default parameter. + * decl.cc (duplicate_decls): Don't emit errors for failed + module_may_redeclare. + (xref_tag): Likewise. + (start_enum): Likewise. + * semantics.cc (begin_class_definition): Likewise. + * module.cc (module_may_redeclare): Clean up logic. Emit error + messages on failure. + +2024-04-30 Patrick Palka + + PR c++/114889 + * module.cc (trees_in::read_class_def): Look through + TEMPLATE_DECL when adding to CLASSTYPE_BEFRIENDING_CLASSES. + +2024-04-30 Patrick Palka + + PR c++/114888 + * typeck.cc (cp_build_binary_op) : Add missing + dependence check for the second sizeof operand. + 2024-04-26 Patrick Palka * error.cc (print_instantiation_partial_context_line): Clear the diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index dcbd0466e79..0690463aac2 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,109 @@ +2024-04-30 Jivan Hakobyan + + * gcc.target/riscv/fix.c: New test. + * gcc.target/riscv/round.c: New test. + * gcc.target/riscv/round_32.c: New test. + * gcc.target/riscv/round_64.c: New test. + +2024-04-30 Rainer Orth + + PR modula2/114886 + * lib/gm2.exp: Don't load timeout-dg.exp. + Don't set gm2_previous_timeout. + Don't call dg-timeout. + (gm2_push_timeout, gm2_pop_timeout): Remove. + (gm2_init): Don't call dg-timeout. + * lib/gm2-torture.exp: Don't load timeout-dg.exp. + Don't set gm2_previous_timeout. + Don't call dg-timeout. + (gm2_push_timeout, gm2_pop_timeout): Remove. + * gm2/coroutines/pim/run/pass/coroutines-pim-run-pass.exp: Don't + load timeout-dg.exp. + Don't call gm2_push_timeout, gm2_pop_timeout. + * gm2/examples/map/pass/examples-map-pass.exp: Don't call + gm2_push_timeout, gm2_pop_timeout. + * gm2/iso/run/pass/iso-run-pass.exp: Don't load timeout-dg.exp. + Don't call gm2_push_timeout, gm2_pop_timeout. + * gm2/pimlib/base/run/pass/pimlib-base-run-pass.exp: Don't load + timeout-dg.exp. + Don't call gm2_push_timeout, gm2_pop_timeout. + * gm2/projects/iso/run/pass/halma/projects-iso-run-pass-halma.exp: + Don't call gm2_push_timeout, gm2_pop_timeout. + * gm2/switches/whole-program/pass/run/switches-whole-program-pass-run.exp: + Don't load timeout-dg.exp. + Don't call gm2_push_timeout, gm2_pop_timeout. + +2024-04-30 Richard Biener + + * gcc.dg/gimplefe-53.c: New testcase. + +2024-04-30 Jakub Jelinek + + PR tree-optimization/114876 + * gcc.dg/pr114876.c: New test. + * gcc.dg/tree-ssa/builtin-sprintf-warn-1.c: Adjust expected + diagnostics. + +2024-04-30 Jakub Jelinek + Hongtao Liu + + PR tree-optimization/114883 + * gfortran.dg/pr114883.f90: New test. + +2024-04-30 Jakub Jelinek + + PR c++/114456 + * g++.dg/cpp26/decomp1.C: New test. + * g++.dg/cpp26/decomp2.C: New test. + * g++.dg/cpp26/feat-cxx26.C (__cpp_structured_bindings): Expect + 202403 rather than 201606. + +2024-04-30 Nathaniel Shead + + PR c++/105320 + PR c++/114275 + * g++.dg/modules/tpl-friend-10_a.C: New test. + * g++.dg/modules/tpl-friend-10_b.C: New test. + * g++.dg/modules/tpl-friend-10_c.C: New test. + * g++.dg/modules/tpl-friend-10_d.C: New test. + * g++.dg/modules/tpl-friend-11_a.C: New test. + * g++.dg/modules/tpl-friend-11_b.C: New test. + * g++.dg/modules/tpl-friend-12_a.C: New test. + * g++.dg/modules/tpl-friend-12_b.C: New test. + * g++.dg/modules/tpl-friend-12_c.C: New test. + * g++.dg/modules/tpl-friend-12_d.C: New test. + * g++.dg/modules/tpl-friend-12_e.C: New test. + * g++.dg/modules/tpl-friend-12_f.C: New test. + * g++.dg/modules/tpl-friend-13_a.C: New test. + * g++.dg/modules/tpl-friend-13_b.C: New test. + * g++.dg/modules/tpl-friend-13_c.C: New test. + * g++.dg/modules/tpl-friend-13_d.C: New test. + * g++.dg/modules/tpl-friend-13_e.C: New test. + * g++.dg/modules/tpl-friend-13_f.C: New test. + * g++.dg/modules/tpl-friend-13_g.C: New test. + * g++.dg/modules/tpl-friend-14_a.C: New test. + * g++.dg/modules/tpl-friend-14_b.C: New test. + * g++.dg/modules/tpl-friend-14_c.C: New test. + * g++.dg/modules/tpl-friend-14_d.C: New test. + * g++.dg/modules/tpl-friend-9.C: New test. + +2024-04-30 Nathaniel Shead + + * g++.dg/modules/enum-12.C: Update error message. + * g++.dg/modules/friend-5_b.C: Likewise. + * g++.dg/modules/shadow-1_b.C: Likewise. + +2024-04-30 Patrick Palka + + PR c++/114889 + * g++.dg/modules/friend-8_a.H: New test. + * g++.dg/modules/friend-8_b.C: New test. + +2024-04-30 Patrick Palka + + PR c++/114888 + * g++.dg/template/sizeof19.C: New test. + 2024-04-29 Alexandre Oliva Revert: diff --git a/libcpp/ChangeLog b/libcpp/ChangeLog index eac81c0e4d5..2beee7f179a 100644 --- a/libcpp/ChangeLog +++ b/libcpp/ChangeLog @@ -1,3 +1,8 @@ +2024-04-30 Jakub Jelinek + + * init.cc (cpp_init_builtins): Change __STDC_VERSION__ + for C23 from 202000L to 202311L. + 2024-04-17 Christophe Lyon PR preprocessor/114748 diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog index 9c7fed10e3d..1f9c7671282 100644 --- a/libgcc/ChangeLog +++ b/libgcc/ChangeLog @@ -1,3 +1,8 @@ +2024-04-30 Jakub Jelinek + + * gthr.h (GTHREAD_USE_WEAK): Don't redefine to 0 for glibc 2.34+ + on GNU Hurd. + 2024-04-25 Jakub Jelinek * gthr.h (GTHREAD_USE_WEAK): Redefine to 0 for GLIBC 2.34 or later. diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index b18e3082162..6051dd3f1ab 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,8 @@ +2024-04-30 Christophe Lyon + + * testsuite/lib/gdb-test.exp (gdb-test): Fix regexp. Quote + newlines in logs. + 2024-04-29 Rainer Orth Backported from master: