https://gcc.gnu.org/g:905a156bec341a766a90e77db9d7149f13991510
commit r16-923-g905a156bec341a766a90e77db9d7149f13991510 Author: GCC Administrator <gccadmin@gcc.gnu.org> Date: Wed May 28 00:18:43 2025 +0000 Daily bump. Diff: --- contrib/ChangeLog | 5 + gcc/ChangeLog | 391 ++++++++++++++++++++++++++++++++++++++ gcc/DATESTAMP | 2 +- gcc/c-family/ChangeLog | 10 + gcc/c/ChangeLog | 34 ++++ gcc/cp/ChangeLog | 5 + gcc/fortran/ChangeLog | 37 ++++ gcc/testsuite/ChangeLog | 193 +++++++++++++++++++ libgcc/ChangeLog | 79 ++++++++ libgcc/config/avr/libf7/ChangeLog | 15 ++ libstdc++-v3/ChangeLog | 36 ++++ 11 files changed, 806 insertions(+), 1 deletion(-) diff --git a/contrib/ChangeLog b/contrib/ChangeLog index 331b99fab445..276ce745a98b 100644 --- a/contrib/ChangeLog +++ b/contrib/ChangeLog @@ -1,3 +1,8 @@ +2025-05-27 Jan Hubicka <hubi...@ucw.cz> + + * gen_autofdo_event.py: Add support for AMD Zen 3 and + later CPUs. + 2025-05-23 Andi Kleen <a...@gcc.gnu.org> * diffsummary.py: New file. diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 3674cc52a1c5..bb3c1f7d282a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,394 @@ +2025-05-27 Jason Merrill <ja...@redhat.com> + + PR c++/120400 + * fold-const.cc (simple_operand_p): False for vars with + DECL_VALUE_EXPR. + +2025-05-27 Alejandro Colomar <a...@kernel.org> + + PR c/117025 + * Makefile.in (USER_H): Add <stdcountof.h>. + * ginclude/stdcountof.h: New file. + +2025-05-27 Alejandro Colomar <a...@kernel.org> + Martin Uecker <uec...@tugraz.at> + + PR c/117025 + * doc/extend.texi: Document _Countof operator. + +2025-05-27 Jan Hubicka <hubi...@ucw.cz> + + * config/i386/gcc-auto-profile: regenerate. + +2025-05-27 Jan Hubicka <hubi...@ucw.cz> + + * auto-profile.cc (function_instance::mark_annotated): Remove. + (function_instance::total_annotated_count): Remove. + (autofdo_source_profile::mark_annotated): Remove. + (afdo_set_bb_count): Do not mark annotated locations. + (afdo_annotate_cfg): Likewise. + +2025-05-27 Eric Botcazou <ebotca...@adacore.com> + + * ipa-sra.cc (scan_expr_access): Also disqualify storage order + barriers from splitting. + * tree.h (storage_order_barrier_p): Also return false if the + operand of the VIEW_CONVERT_EXPR has reverse storage order. + +2025-05-27 David Malcolm <dmalc...@redhat.com> + + PR other/116792 + * diagnostic-format-html.cc: Define INCLUDE_STRING. + Include "xml.h", "xml-printer.h", and "json.h". + (html_generation_options::html_generation_options): New. + (namespace xml): Move decls to xml.h and convert from using + label_text to std::string. + (xml::text::write_as_xml): Reimplement indentation so it is done + by this node, rather than the parent. + (xml::node_with_children::add_text): Convert from label_text to + std::string. Consolidate runs of text into a single node. + (xml::document::write_as_xml): Reimplement indentation. + (xml::element::write_as_xml): Reimplement indentation so it is + done by this node, rather than the parent. Convert from + label_text to std::string. Update attribute-printing to new + representation to preserve insertion order. + (xml::element::set_attr): Convert from label_text to std::string. + Record insertion order. + (xml::raw::write_as_xml): New. + (xml::printer::printer): New. + (xml::printer::push_tag): New. + (xml::printer::push_tag_with_class): New. + (xml::printer::pop_tag): New. + (xml::printer::set_attr): New. + (xml::printer::add_text): New. + (xml::printer::add_raw): New. + (xml::printer::push_element): New. + (xml::printer::append): New. + (xml::printer::get_insertion_point): New. + (html_builder::add_focus_id): New. + (html_builder::m_html_gen_opts): New field. + (html_builder::m_head_element): New field. + (html_builder::m_next_diag_id): New field. + (html_builder::m_ui_focus_ids): New field. + (make_div): Convert from label_text to std::string. + (make_span): Likewise. + (HTML_STYLE): New. + (HTML_SCRIPT): New. + (html_builder::html_builder): Fix indentation. Add + "html_gen_opts" param. Initialize new fields. Reimplement + using xml::printer. Optionally add style and script tags. + (class html_path_label_writer): New. + (html_builder::make_element_for_diagnostic): Convert from + label_text to std::string. Set "id" on "gcc-diagnostic" and + "gcc-message" <div> elements; add the latter to the focus ids. + Use diagnostic_context::maybe_show_locus_as_html rather than + html_builder::make_element_for_source. Use print_path_as_html + rather than html_builder::make_element_for_path. + (html_builder::make_element_for_source): Drop. + (html_builder::make_element_for_path): Drop. + (html_builder::make_element_for_patch): Convert from label_text to + std::string. + (html_builder::make_metadata_element): Likewise. Use + xml::printer. + (html_builder::make_element_for_metadata): Convert from label_text + to std::string. + (html_builder::emit_diagram): Expand comment. + (html_builder::flush_to_file): Write out initializer for + "focus_ids" into javascript. + (html_output_format::html_output_format): Add param + "html_gen_opts" and use it to initialize m_builder. + (html_file_output_format::html_file_output_format): Likewise, to + initialize base class. + (make_html_sink): Likewise, to pass to ctor. + (selftest::test_html_diagnostic_context::test_html_diagnostic_context): + Set up html_generation_options. + (selftest::html_buffered_output_format::html_buffered_output_format): + Add html_gen_opts param. + (selftest::test_simple_log): Add id attributes to expected text + for "gcc-diagnostic" and "gcc-message" elements. Update + whitespace for indentation fixes. + (selftest::test_metadata): Update whitespace for indentation + fixes. + (selftest::test_printer): New selftest. + (selftest::test_attribute_ordering): New selftest. + (selftest::diagnostic_format_html_cc_tests): Call the new + selftests. + * diagnostic-format-html.h (struct html_generation_options): New. + (make_html_sink): Add "html_gen_opts" param. + (print_path_as_html): New decl. + * diagnostic-path-output.cc: Define INCLUDE_MAP. Add includes of + "diagnostic-format-html.h", "xml.h", and "xml-printer.h". + (path_print_policy::path_print_policy): Add ctor. + (path_print_policy::get_diagram_theme): Fix whitespace. + (struct stack_frame): New. + (begin_html_stack_frame): New function. + (end_html_stack_frame): New function. + (emit_svg_arrow): New function. + (event_range::print): Rename to... + (event_range::print_as_text): ...this. Update call to + diagnostic_start_span. + (event_range::print_as_html): New, based on the above, but ported + from pretty_printer to xml::printer. + (thread_event_printer::print_swimlane_for_event_range): Rename + to... + (thread_event_printer::print_swimlane_for_event_range_as_text): + ...this. Update for renaming of event_range::print to + event_range::print_as_text. + (thread_event_printer::print_swimlane_for_event_range_as_html): + New. + (print_path_summary_as_text): Update for "_as_text" renaming. + (print_path_summary_as_html): New. + (print_path_as_html): New. + * diagnostic-show-locus.cc: Add defines of INCLUDE_MAP and + INCLUDE_STRING. Add includes of "xml.h" and "xml-printer.h". + (struct char_display_policy): Replace "m_print_cb" with + "m_print_text_cb" and "m_print_html_cb". + (struct to_text): New. + (struct to_html): New. + (get_printer): New. + (default_diagnostic_start_span_fn<to_text>): New. + (default_diagnostic_start_span_fn<to_html>): New. + (class layout): Update "friend class layout_printer;" for + template. + (enum class margin_kind): New. + (class layout_printer): Convert into a template. + (layout_printer::m_pp): Replace field with... + (layout_printer::m_sink): ...this. + (layout_printer::m_colorizer): Drop field in favor of a pointer + in the "to_text" sink. + (default_print_decoded_ch): Convert into a template. + (escape_as_bytes_print): Likewise. + (escape_as_unicode_print): Likewise. + (make_char_policy): Update to use both text and html callbacks. + (layout_printer::print_gap_in_line_numbering): Replace with... + (layout_printer<to_text>::print_gap_in_line_numbering): ...this + (layout_printer<to_html>::print_gap_in_line_numbering): ...and + this. + (layout_printer::print_source_line): Convert to template, using + m_sink. + (layout_printer::print_leftmost_column): Likewise. + (layout_printer::start_annotation_line): Likewise. + (layout_printer<to_text>::end_line): New. + (layout_printer<to_html>::end_line): New. + (layout_printer::print_annotation_line): Convert to template, + using m_sink. + (class line_label): Add field m_original_range_idx. + (layout_printer<to_text>::begin_label): New. + (layout_printer<to_html>::begin_label): New. + (layout_printer<to_text>::end_label): New. + (layout_printer<to_html>::end_label): New. + (layout_printer::print_any_labels): Convert to template, using + m_sink. + (layout_printer::print_leading_fixits): Likewise. + (layout_printer::print_trailing_fixits): Likewise. + (layout_printer::print_newline): Drop. + (layout_printer::move_to_column): Convert to template, using + m_sink. + (layout_printer::show_ruler): Likewise. + (layout_printer::print_line): Likewise. + (layout_printer::print_any_right_to_left_edge_lines): Likewise. + (layout_printer::layout_printer): Likewise. + (diagnostic_context::maybe_show_locus_as_html): New. + (diagnostic_source_print_policy::diagnostic_source_print_policy): + Update for split of start_span_cb into text vs html variants. + (diagnostic_source_print_policy::print): Update for use of + templates; use to_text. + (diagnostic_source_print_policy::print_as_html): New. + (layout_printer::print): Convert to template, using m_sink. + (selftest::make_element_for_locus): New. + (selftest::make_raw_html_for_locus): New. + (selftest::test_layout_x_offset_display_utf8): Update for use of + templates. + (selftest::test_layout_x_offset_display_tab): Likewise. + (selftest::test_one_liner_caret_and_range): Add test coverage of + HTML output. + (selftest::test_one_liner_labels): Likewise. + * diagnostic.cc (diagnostic_context::initialize): Update for split + of start_span_cb into text vs html variants. + (default_diagnostic_start_span_fn): Move to + diagnostic-show-locus.cc, converting to template. + * diagnostic.h (class xml::printer): New forward decl. + (diagnostic_start_span_fn): Replace typedef with "using", + converting to a template. + (struct to_text): New forward decl. + (struct to_html): New forward decl. + (get_printer): New decl. + (diagnostic_location_print_policy::print_text_span_start): New + decl. + (diagnostic_location_print_policy::print_html_span_start): New + decl. + (class html_label_writer): New. + (diagnostic_source_print_policy::print_as_html): New decl. + (diagnostic_source_print_policy::get_start_span_fn): Replace + with... + (diagnostic_source_print_policy::get_text_start_span_fn): ...this + (diagnostic_source_print_policy::get_html_start_span_fn): ...and + this + (diagnostic_source_print_policy::m_start_span_cb): Replace with... + (diagnostic_source_print_policy::m_text_start_span_cb): ...this + (diagnostic_source_print_policy::m_html_start_span_cb): ...and + this. + (diagnostic_context::maybe_show_locus_as_html): New decl. + (diagnostic_context::m_text_callbacks::m_start_span): Replace + with... + (diagnostic_context::m_text_callbacks::m_text_start_span): ...this + (diagnostic_context::m_text_callbacks::m_html_start_span): ...and + this. + (diagnostic_start_span): Update for template change. + (diagnostic_show_locus_as_html): New inline function. + (default_diagnostic_start_span_fn): Convert to template. + * doc/invoke.texi (experimental-html): Add "css" and "javascript" + keys. + * opts-diagnostic.cc (html_scheme_handler::make_sink): Likewise. + * selftest-diagnostic.cc + (selftest::test_diagnostic_context::start_span_cb): Update for + template changes. + * selftest-diagnostic.h + (selftest::test_diagnostic_context::start_span_cb): Likewise. + * xml-printer.h: New file. + * xml.h: New file, based on material in diagnostic-format-html.cc, + but using std::string rather than label_text. + (xml::element::m_key_insertion_order): New field. + (struct xml::raw): New. + +2025-05-27 David Malcolm <dmalc...@redhat.com> + + * Makefile.in (OBJS-libcommon): Add diagnostic-path-output.o. + * diagnostic-path-output.cc: New file, taken from material in + diagnostic-path.cc. + * diagnostic-path.cc: Drop includes of + "diagnostic-macro-unwinding.h", "intl.h", "gcc-rich-location.h", + "diagnostic-color.h", "diagnostic-event-id.h", + "diagnostic-label-effects.h", "pretty-print-markup.h", + "selftest.h", "selftest-diagnostic.h", + "selftest-diagnostic-path.h", "text-art/theme.h", and + "diagnostic-format-text.h". + (class path_print_policy): Move to diagnostic-path-output.cc. + (class path_label): Likewise. + (can_consolidate_events): Likewise. + (class per_thread_summary): Likewise. + (struct event_range): Likewise. + (struct path_summary): Likewise. + (per_thread_summary::interprocedural_p): Likewise. + (path_summary::path_summary): Likewise. + (write_indent): Likewise. + (base_indent): Likewise. + (per_frame_indent): Likewise. + (class thread_event_printer): Likewise. + (print_path_summary_as_text): Likewise. + (class element_event_desc): Likewise. + (diagnostic_text_output_format::print_path): Likewise. + (selftest::path_events_have_column_data_p): Likewise. + (selftest::test_empty_path): Likewise. + (selftest::test_intraprocedural_path): Likewise. + (selftest::test_interprocedural_path_1): Likewise. + (selftest::test_interprocedural_path_2): Likewise. + (selftest::test_recursion): Likewise. + (class selftest::control_flow_test): Likewise. + (selftest::test_control_flow_1): Likewise. + (selftest::test_control_flow_2): Likewise. + (selftest::test_control_flow_3): Likewise. + (selftest::assert_cfg_edge_path_streq): Likewise. + (ASSERT_CFG_EDGE_PATH_STREQ): Likewise. + (selftest::test_control_flow_4): Likewise. + (selftest::test_control_flow_5): Likewise. + (selftest::test_control_flow_6): Likewise. + (selftest::control_flow_tests): Likewise. + (selftest::diagnostic_path_cc_tests): Likewise, renaming + accordingly. + * selftest-run-tests.cc (selftest::run_tests): Update for + move of path-printing selftests. + * selftest.h (selftest::diagnostic_path_cc_tests): Replace decl + with... + (selftest::diagnostic_path_output_cc_tests): ...this. + +2025-05-27 Juergen Christ <jchr...@linux.ibm.com> + + * config/s390/vector.md(*vec_extract<mode>): Fix mnemonic. + +2025-05-27 Richard Biener <rguent...@suse.de> + + PR tree-optimization/117965 + * tree-ssa-phiprop.cc (phivn_valid_p): Remove. + (propagate_with_phi): Pass in virtual PHI node from BB, + rewrite load motion validity check to require the same + virtual use along all paths. + +2025-05-27 Konstantinos Eleftheriou <konstantinos.elefther...@vrull.eu> + + PR rtl-optimization/119884 + * avoid-store-forwarding.cc (process_store_forwarding): + Use `lowpart_subreg` for the base register initialization + and remove redundant stores from the store/load sequence. + +2025-05-27 Konstantinos Eleftheriou <konstantinos.elefther...@vrull.eu> + + * sbitmap.cc (bitmap_any_bit_in_range_p): + Call and return the result of `bitmap_bit_in_range_p` with the + `any_inverted` parameter set to false. + (bitmap_bit_in_range_p): New function. + (bitmap_all_bits_in_range_p): New function. + * sbitmap.h (bitmap_all_bits_in_range_p): New function. + +2025-05-27 Konstantinos Eleftheriou <konstantinos.elefther...@vrull.eu> + + * sbitmap.cc (bitmap_bit_in_range_p): Renamed the function. + (bitmap_any_bit_in_range_p): New function name. + (bitmap_bit_in_range_p_checking): Renamed the function. + (bitmap_any_bit_in_range_p_checking): New function name. + (test_set_range): Updated function calls to use the new name. + (test_bit_in_range): Likewise. + * sbitmap.h (bitmap_bit_in_range_p): Renamed the function. + (bitmap_any_bit_in_range_p): New function name. + * tree-ssa-dse.cc (live_bytes_read): + Updated function call to use the new name. + +2025-05-27 Co-authored-by: Jeff Law <j...@ventanamicro.com> + + * config/riscv/bitmanip.md (andi+bclr splits): Simplified from + prior define_insn_and_splits. + * config/riscv/riscv.cc (synthesize_and): Add support for andi+bclr + sequences. + +2025-05-27 Pan Li <pan2...@intel.com> + + * config/riscv/riscv-v.cc (expand_vx_binary_vec_dup_vec): Add + new case for XOR op. + (expand_vx_binary_vec_vec_dup): Diito. + * config/riscv/riscv.cc (riscv_rtx_costs): Ditto. + * config/riscv/vector-iterators.md: Add new op or to no_shift_vx_ops. + +2025-05-27 Juergen Christ <jchr...@linux.ibm.com> + + * config/s390/vector.md (VF): New mode iterator. + (VEC_SET_NONFLOAT): New mode iterator. + (VEC_SET_SINGLEFLOAT): New mode iterator. + (*vec_set<mode>): Split pattern in two. + (*vec_setv2df): Extract special handling for V2DF mode. + (*vec_extract<mode>): Split pattern in two. + +2025-05-27 Jonathan Wakely <jwak...@redhat.com> + + * doc/extend.texi (Common Variable Attributes): Fix typo in + description of nonstring. + +2025-05-27 Kito Cheng <kito.ch...@sifive.com> + + * gcc.cc (find_multilib_os_dir_by_multilib_dir): New. + (set_multilib_dir): Fix multilib_os_dir and multiarch_dir + if multilib_os_dir is not set. + +2025-05-27 xuli <xu...@eswincomputing.com> + + * match.pd: add singned vector SAT_ADD IMM form1 matching. + +2025-05-27 xuli <xu...@eswincomputing.com> + + * match.pd: Add signed scalar SAT_ADD IMM form1 with IMM=-1 matching. + * tree-ssa-math-opts.cc (match_unsigned_saturation_add): Adapt function name. + (match_saturation_add_with_assign): Match signed and unsigned SAT_ADD with assign. + (math_opts_dom_walker::after_dom_children): Match imm=-1 signed SAT_ADD with NOP_EXPR case. + 2025-05-26 Jason Merrill <ja...@redhat.com> * doc/invoke.texi: Move C++ -fdump-lang to C++ section. diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index ed9a6b1f3e64..4044138c536f 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20250527 +20250528 diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog index 4136d541e72e..8de6ae577d52 100644 --- a/gcc/c-family/ChangeLog +++ b/gcc/c-family/ChangeLog @@ -1,3 +1,13 @@ +2025-05-27 Alejandro Colomar <a...@kernel.org> + Martin Uecker <uec...@tugraz.at> + + PR c/117025 + * c-common.h (enum rid): Add RID_COUNTOF. + (c_countof_type): New function prototype. + * c-common.def (COUNTOF_EXPR): New tree. + * c-common.cc (c_common_reswords): Add RID_COUNTOF entry. + (c_countof_type): New function. + 2025-05-23 Jason Merrill <ja...@redhat.com> * c-format.cc (flag_chars_t::validate): Control quoting warnings diff --git a/gcc/c/ChangeLog b/gcc/c/ChangeLog index b7cdd11eb9ec..c8587b48e7d6 100644 --- a/gcc/c/ChangeLog +++ b/gcc/c/ChangeLog @@ -1,3 +1,37 @@ +2025-05-27 Jakub Jelinek <ja...@redhat.com> + + PR c/117025 + * c-parser.cc (c_parser_sizeof_or_countof_expression): Use + C2Y rather than C23 in pedwarn_c23. + +2025-05-27 Alejandro Colomar <a...@kernel.org> + + PR c/117025 + * c-parser.cc (c_parser_sizeof_or_countof_expression): + Add -Wpedantic diagnostic for _Countof in <= C23 mode. + +2025-05-27 Alejandro Colomar <a...@kernel.org> + Martin Uecker <uec...@tugraz.at> + + PR c/117025 + * c-tree.h (in_countof): Add global variable declaration. + (c_expr_countof_expr): Add function prototype. + (c_expr_countof_type): Add function prototype. + * c-decl.cc (start_struct, finish_struct): Add support for + _Countof. + (start_enum, finish_enum): Add support for _Countof. + * c-parser.cc (c_parser_sizeof_expression): New macro. + (c_parser_countof_expression): New macro. + (c_parser_sizeof_or_countof_expression): Rename function and add + support for _Countof. + (c_parser_unary_expression): Add RID_COUNTOF entry. + * c-typeck.cc (in_countof): Add global variable. + (build_external_ref): Add support for _Countof. + (record_maybe_used_decl): Add support for _Countof. + (pop_maybe_used): Add support for _Countof. + (is_top_array_vla): New function. + (c_expr_countof_expr, c_expr_countof_type): New functions. + 2025-05-02 Jakub Jelinek <ja...@redhat.com> PR c/120057 diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 819a020aaf06..bd9b40522e76 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,8 @@ +2025-05-27 Iain Sandoe <i...@sandoe.co.uk> + + * coroutines.cc (cp_coroutine_transform::build_ramp_function): + Replace TRUTH_AND_EXPR with TRUTH_ANDIF_EXPR in three places. + 2025-05-26 Tobias Burnus <tbur...@baylibre.com> PR c++/120413 diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index f0d4e2c4f977..a506fe42968c 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,40 @@ +2025-05-27 Harald Anlauf <anl...@gmx.de> + + PR fortran/101735 + * primary.cc (gfc_match_varspec): Correct order of logic. + +2025-05-27 Jerry DeLisle <jvdeli...@gcc.gnu.org> + + PR fortran/120049 + * check.cc (gfc_check_c_associated): Use new helper functions. + Only call check_c_ptr_1 if optional c_ptr_2 tests succeed. + (check_c_ptr_1): Handle only c_ptr_1 checks. + (check_c_ptr_2): Expand checks for c_ptr_2 and handle cases + where there is no derived pointer in the gfc_expr and check + the inmod_sym_id only if it exists. + * misc.cc (gfc_typename): Handle the case for BT_VOID rather + than throw an internal error. + +2025-05-27 Harald Anlauf <anl...@gmx.de> + + PR fortran/101735 + * expr.cc (find_inquiry_ref): If an inquiry reference applies to + a substring, use that, and calculate substring length if needed. + * primary.cc (extend_ref): Also handle attaching to end of + reference chain for appending. + (gfc_match_varspec): Discrimate between arrays of character and + substrings of them. If a substring is taken from a character + component of a derived type, get the proper typespec so that + inquiry references work correctly. + (gfc_match_rvalue): Handle corner case where we hit a seemingly + dangling '%' and missed an inquiry reference. Try another match. + +2025-05-27 David Malcolm <dmalc...@redhat.com> + + PR other/116792 + * error.cc (gfc_diagnostic_start_span): Update for diagnostic.h + changes. + 2025-05-19 Harald Anlauf <anl...@gmx.de> PR fortran/120099 diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 270f6c9f81d9..986bb94885ab 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,196 @@ +2025-05-27 Alejandro Colomar <a...@kernel.org> + + PR c/117025 + * gcc.dg/countof-compat.c: New test. + * gcc.dg/countof-no-compat.c: New test. + * gcc.dg/countof-pedantic.c: New test. + * gcc.dg/countof-pedantic-errors.c: New test. + +2025-05-27 Alejandro Colomar <a...@kernel.org> + + PR c/117025 + * gcc.dg/countof-stdcountof.c: New test. + +2025-05-27 Alejandro Colomar <a...@kernel.org> + Martin Uecker <uec...@tugraz.at> + + PR c/117025 + * gcc.dg/countof-compile.c: New test. + * gcc.dg/countof-vla.c: New test. + * gcc.dg/countof-vmt.c: New test. + * gcc.dg/countof-zero-compile.c: New test. + * gcc.dg/countof-zero.c: New test. + * gcc.dg/countof.c: New test. + +2025-05-27 Jerry DeLisle <jvdeli...@gcc.gnu.org> + + PR fortran/120049 + * gfortran.dg/pr120049_a.f90: Update test directives. + * gfortran.dg/pr120049_b.f90: Update test directives + * gfortran.dg/pr120049_2.f90: New test. + Co-Authored-By: Steve Kargl <ka...@gcc.gnu.org> + +2025-05-27 Harald Anlauf <anl...@gmx.de> + + PR fortran/101735 + * gfortran.dg/inquiry_type_ref_7.f90: New test. + +2025-05-27 Eric Botcazou <ebotca...@adacore.com> + + * gnat.dg/sso19.adb: New test. + * gnat.dg/sso19_pkg.ads, gnat.dg/sso19_pkg.adb: New helper. + +2025-05-27 David Malcolm <dmalc...@redhat.com> + + PR other/116792 + * gcc.dg/html-output/missing-semicolon.c: Add ":javascript=no" to + html output. + * gcc.dg/html-output/missing-semicolon.py: Move repeated + definitions into lib/htmltest.py. + * gcc.dg/plugin/diagnostic_group_plugin.cc: Update for template + changes. + * gcc.dg/plugin/diagnostic-test-metadata-html.c: Add + ":javascript=no" to html output. Add + "-fdiagnostics-show-line-numbers". + * gcc.dg/plugin/diagnostic-test-metadata-html.py: Move repeated + definitions into lib/htmltest.py. Add checks of annotated source. + * gcc.dg/plugin/diagnostic-test-paths-2.c: Add ":javascript=no" to + html output. + * gcc.dg/plugin/diagnostic-test-paths-2.py: Move repeated + definitions into lib/htmltest.py. Add checks of execution path. + * gcc.dg/plugin/diagnostic-test-paths-4.c: Add + -fdiagnostics-add-output=experimental-html:javascript=no. Add + invocation ot diagnostic-test-paths-4.py. + * gcc.dg/plugin/diagnostic-test-paths-4.py: New test script. + * gcc.dg/plugin/diagnostic-test-show-locus-bw-line-numbers.c: Add + -fdiagnostics-add-output=experimental-html:javascript=no. Add + invocation of diagnostic-test-show-locus.py. + * gcc.dg/plugin/diagnostic-test-show-locus.py: New test script. + * lib/htmltest.py: New test support script. + +2025-05-27 Richard Biener <rguent...@suse.de> + + PR tree-optimization/117965 + * g++.dg/tree-ssa/pr117965-1.C: New testcase. + * g++.dg/tree-ssa/pr117965-2.C: Likewise. + +2025-05-27 Konstantinos Eleftheriou <konstantinos.elefther...@vrull.eu> + + PR rtl-optimization/119884 + * gcc.target/i386/pr119884.c: New test. + +2025-05-27 Pan Li <pan2...@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i16.c: Add asm check + for vxor.vx combine. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-4-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-5-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-i8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-6-u8.c: Ditto. + +2025-05-27 Pan Li <pan2...@intel.com> + + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-i16.c: Add asm check + for vxor.vx combine. + * 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-1-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-1-u8.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-2-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-2-u8.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-3-u16.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u32.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u64.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx-3-u8.c: Ditto. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary_data.h: Add test + data for vxor run test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vxor-run-1-i16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vxor-run-1-i32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vxor-run-1-i64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vxor-run-1-i8.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vxor-run-1-u16.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vxor-run-1-u32.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vxor-run-1-u64.c: New test. + * gcc.target/riscv/rvv/autovec/vx_vf/vx_vxor-run-1-u8.c: New test. + +2025-05-27 Juergen Christ <jchr...@linux.ibm.com> + + * gcc.target/s390/vector/vec-extract-1.c: New test. + * gcc.target/s390/vector/vec-set-1.c: New test. + +2025-05-27 xuli <xu...@eswincomputing.com> + + * gcc.target/riscv/rvv/autovec/sat/vec_sat_arith.h: add signed vec SAT_ADD IMM form1. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_data.h: add sat_s_add_imm data. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm-1-i16.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm-1-i32.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm-1-i64.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm-1-i8.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm-run-1-i16.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm-run-1-i32.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm-run-1-i64.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm-run-1-i8.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm_type_check-1-i16.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm_type_check-1-i32.c: New test. + * gcc.target/riscv/rvv/autovec/sat/vec_sat_s_add_imm_type_check-1-i8.c: New test. + +2025-05-27 xuli <xu...@eswincomputing.com> + + * gcc.target/riscv/sat/sat_s_add_imm-2.c: Move to... + * gcc.target/riscv/sat/sat_s_add_imm-1-i16.c: ...here. + * gcc.target/riscv/sat/sat_s_add_imm-3.c: Move to... + * gcc.target/riscv/sat/sat_s_add_imm-1-i32.c: ...here. + * gcc.target/riscv/sat/sat_s_add_imm-4.c: Move to... + * gcc.target/riscv/sat/sat_s_add_imm-1-i64.c: ...here. + * gcc.target/riscv/sat/sat_s_add_imm-1.c: Move to... + * gcc.target/riscv/sat/sat_s_add_imm-1-i8.c: ...here. + * gcc.target/riscv/sat/sat_s_add_imm-run-2.c: Move to... + * gcc.target/riscv/sat/sat_s_add_imm-run-1-i16.c: ...here. + * gcc.target/riscv/sat/sat_s_add_imm-run-3.c: Move to... + * gcc.target/riscv/sat/sat_s_add_imm-run-1-i32.c: ...here. + * gcc.target/riscv/sat/sat_s_add_imm-run-4.c: Move to... + * gcc.target/riscv/sat/sat_s_add_imm-run-1-i64.c: ...here. + * gcc.target/riscv/sat/sat_s_add_imm-run-1.c: Move to... + * gcc.target/riscv/sat/sat_s_add_imm-run-1-i8.c: ...here. + * gcc.target/riscv/sat/sat_s_add_imm-2-1.c: Move to... + * gcc.target/riscv/sat/sat_s_add_imm_type_check-1-i16.c: ...here. + * gcc.target/riscv/sat/sat_s_add_imm-3-1.c: Move to... + * gcc.target/riscv/sat/sat_s_add_imm_type_check-1-i32.c: ...here. + * gcc.target/riscv/sat/sat_s_add_imm-1-1.c: Move to... + * gcc.target/riscv/sat/sat_s_add_imm_type_check-1-i8.c: ...here. + 2025-05-26 Tobias Burnus <tbur...@baylibre.com> PR middle-end/118694 diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog index 50685577f274..7e907b665800 100644 --- a/libgcc/ChangeLog +++ b/libgcc/ChangeLog @@ -1,3 +1,82 @@ +2025-05-27 Jakub Jelinek <ja...@redhat.com> + + * config/t-softfp (softfp_bid_list): Don't guard with + $(enable_decimal_float) == bid. + * soft-fp/bitint.h (__bid_pow10bitint): For + !defined(ENABLE_DECIMAL_BID_FORMAT) redefine to __dpd_pow10bitint. + (__dpd_d2bbitint, __dpd_b2dbitint): Declare. + * soft-fp/bitintpow10.c (__dpd_d2bbitint, __dpd_b2dbitint): New + variables. + * soft-fp/fixsdbitint.c (__bid_fixsdbitint): For + !defined(ENABLE_DECIMAL_BID_FORMAT) redefine to __dpd_fixsdbitint. + Add DPD support. Fix big-endian support. + * soft-fp/fixddbitint.c (__bid_fixddbitint): For + !defined(ENABLE_DECIMAL_BID_FORMAT) redefine to __dpd_fixddbitint. + Add DPD support. Fix big-endian support. + * soft-fp/fixtdbitint.c (__bid_fixtdbitint): For + !defined(ENABLE_DECIMAL_BID_FORMAT) redefine to __dpd_fixtdbitint. + Add DPD support. Fix big-endian support. + * soft-fp/fixsdti.c (__bid_fixsdbitint): For + !defined(ENABLE_DECIMAL_BID_FORMAT) redefine to __dpd_fixsdbitint. + (__bid_fixsdti): For !defined(ENABLE_DECIMAL_BID_FORMAT) redefine to + __dpd_fixsdti. + * soft-fp/fixddti.c (__bid_fixddbitint): For + !defined(ENABLE_DECIMAL_BID_FORMAT) redefine to __dpd_fixddbitint. + (__bid_fixddti): For !defined(ENABLE_DECIMAL_BID_FORMAT) redefine to + __dpd_fixddti. + * soft-fp/fixtdti.c (__bid_fixtdbitint): For + !defined(ENABLE_DECIMAL_BID_FORMAT) redefine to __dpd_fixtdbitint. + (__bid_fixtdti): For !defined(ENABLE_DECIMAL_BID_FORMAT) redefine to + __dpd_fixtdti. + * soft-fp/fixunssdti.c (__bid_fixsdbitint): For + !defined(ENABLE_DECIMAL_BID_FORMAT) redefine to __dpd_fixsdbitint. + (__bid_fixunssdti): For !defined(ENABLE_DECIMAL_BID_FORMAT) redefine + to __dpd_fixunssdti. + * soft-fp/fixunsddti.c (__bid_fixddbitint): For + !defined(ENABLE_DECIMAL_BID_FORMAT) redefine to __dpd_fixddbitint. + (__bid_fixunsddti): For !defined(ENABLE_DECIMAL_BID_FORMAT) redefine + to __dpd_fixunsddti. + * soft-fp/fixunstdti.c (__bid_fixtdbitint): For + !defined(ENABLE_DECIMAL_BID_FORMAT) redefine to __dpd_fixtdbitint. + (__bid_fixunstdti): For !defined(ENABLE_DECIMAL_BID_FORMAT) redefine + to __dpd_fixunstdti. + * soft-fp/floatbitintsd.c (__bid_floatbitintsd): For + !defined(ENABLE_DECIMAL_BID_FORMAT) redefine to __dpd_floatbitintsd. + Add DPD support. Avoid calling __builtin_clzll with 0 argument. Fix + big-endian support. + * soft-fp/floatbitintdd.c (__bid_floatbitintdd): For + !defined(ENABLE_DECIMAL_BID_FORMAT) redefine to __dpd_floatbitintdd. + Add DPD support. Avoid calling __builtin_clzll with 0 argument. Fix + big-endian support. + * soft-fp/floatbitinttd.c (__bid_floatbitinttd): For + !defined(ENABLE_DECIMAL_BID_FORMAT) redefine to __dpd_floatbitinttd. + Add DPD support. Avoid calling __builtin_clzll with 0 argument. Fix + big-endian support. + * soft-fp/floattisd.c (__bid_floatbitintsd): For + !defined(ENABLE_DECIMAL_BID_FORMAT) redefine to __dpd_floatbitintsd. + (__bid_floattisd): For !defined(ENABLE_DECIMAL_BID_FORMAT) redefine to + __dpd_floattisd. + * soft-fp/floattidd.c (__bid_floatbitintdd): For + !defined(ENABLE_DECIMAL_BID_FORMAT) redefine to __dpd_floatbitintdd. + (__bid_floattidd): For !defined(ENABLE_DECIMAL_BID_FORMAT) redefine to + __dpd_floattidd. + * soft-fp/floattitd.c (__bid_floatbitinttd): For + !defined(ENABLE_DECIMAL_BID_FORMAT) redefine to __dpd_floatbitinttd. + (__bid_floattitd): For !defined(ENABLE_DECIMAL_BID_FORMAT) redefine to + __dpd_floattitd. + * soft-fp/floatuntisd.c (__bid_floatbitintsd): For + !defined(ENABLE_DECIMAL_BID_FORMAT) redefine to __dpd_floatbitintsd. + (__bid_floatuntisd): For !defined(ENABLE_DECIMAL_BID_FORMAT) redefine + to __dpd_floatuntisd. + * soft-fp/floatuntidd.c (__bid_floatbitintdd): For + !defined(ENABLE_DECIMAL_BID_FORMAT) redefine to __dpd_floatbitintdd. + (__bid_floatuntidd): For !defined(ENABLE_DECIMAL_BID_FORMAT) redefine + to __dpd_floatuntidd. + * soft-fp/floatuntitd.c (__bid_floatbitinttd): For + !defined(ENABLE_DECIMAL_BID_FORMAT) redefine to __dpd_floatbitinttd. + (__bid_floatuntitd): For !defined(ENABLE_DECIMAL_BID_FORMAT) redefine + to __dpd_floatuntitd. + 2025-05-25 LIU Hao <lh_mo...@126.com> * config.host: Enable mcf thread model for aarch64-*-mingw*. diff --git a/libgcc/config/avr/libf7/ChangeLog b/libgcc/config/avr/libf7/ChangeLog index 1b8a29af64f9..b19b5b489bed 100644 --- a/libgcc/config/avr/libf7/ChangeLog +++ b/libgcc/config/avr/libf7/ChangeLog @@ -1,3 +1,18 @@ +2025-05-27 Georg-Johann Lay <a...@gjlay.de> + + PR target/120442 + * libf7-common.mk (LIBF_C_PARTS, m_ddd): Add fdim. + * libf7.h (f7_fdim): New proto. + * libf7.c (f7_fdim): New function. + * f7renames.sh (f7_fdim): Add rename. + * f7-wraps.h: Rebuild + * f7-renames.h: Rebuild + +2025-05-27 Georg-Johann Lay <a...@gjlay.de> + + PR target/120441 + * libf7.c (f7_exp): Limit aa->expo to 10 (not to 9). + 2025-03-22 Georg-Johann Lay <a...@gjlay.de> * t-libf7 (libgcc-objects): Only add objects when building diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index c9e2fc0e9c7c..ba4a3983b58a 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,39 @@ +2025-05-27 Jonathan Wakely <jwak...@redhat.com> + + * testsuite/17_intro/names.cc [_AIX] (n): Undefine. + * testsuite/experimental/names.cc [_AIX] (ptr): Undefine. + +2025-05-27 Jonathan Wakely <jwak...@redhat.com> + + * testsuite/std/format/debug.cc: Disable for targets with 16-bit + wchar_t. + * testsuite/std/format/functions/format.cc: Use -DUNICODE for + targets with 32-bit wchar_t. + (test_unicode) [UNICODE]: Only run checks when UNICODE is + defined. + +2025-05-27 Jonathan Wakely <jwak...@redhat.com> + + * include/Makefile.in: Regenerate. + +2025-05-27 Jonathan Wakely <jwak...@redhat.com> + + PR libstdc++/96710 + * include/bits/std_abs.h [__SIZEOF_INT128__] (abs(__int128)): + Define. + [_GLIBCXX_USE_FLOAT128] (abs(__float128)): Enable definition for + strict modes. + * testsuite/26_numerics/headers/cmath/82644.cc: Use strict_std + instead of defining __STRICT_ANSI__. + * testsuite/26_numerics/headers/cstdlib/abs128.cc: New test. + +2025-05-27 Luc Grosheintz <luc.groshei...@gmail.com> + + * include/std/mdspan: Value initialize the array storing the + dynamic extents. + * testsuite/23_containers/mdspan/extents/ctor_default.cc: New + test. + 2025-05-26 Tomasz KamiĆski <tkami...@redhat.com> PR libstdc++/119152