[gcc r15-653] Daily bump.

GCC Administrator gccadmin@gcc.gnu.org
Sun May 19 18:15:50 GMT 2024


https://gcc.gnu.org/g:8713d5eec23864e6ddd879191276d67fdd79b9bc

commit r15-653-g8713d5eec23864e6ddd879191276d67fdd79b9bc
Author: GCC Administrator <gccadmin@gcc.gnu.org>
Date:   Sun May 19 18:15:28 2024 +0000

    Daily bump.

Diff:
---
 ChangeLog               |   4 +
 gcc/ChangeLog           | 483 ++++++++++++++++++++++++++++++++++++++
 gcc/DATESTAMP           |   2 +-
 gcc/ada/ChangeLog       | 606 ++++++++++++++++++++++++++++++++++++++++++++++++
 gcc/analyzer/ChangeLog  |  10 +
 gcc/c-family/ChangeLog  |   6 +
 gcc/cp/ChangeLog        |   5 +
 gcc/fortran/ChangeLog   |  15 ++
 gcc/po/ChangeLog        |   4 +
 gcc/testsuite/ChangeLog | 191 +++++++++++++++
 libcpp/ChangeLog        |   5 +
 libgcc/ChangeLog        |   5 +
 libstdc++-v3/ChangeLog  |  15 ++
 13 files changed, 1350 insertions(+), 1 deletion(-)

diff --git a/ChangeLog b/ChangeLog
index cfe02776038e..703b3fbb18fc 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2024-05-17  Levy Hsu  <admin@levyhsu.com>
+
+	* MAINTAINERS: Add myself.
+
 2024-05-14  Filip Kastl  <fkastl@suse.cz>
 
 	* MAINTAINERS: Use tabs between name and email.
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index c929fdd43589..bfd2d42e287d 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,486 @@
+2024-05-19  Jeff Law  <jlaw@ventanamicro.com>
+
+	PR target/115142
+	* config/riscv/riscv.cc (mem_shadd_or_shadd_rtx_p): Make sure
+	shifted argument is a register.
+
+2024-05-19  Eric Botcazou  <ebotcazou@adacore.com>
+
+	* optabs-query.cc (can_mult_highpart_p): Test for the existence of
+	a wider mode instead of requiring it.
+
+2024-05-19  Roger Sayle  <roger@nextmovesoftware.com>
+
+	* config/nvptx/nvptx.md (popcount<mode>2): Split into...
+	(popcountsi2): define_insn handling SImode popcount.
+	(popcountdi2): define_insn handling DImode popcount, with an
+	explicit truncate:SI to produce an SImode result.
+
+2024-05-18  Palmer Dabbelt  <palmer@rivosinc.com>
+
+	* config/riscv/riscv.opt: Add -mno-fence-tso.
+	* config/riscv/sync-rvwmo.md (mem_thread_fence_rvwmo): Respect
+	-mno-fence-tso.
+	* doc/invoke.texi (RISC-V): Document -mno-fence-tso.
+
+2024-05-18  Jeff Law  <jlaw@ventanamicro.com>
+
+	* config/riscv/riscv.md: Add new patterns to allow selection
+	between (x << C1) + C2 vs (x + C2') << C1 depending on the
+	cost C2 vs C2'.
+
+2024-05-18  Xiao Zeng  <zengxiao@eswincomputing.com>
+
+	* config/riscv/riscv.cc (riscv_legitimize_move): Optimize movbf
+	with Nan-boxing value.
+	* config/riscv/riscv.md (*movhf_softfloat_boxing): Expand movbf
+	with Nan-boxing value.
+	(*mov<HFBF:mode>_softfloat_boxing): Ditto.
+	with Nan-boxing value.
+	(*movbf_softfloat_boxing): Delete abandon pattern.
+
+2024-05-18  Xiao Zeng  <zengxiao@eswincomputing.com>
+
+	* config/riscv/riscv-builtins.cc (riscv_init_builtin_types):
+	Modify _Bfloat16 to __bf16.
+	* config/riscv/riscv.cc (riscv_mangle_type): Ditto.
+
+2024-05-18  Pan Li  <pan2.li@intel.com>
+
+	PR target/51492
+	PR target/112600
+	* config/riscv/autovec.md (usadd<mode>3): New pattern expand for
+	the unsigned SAT_ADD in vector mode.
+	* config/riscv/riscv-protos.h (riscv_expand_usadd): New func decl
+	to expand usadd<mode>3 pattern.
+	(expand_vec_usadd): Ditto but for vector.
+	* config/riscv/riscv-v.cc (emit_vec_saddu): New func impl to emit
+	the vsadd insn.
+	(expand_vec_usadd): New func impl to expand usadd<mode>3 for vector.
+	* config/riscv/riscv.cc (riscv_expand_usadd): New func impl to
+	expand usadd<mode>3 for scalar.
+	* config/riscv/riscv.md (usadd<mode>3): New pattern expand for
+	the unsigned SAT_ADD in scalar mode.
+	* config/riscv/vector.md: Allow VLS mode for vsaddu.
+
+2024-05-17  David Malcolm  <dmalcolm@redhat.com>
+
+	* common.opt.urls: Regenerate to add
+	fdiagnostics-show-event-links.
+
+2024-05-17  Robin Dapp  <rdapp@ventanamicro.com>
+
+	* config/riscv/riscv-protos.h (struct common_vector_cost): Add
+	segment_permute cost.
+	* config/riscv/riscv-vector-costs.cc (costs::adjust_stmt_cost):
+	Handle segment loads/stores.
+	* config/riscv/riscv.cc: Initialize segment_permute_[2-8] to 1.
+
+2024-05-17  Robin Dapp  <rdapp@ventanamicro.com>
+
+	PR middle-end/113474
+	* internal-fn.cc (expand_vec_cond_mask_optab_fn):  Remove
+	force_regs.
+
+2024-05-17  Tom Tromey  <tromey@adacore.com>
+
+	* dwarf2out.cc (gen_namespace_die): Use DW_TAG_module for Ada.
+
+2024-05-17  David Malcolm  <dmalcolm@redhat.com>
+
+	* common.opt (fdiagnostics-show-event-links): New option.
+	* diagnostic-label-effects.h: New file.
+	* diagnostic-path.h (diagnostic_event::connect_to_next_event_p):
+	New pure virtual function.
+	(simple_diagnostic_event::connect_to_next_event_p): Implement it.
+	(simple_diagnostic_event::connect_to_next_event): New.
+	(simple_diagnostic_event::m_connected_to_next_event): New field.
+	(simple_diagnostic_path::connect_to_next_event): New decl.
+	* diagnostic-show-locus.cc: Include "text-art/theme.h" and
+	"diagnostic-label-effects.h".
+	(colorizer::set_cfg_edge): New.
+	(layout::m_fallback_theme): New field.
+	(layout::m_theme): New field.
+	(layout::m_effect_info): New field.
+	(layout::m_link_lhs_state): New enum and field.
+	(layout::m_link_rhs_column): New field.
+	(layout_range::has_in_edge): New.
+	(layout_range::has_out_edge): New.
+	(layout::layout): Add "effect_info" optional param.  Initialize
+	m_theme, m_link_lhs_state, and m_link_rhs_column.
+	(layout::maybe_add_location_range): Remove stray "FIXME" from
+	leading comment.
+	(layout::print_source_line): Replace space after margin with a
+	call to print_leftmost_column.
+	(layout::print_leftmost_column): New.
+	(layout::start_annotation_line): Make non-const.  Gain
+	responsibility for printing the leftmost column after the margin.
+	(layout::print_annotation_line): Drop pp_space, as this is now
+	added by start_annotation_line.
+	(line_label::line_label): Add "has_in_edge" and "has_out_edge"
+	params and initialize...
+	(line_label::m_has_in_edge): New field.
+	(line_label::m_has_out_edge): New field.
+	(layout::print_any_labels): Pass edge information to line_label
+	ctor.  Keep track of in-edges and out-edges, adding visualizations
+	of these links between labels.
+	(layout::print_leading_fixits):  Drop pp_character, as this is now
+	added by start_annotation_line.
+	(layout::print_trailing_fixits): Fix off-by-one errors in column
+	calculation.
+	(layout::move_to_column): Add comment about debugging.
+	(layout::show_ruler): Make non-const.  Drop pp_space calls, as
+	this is now added by start_annotation_line.
+	(layout::print_line): Call print_any_right_to_left_edge_lines.
+	(layout::print_any_right_to_left_edge_lines): New.
+	(layout::update_any_effects): New.
+	(gcc_rich_location::add_location_if_nearby): Initialize
+	loc_range.m_label.
+	(diagnostic_context::maybe_show_locus): Add "effects" param and
+	pass it to diagnostic_context::show_locus.
+	(diagnostic_context::show_locus): Add "effects" param, passing it
+	to layout's ctor.  Call update_any_effects on the layout after
+	printing the lines.
+	(selftest::test_layout_x_offset_display_utf8): Update expected
+	result for eliminated trailing newline.
+	(selftest::test_layout_x_offset_display_utf8): Likewise.
+	(selftest::test_layout_x_offset_display_tab): Likewise.
+	* diagnostic.cc (diagnostic_context::initialize): Initialize
+	m_source_printing.show_event_links_p.
+	(simple_diagnostic_path::connect_to_next_event): New.
+	(simple_diagnostic_event::simple_diagnostic_event): Initialize
+	m_connected_to_next_event.
+	* diagnostic.h (class diagnostic_source_effect_info): New forward
+	decl.
+	(diagnostic_source_printing_options::show_event_links_p): New
+	field.
+	(diagnostic_context::maybe_show_locus): Add optional "effect_info"
+	param.
+	(diagnostic_context::show_locus): Add "effect_info" param.
+	(diagnostic_show_locus): Add optional "effect_info" param.
+	* doc/invoke.texi: Add -fno-diagnostics-show-event-links.
+	* lto-wrapper.cc (merge_and_complain): Add
+	OPT_fdiagnostics_show_event_links to switch.
+	(append_compiler_options): Likewise.
+	(append_diag_options): Likewise.
+	* opts-common.cc (decode_cmdline_options_to_array): Add
+	"-fno-diagnostics-show-event-links" to -fdiagnostics-plain-output.
+	* opts.cc (common_handle_option): Add case for
+	OPT_fdiagnostics_show_event_links.
+	* text-art/theme.cc (ascii_theme::get_cppchar): Handle
+	cell_kind::CFG_*.
+	(unicode_theme::get_cppchar): Likewise.
+	* text-art/theme.h (theme::cell_kind): Add CFG_*.
+	* toplev.cc (general_init): Initialize
+	global_dc->m_source_printing.show_event_links_p.
+	* tree-diagnostic-path.cc: Define INCLUDE_ALGORITHM,
+	INCLUDE_MEMORY, and INCLUDE_STRING.  Include
+	"diagnostic-label-effects.h".
+	(path_label::path_label): Initialize m_effects.
+	(path_label::get_effects): New.
+	(class path_label::path_label_effects): New.
+	(path_label::m_effects): New field.
+	(class per_thread_summary): Add "friend struct event_range;".
+	(per_thread_summary::per_thread_summary): Initialize m_last_event.
+	(per_thread_summary::m_last_event): New field.
+	(struct event_range::per_source_line_info): New.
+	(event_range::event_range): Make "t" non-const.  Add
+	"show_event_links" param and use it to initialize
+	m_show_event_links.  Add info for initial event.
+	(event_range::get_per_source_line_info): New.
+	(event_range::maybe_add_event): Verify compatibility of the new
+	label and existing labels with respect to the link-printing code.
+	Update per-source-line info when an event is added.
+	(event_range::print): Add"effect_info" param and pass to
+	diagnostic_show_locus.
+	(event_range::m_per_thread_summary): Make non-const.
+	(event_range::m_source_line_info_map): New field.
+	(event_range::m_show_event_links): New field.
+	(path_summary::path_summary): Add "show_event_links" optional
+	param, passing it to event_range ctor calls. Update
+	pts.m_last_event.
+	(thread_event_printer::print_swimlane_for_event_range): Add
+	"effect_info" param and pass it to range->print.
+	(print_path_summary_as_text): Keep track of the column for any
+	out-edges at the end of printing each event_range and use as
+	the leading in-edge for the next event_range.
+	(default_tree_diagnostic_path_printer): Pass in show_event_links_p
+	to path_summary ctor.
+	(selftest::path_events_have_column_data_p): New.
+	(class selftest::control_flow_test): New.
+	(selftest::test_control_flow_1): New.
+	(selftest::test_control_flow_2): New.
+	(selftest::test_control_flow_3): New.
+	(selftest::assert_cfg_edge_path_streq): New.
+	(ASSERT_CFG_EDGE_PATH_STREQ): New macro.
+	(selftest::test_control_flow_4): New.
+	(selftest::test_control_flow_5): New.
+	(selftest::test_control_flow_6): New.
+	(selftest::control_flow_tests): New.
+	(selftest::tree_diagnostic_path_cc_tests): Disable colorization on
+	global_dc's printer.  Convert event_pp to a std::unique_ptr. Call
+	control_flow_tests via for_each_line_table_case.
+	(gen_command_line_string): Likewise.
+
+2024-05-17  Uros Bizjak  <ubizjak@gmail.com>
+
+	PR middle-end/112600
+	* config/i386/mmx.md (<insn><mode>3): New expander.
+	* config/i386/sse.md
+	(<sse2_avx2>_<sat_plusminus:insn><mode>3<mask_name>):
+	Rename expander to <sat_plusminus:insn><mode>3<mask_name>.
+	(<umaxmin:code><mode>3): Update for rename.
+	* config/i386/i386-builtin.def: Update for rename.
+
+2024-05-17  Aldy Hernandez  <aldyh@redhat.com>
+
+	PR middle-end/115131
+	* value-range.cc (prange::intersect): Set VARYING if intersection
+	of bitmasks made the range span the entire domain.
+	(range_tests_misc): New test.
+
+2024-05-17  Alexander Monakov  <amonakov@ispras.ru>
+
+	PR c++/114480
+	* tree-into-ssa.cc (prune_unused_phi_nodes): Add dfs_out entries
+	to the 'defs' array in the reverse order.
+
+2024-05-17  Aldy Hernandez  <aldyh@redhat.com>
+
+	PR middle-end/115128
+	* ipa-cp.cc (ipa_value_range_from_jfunc): Check for undefined_p
+	before looking at type.
+	(propagate_vr_across_jump_function): Same.
+
+2024-05-17  Richard Biener  <rguenther@suse.de>
+
+	PR middle-end/115110
+	* tree-ssa-alias.cc (view_converted_memref_p): Fix.
+
+2024-05-17  Eric Botcazou  <ebotcazou@adacore.com>
+
+	* expmed.h (expmed_mult_highpart_optab): Declare.
+	* expmed.cc (expmed_mult_highpart_optab): Remove static keyword.
+	Do not assume that OP1 is a constant integer.  Fix pasto.
+	(expmed_mult_highpart): Pass OP1 narrowed to MODE in all the calls
+	to expmed_mult_highpart_optab.
+	* optabs-query.cc (can_mult_highpart_p): Use 2 for integer widening
+	and shift subsequent values accordingly.
+	* optabs.cc (expand_mult_highpart): Call expmed_mult_highpart_optab
+	when can_mult_highpart_p returns 2 and adjust to above change.
+
+2024-05-17  Richard Biener  <rguenther@suse.de>
+
+	* tree-ssa-alias.h (pt_solution_includes_const_pool): Declare.
+	* tree-ssa-alias.cc (ptrs_compare_unequal): Use
+	pt_solution_includes_const_pool.
+	* tree-ssa-structalias.cc (pt_solution_includes_const_pool): New.
+
+2024-05-17  Alexandre Oliva  <oliva@adacore.com>
+
+	* common.opt (freg-struct-return): Make it explicitly
+	fpcc-struct-return's NegativeAlias.  Copy Optimization...
+	(freg-struct-return): ... here.
+
+2024-05-17  Pan Li  <pan2.li@intel.com>
+
+	* config/riscv/.riscv.cc.swo: Removed.
+	* config/riscv/j: Removed.
+
+2024-05-16  Pan Li  <pan2.li@intel.com>
+
+	* config/riscv/autovec-opt.md(*vcond_mask_len_popcount_<VB_VLS:mode><P:mode>):
+	New pattern of vcond_mask_len_popcount for vector bool mode.
+	* config/riscv/autovec.md (vcond_mask_len_<mode>): New pattern of
+	vcond_mask_len for vector bool mode.
+	(cbranch<mode>4): New pattern for vector bool mode.
+	* config/riscv/vector-iterators.md: Add new unspec UNSPEC_SELECT_MASK.
+	* config/riscv/vector.md (@pred_popcount<VB:mode><P:mode>): Add VLS mode
+	to popcount pattern.
+	(@pred_popcount<VB_VLS:mode><P:mode>): Ditto.
+
+2024-05-16  Jan Hubicka  <jh@suse.cz>
+
+	PR ipa/113787
+	* ipa-fnsummary.cc (points_to_local_or_readonly_memory_p): Do not
+	look into TARGET_MEM_REFS with constant opreand 0.
+
+2024-05-16  Richard Biener  <rguenther@suse.de>
+
+	PR tree-optimization/13962
+	PR tree-optimization/96564
+	* tree-ssa-alias.h (pt_solution::const_pool): New flag.
+	* tree-ssa-alias.cc (ptrs_compare_unequal): Handle pointer-pointer
+	compares.
+	(dump_points_to_solution): Dump the const_pool flag, fix guard
+	of flag dumping.
+	* gimple-pretty-print.cc (pp_points_to_solution): Likewise.
+	* tree-ssa-structalias.cc (find_what_var_points_to): Set
+	the const_pool flag for STRING.
+	(pt_solution_ior_into): Handle the const_pool flag.
+	(ipa_escaped_pt): Initialize it.
+
+2024-05-16  Richard Biener  <rguenther@suse.de>
+
+	* tree-ssa-structalias.cc (get_constraint_for_1): For
+	volatile referenced or decls use ANYTHING.
+
+2024-05-16  Pan Li  <pan2.li@intel.com>
+
+	* tree-vect-loop.cc (vect_gen_loop_len_mask): New func to gen
+	the loop len mask.
+	* tree-vect-stmts.cc (vectorizable_early_exit): Invoke the
+	vect_gen_loop_len_mask for 1 or more stmt(s).
+	* tree-vectorizer.h (vect_gen_loop_len_mask): New func decl
+	for vect_gen_loop_len_mask.
+
+2024-05-16  Pan Li  <pan2.li@intel.com>
+
+	PR target/51492
+	PR target/112600
+	* tree-vect-patterns.cc (gimple_unsigned_integer_sat_add): New
+	func decl generated by match.pd match.
+	(vect_recog_sat_add_pattern): New func impl to recog the pattern
+	for unsigned SAT_ADD.
+
+2024-05-16  Pan Li  <pan2.li@intel.com>
+
+	PR target/51492
+	PR target/112600
+	* internal-fn.cc (commutative_binary_fn_p): Add type IFN_SAT_ADD
+	to the return true switch case(s).
+	* internal-fn.def (SAT_ADD):  Add new signed optab SAT_ADD.
+	* match.pd: Add unsigned SAT_ADD match(es).
+	* optabs.def (OPTAB_NL): Remove fixed-point limitation for
+	us/ssadd.
+	* tree-ssa-math-opts.cc (gimple_unsigned_integer_sat_add): New
+	extern func decl generated in match.pd match.
+	(match_saturation_arith): New func impl to match the saturation arith.
+	(math_opts_dom_walker::after_dom_children): Try match saturation
+	arith when IOR expr.
+
+2024-05-16  Aldy Hernandez  <aldyh@redhat.com>
+
+	PR tree-optimization/114985
+	* gimple-range-op.cc: Remove pointers_handled_p.
+	* ipa-cp.cc (ipa_value_range_from_jfunc): Skip range folding if
+	operands don't match.
+	(propagate_vr_across_jump_function): Same.
+	* range-op-mixed.h: Remove pointers_handled_p and tweak
+	operand_check_p.
+	* range-op-ptr.cc (range_operator::pointers_handled_p): Remove.
+	(pointer_plus_operator::pointers_handled_p): Remove.
+	(class operator_pointer_diff): Remove pointers_handled_p.
+	(operator_pointer_diff::pointers_handled_p): Remove.
+	(operator_identity::pointers_handled_p): Remove.
+	(operator_cst::pointers_handled_p): Remove.
+	(operator_cast::pointers_handled_p): Remove.
+	(operator_min::pointers_handled_p): Remove.
+	(operator_max::pointers_handled_p): Remove.
+	(operator_addr_expr::pointers_handled_p): Remove.
+	(operator_bitwise_and::pointers_handled_p): Remove.
+	(operator_bitwise_or::pointers_handled_p): Remove.
+	(operator_equal::pointers_handled_p): Remove.
+	(operator_not_equal::pointers_handled_p): Remove.
+	(operator_lt::pointers_handled_p): Remove.
+	(operator_le::pointers_handled_p): Remove.
+	(operator_gt::pointers_handled_p): Remove.
+	(operator_ge::pointers_handled_p): Remove.
+	* range-op.cc (TRAP_ON_UNHANDLED_POINTER_OPERATORS): Remove.
+	(range_op_handler::lhs_op1_relation): Remove pointers_handled_p checks.
+	(range_op_handler::lhs_op2_relation): Same.
+	(range_op_handler::op1_op2_relation): Same.
+	* range-op.h: Remove RO_* declarations.
+
+2024-05-16  Aldy Hernandez  <aldyh@redhat.com>
+
+	PR tree-optimization/114985
+	* vr-values.cc (simplify_using_ranges::fold_cond_with_ops): Use
+	boolean type when folding conditionals.
+
+2024-05-16  Richard Biener  <rguenther@suse.de>
+
+	PR tree-optimization/79958
+	PR tree-optimization/109087
+	PR tree-optimization/100314
+	PR tree-optimization/114774
+	* tree-ssa-dse.cc (dse_classify_store): New forwarder.
+	(dse_classify_store): Add arguments cnt and visited, recurse
+	to track multiple paths when we end up with multiple defs.
+
+2024-05-16  David Malcolm  <dmalcolm@redhat.com>
+
+	* text-art/theme.cc (ascii_theme::get_cppchar): Add
+	cell_kind::INTERPROCEDURAL_*.
+	(unicode_theme::get_cppchar): Likewise.
+	* text-art/theme.h (theme::cell_kind): Likewise.
+	* tree-diagnostic-path.cc:
+	(thread_event_printer::print_swimlane_for_event_range): Use the
+	above to get characters for indicating interprocedural stack
+	depth activity, falling back to ascii.
+	(selftest::test_interprocedural_path_1): Test with both ascii
+	and unicode themes.
+	(selftest::test_interprocedural_path_2): Likewise.
+	(selftest::test_recursion): Likewise.
+
+2024-05-16  David Malcolm  <dmalcolm@redhat.com>
+
+	* tree-diagnostic-path.cc: Include "text-art/theme.h".
+	(path_label::get_text): If the event has
+	diagnostic_event::VERB_danger, and the theme enables emojis, then
+	add a warning emoji between the event number and the event text.
+
+2024-05-16  David Malcolm  <dmalcolm@redhat.com>
+
+	* tree-diagnostic-path.cc (per_thread_summary::interprocedural_p):
+	New.
+	(thread_event_printer::print_swimlane_for_event_range): Don't
+	indent and print the stack depth line if this thread's events are
+	purely intraprocedural.
+	(selftest::test_intraprocedural_path): Update expected output.
+
+2024-05-16  David Malcolm  <dmalcolm@redhat.com>
+
+	* diagnostic-path.h: Update leading comment to reflect
+	intraprocedural cases.  Fix typo in comment.
+	* doc/invoke.texi: Update intraprocedural example.
+
+2024-05-16  David Malcolm  <dmalcolm@redhat.com>
+
+	* diagnostic-show-locus.cc: Define INCLUDE_VECTOR and include
+	"text-art/types.h".
+	(line_label::line_label): Drop "policy" argument.  Use
+	styled_string::calc_canvas_width when computing m_display_width,
+	as this skips SGR codes.
+	(layout::print_any_labels): Update for line_label ctor change.
+	(selftest::test_one_liner_labels_utf8): Update expected text to
+	reflect that the labels can fit on one line if we don't get
+	confused by SGR colorization codes.
+
+2024-05-16  Xiao Zeng  <zengxiao@eswincomputing.com>
+
+	* common/config/riscv/riscv-common.cc:
+	(riscv_implied_info): Add zvfbfwma item.
+	(riscv_ext_version_table): Ditto.
+	(riscv_ext_flag_table): Ditto.
+	* config/riscv/riscv.opt:
+	(MASK_ZVFBFWMA): New macro.
+	(TARGET_ZVFBFWMA): Ditto.
+
+2024-05-16  liuhongt  <hongtao.liu@intel.com>
+
+	PR target/114514
+	* config/i386/i386-expand.cc (ix86_expand_vecop_qihi_partial):
+	Set d.one_operand_p to true when TARGET_SSSE3.
+
+2024-05-16  liuhongt  <hongtao.liu@intel.com>
+
+	PR target/114514
+	* config/i386/i386-expand.cc
+	(ix86_expand_vec_shift_qihi_constant): Optimize ashift >> 7 to
+	vpcmpgtb.
+	(ix86_expand_vecop_qihi_partial): Ditto.
+
 2024-05-15  Jeff Law  <jlaw@ventanamicro.com>
 
 	* config/riscv/riscv-string.cc: Add missing hunk from last change.
diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP
index 009b2a2312c8..563336a826d0 100644
--- a/gcc/DATESTAMP
+++ b/gcc/DATESTAMP
@@ -1 +1 @@
-20240516
+20240519
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index f0ec83e56d39..15712e9cb05c 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -1,3 +1,609 @@
+2024-05-17  Eric Botcazou  <ebotcazou@adacore.com>
+
+	PR ada/115133
+	* libgnarl/s-osinte__solaris.ads (mutex_t): Fix typo.
+	* libgnarl/s-taprop__solaris.adb (Record_Lock): Add conversion.
+	(Check_Sleep): Likewise.
+	(Record_Wakeup): Likewise.
+	(Check_Unlock): Likewise.
+	* libgnarl/s-tasini.adb (Initialize_RTS_Lock): Add pragma Import
+	on the overlaid variable.
+	(Finalize_RTS_Lock): Likewise.
+	(Acquire_RTS_Lock): Likewise.
+	(Release_RTS_Lock): Likewise.
+	* libgnarl/s-taspri__solaris.ads (To_RTS_Lock_Ptr): New instance
+	of Ada.Unchecked_Conversion.
+	* libgnat/s-oslock__solaris.ads: Add with clause for
+	Ada.Unchecked_Conversion.
+	(array_type_9): Add missing name qualification.
+	(record_type_3): Likewise.
+	(mutex_t): Fix formatting.
+
+2024-05-17  Viljar Indus  <indus@adacore.com>
+
+	* exp_aggr.adb (Expand_Container_Aggregate):
+	Derive the size for iterable aggregates in the case of
+	one-dimensional array objects.
+
+2024-05-17  Ronan Desplanques  <desplanques@adacore.com>
+
+	* exp_aggr.adb (Aggr_Size_OK): Remove workaround and extend
+	comment.
+
+2024-05-17  Eric Botcazou  <ebotcazou@adacore.com>
+
+	* bindgen.adb (Gen_Adainit): Generate declaration and call to the
+	imported procedure __gnat_tasking_runtime_initialize if need be.
+	* libgnat/s-soflin.ads (Locking Soft-Links): Add commentary.
+	* libgnarl/s-tasini.adb (Tasking_Runtime_Initialize): New procedure
+	exported as __gnat_tasking_runtime_initialize.  Initialize RTS_Lock
+	manipulation routines here instead of...
+	(Init_RTS): ...here.
+
+2024-05-17  Steve Baird  <baird@adacore.com>
+
+	* scng.adb (scan): When checking for an unprocessed preprocessor
+	directive, take into account the preprocessor's rules about case
+	insensitivity and about white space between the '#' and the
+	keyword.
+
+2024-05-17  Eric Botcazou  <ebotcazou@adacore.com>
+
+	* libgnarl/s-taspri__mingw.ads: Add clause for System.OS_Interface.
+	(Private_Data): Change type of Thread component.
+
+2024-05-17  Eric Botcazou  <ebotcazou@adacore.com>
+
+	* libgnat/g-alvevi.ads: Add pragma Universal_Aliasing for all the
+	view types.
+	* libgnat/s-stratt.ads: Likewise for Fat_Pointer type.
+
+2024-05-17  Eric Botcazou  <ebotcazou@adacore.com>
+
+	* Makefile.rtl (GNATRTL_NONTASKING_OBJS): Add s-oslock$(objext).
+	(LIBGNAT_TARGET_PAIRS): Use s-oslock__dummy.ads by default.
+	Set specific s-oslock.ads source file for all the platforms.
+	* exp_ch7.ads (Preload_Finalization_Collection): New procedure.
+	* exp_ch7.adb (Allows_Finalization_Collection): Return False if
+	System.Finalization_Primitives has not been preloaded.
+	(Preload_Finalization_Collection): New procedure.
+	* opt.ads (Interface_Seen): New boolean variable.
+	* s-oscons-tmplt.c: Use "N" string for pragma Style_Checks.
+	* scng.adb (Scan): Set Interface_Seen upon seeing "interface".
+	* sem_ch10.adb: Add clause for Exp_Ch7.
+	(Analyze_Compilation_Unit): Call Preload_Finalization_Collection
+	after the context of the unit is analyzed.
+	* libgnarl/a-rttiev.adb: Add with clause for System.OS_Locks and
+	alphabetize others.
+	(Event_Queue_Lock): Adjust qualified name of subtype.
+	* libgnarl/s-osinte__aix.ads: Add with clause for System.OS_Locks
+	and change pthread_mutex_t into a local subtype.
+	* libgnarl/s-osinte__android.ads: Likewise.
+	* libgnarl/s-osinte__darwin.ads: Likewise.
+	* libgnarl/s-osinte__dragonfly.ads: Likewise.
+	* libgnarl/s-osinte__freebsd.ads: Likewise.
+	* libgnarl/s-osinte__gnu.ads: Likewise.
+	* libgnarl/s-osinte__hpux-dce.ads: Likewise.
+	* libgnarl/s-osinte__hpux.ads: Add Likewise.
+	* libgnarl/s-osinte__kfreebsd-gnu.ads: Likewise.
+	* libgnarl/s-osinte__linux.ads: Likewise.
+	* libgnarl/s-osinte__lynxos178e.ads: Likewise.
+	* libgnarl/s-osinte__qnx.ads: Likewise.
+	* libgnarl/s-osinte__rtems.ads: Likewise.
+	* libgnarl/s-osinte__mingw.ads: Add with clause for System.OS_Locks
+	and change CRITICAL_SECTION into a local subtype.  Add declarations
+	for imported procedures dealing with CRITICAL_SECTION.
+	* libgnarl/s-osinte__solaris.ads: Add with clause for System.OS_Locks
+	and change mutex_t into a local subtype.
+	* libgnarl/s-osinte__vxworks.ads: Add missing blank line.
+	* libgnarl/s-taprop.ads: Alphabetize clauses and package renamings.
+	Use qualified name for RTS_Lock throughout.
+	* libgnarl/s-taprop__dummy.adb: Add use clause for System.OS_Locks
+	and alphabetize others.
+	* libgnarl/s-taprop__hpux-dce.adb: Likewise.
+	* libgnarl/s-taprop__linux.adb: Likewise.
+	* libgnarl/s-taprop__posix.adb: Likewise.
+	* libgnarl/s-taprop__qnx.adb: Likewise.
+	* libgnarl/s-taprop__rtems.adb: Likewise.
+	* libgnarl/s-taprop__solaris.adb: Likewise.
+	* libgnarl/s-taprop__vxworks.adb: Likewise.
+	* libgnarl/s-taprop__mingw.adb: Likewise.  Remove declarations for
+	imported procedures dealing with CRITICAL_SECTION.
+	* libgnarl/s-tarest.adb: Add with clause for System.OS_Locks and
+	alphabetize others.
+	(Global_Task_Lock): Adjust qualified name of subtype.
+	* libgnarl/s-tasini.adb: Add clause for System.OS_Locks.
+	(Initialize_RTS_Lock): New procedure.
+	(Finalize_RTS_Lock): Likewise.
+	(Acquire_RTS_Lock): Likewise.
+	(Release_RTS_Lock): Likewise.
+	(Init_RTS): Add compile-time assertions for RTS_Lock types.
+	Set the soft links for the RTS lock manipulation routines.
+	* libgnarl/s-taspri__dummy.ads: Add with clause for System.OS_Locks.
+	(RTS_Lock): Delete and adjust throughout accordingly.
+	* libgnarl/s-taspri__hpux-dce.ads: Likewise.
+	* libgnarl/s-taspri__lynxos.ads: Likewise.
+	* libgnarl/s-taspri__mingw.ads: Likewise.
+	* libgnarl/s-taspri__posix-noaltstack.ads: Likewise.
+	* libgnarl/s-taspri__posix.ads: Likewise.
+	* libgnarl/s-taspri__solaris.ads: Likewise.
+	* libgnarl/s-taspri__vxworks.ads: Likewise.
+	* libgnat/s-finpri.ads: Add clause for System.OS_Locks.
+	(Finalization_Collection): Change type of Lock.
+	* libgnat/s-finpri.adb (Initialize): Call Initialize_RTS_Lock.
+	(Lock_Collection): Call Acquire_RTS_Lock.
+	(Unlock_Collection): Call Release_RTS_Lock.
+	* libgnat/s-oslock__dummy.ads: New file.
+	* libgnat/s-oslock__hpux-dce.ads: Likewise.
+	* libgnat/s-oslock__mingw.ads: Likewise.
+	* libgnat/s-oslock__posix.ads: Likewise.
+	* libgnat/s-oslock__solaris.ads: Likewise.
+	* libgnat/s-oslock__vxworks.ads: Likewise.
+	* libgnat/s-soflin.ads (Null_Set_Address): New null procedure.
+	(Initialize_RTS_Lock): New soft link.
+	(Finalize_RTS_Lock): Likewise.
+	(Acquire_RTS_Lock): Likewise.
+	(Release_RTS_Lock): Likewise.
+	* exp_ch4.adb (Expand_N_Allocator): In the subtype indication case,
+	call Apply_Predicate_Check on the resulting access value if need be.
+
+2024-05-17  Eric Botcazou  <ebotcazou@adacore.com>
+
+	* einfo.ads (Materialize_Entity): Document secondary usage.
+
+2024-05-17  Steve Baird  <baird@adacore.com>
+
+	* local_restrict.adb (Active_Restriction): When traversing scopes,
+	do not skip over a subprogram body.
+
+2024-05-17  Eric Botcazou  <ebotcazou@adacore.com>
+
+	* libgnarl/s-taprop__dummy.adb (Initialize_Lock): Fix formatting.
+	* libgnarl/s-taprop__linux.adb (RTS_Lock_Ptr): Delete.
+	(Init_Mutex): Rename into...
+	(Initialize_Lock): ...this.
+	(Initialize_Lock [Lock]): Call above procedure.
+	(Initialize_Lock [RTS_Lock]): Likewise.
+	(Initialize_TCB): Likewise.
+	* libgnarl/s-taprop__posix.adb (Initialize_Lock): New procedure
+	factored out from the other two homonyms.
+	(Initialize_Lock [Lock]): Call above procedure.
+	(Initialize_Lock [RTS_Lock]): Likewise.
+	* libgnarl/s-taprop__qnx.adb (RTS_Lock_Ptr): Delete.
+	(Init_Mutex): Rename into...
+	(Initialize_Lock): ...this.
+	(Initialize_Lock [Lock]): Call above procedure.
+	(Initialize_Lock [RTS_Lock]): Likewise.
+	(Initialize_TCB): Likewise.
+	* libgnarl/s-taprop__rtems.adb (Initialize_Lock): New procedure
+	factored out from the other two homonyms.
+	(Initialize_Lock [Lock]): Call above procedure.
+	(Initialize_Lock [RTS_Lock]): Likewise.
+
+2024-05-17  Piotr Trojanek  <trojanek@adacore.com>
+
+	* sem_util.adb (Is_Known_On_Entry): Handle constants introduced
+	by validity checks.
+
+2024-05-17  Steve Baird  <baird@adacore.com>
+
+	* libgnat/a-direct.adb (Start_Search_Internal): Do not call
+	Modification_Time for a special file; declare a Calendar.Time
+	constant No_Time and use that instead.
+
+2024-05-17  Steve Baird  <baird@adacore.com>
+
+	* exp_ch3.adb (Build_Equivalent_Record_Aggregate): Add
+	Has_Predicates test for a scalar component to match what is
+	already done for other kinds of components.
+
+2024-05-17  Ronan Desplanques  <desplanques@adacore.com>
+
+	* sem_aggr.adb (Resolve_Array_Aggregate): Improve comments
+	and condition.
+
+2024-05-17  Ronan Desplanques  <desplanques@adacore.com>
+
+	* sem_aggr.adb (Resolve_Array_Aggregate): Fix location of error
+	message.
+
+2024-05-17  Piotr Trojanek  <trojanek@adacore.com>
+
+	* sem_prag.adb (Is_Unconstrained_Or_Tagged_Item): Move to
+	Sem_Util, so it can be used from GNATprove.
+	* sem_util.ads (Is_Unconstrained_Or_Tagged_Item): Move from
+	Sem_Prag; spec.
+	* sem_util.adb (Is_Unconstrained_Or_Tagged_Item): Move from
+	Sem_Prag; body.
+
+2024-05-17  Eric Botcazou  <ebotcazou@adacore.com>
+
+	* exp_pakd.adb (Create_Packed_Array_Impl_Type): For non-bit-packed
+	array types, propagate the aliased property of the component.
+	(Install_PAT): Set fields on the implicit base type of an array.
+	* libgnat/a-stream.ads (private part): Add pragma Universal_Aliasing
+	for Stream_Element.
+	* libgnat/g-alleve.ads: Add pragma Universal_Aliasing for all the
+	vector types.
+	* libgnat/g-alleve__hard.ads: Likewise.
+
+2024-05-17  Bob Duff  <duff@adacore.com>
+
+	* bcheck.adb (Check_Consistency_Of_Sdep): Split out new procedure.
+	Add check for special case of subprogram spec that no longer
+	exists.
+	(Check_Consistency): Call Check_Consistency_Of_Sdep, except when
+	Reified_Child_Spec is True. No need for "goto Continue" or "exit
+	Sdep_Loop".
+	* ali.ads (Subunit_Name, Unit_Name): Change the type to
+	Unit_Name_Type. Add a comment pointing to the ALI file
+	documentation, because it's in a somewhat-surprising place.
+	* ali.adb (Scan_ALI): Subunit_Name and Unit_Name are now
+	Unit_Name_Type. Remove comment explaining why Name_Find is used;
+	Name_Find is the usual case. Do not remove the "%s" or "%b" from
+	the Unit_Name. We need to be able to distinguish specs and bodies.
+	This is also necessary to obey the invariant of Unit_Name_Type.
+	* binde.adb (Write_Closure): Subunit_Name is now Unit_Name_Type.
+	* clean.adb (Clean_Executables): Likewise.
+
+2024-05-17  Ronan Desplanques  <desplanques@adacore.com>
+
+	* sem_aggr.adb (Resolve_Null_Array_Aggregate): Update
+	documentation comments.
+
+2024-05-17  Steve Baird  <baird@adacore.com>
+
+	* sem_util.adb (Has_Some_Controlled_Component): Fix a bug which
+	causes (in some cases involving a Disable_Controlled aspect
+	specification) Needs_Finalization to return different answers for
+	one type depending on whether the function is called before or
+	after the type is frozen.
+	* libgnat/a-coorse.ads: Type Control_Reference_Type gets an Adjust
+	procedure.
+	* libgnat/a-cborse.ads: Likewise.
+	* libgnat/a-ciorse.ads: Likewise
+	* libgnat/a-coorse.adb:
+	(Finalize): Reclaim allocated Key_Type object.
+	(Adjust): New procedure; prevent sharing of non-null Key_Access
+	values by allocating a copy.
+	* libgnat/a-cborse.adb: Likewise.
+	* libgnat/a-ciorse.adb: Likewise.
+
+2024-05-17  Bob Duff  <duff@adacore.com>
+
+	* uname.adb (Get_Unit_Name_String): Move Asserts after
+	Buf is initialized.
+
+2024-05-17  Bob Duff  <duff@adacore.com>
+
+	* ali-util.adb (Read_Withed_ALIs): Minor reformatting.
+	* bindo-units.adb (Corresponding_Body): Add assert.
+	(Corresponding_Spec): Likewise.
+	* uname.adb: Clean up assertions, use available functions.
+	Get_Spec_Name/Get_Body_Name can assert that N obeys the
+	conventions for Unit_Name_Type (end in "%s" or "%b").
+
+2024-05-17  Sebastian Poeplau  <poeplau@adacore.com>
+
+	* raise-gcc.c: Work around __builtin_code_address_from_pointer
+	if it is unavailable.
+
+2024-05-17  Marc Poulhiès  <poulhies@adacore.com>
+
+	* exp_aggr.adb (Build_Array_Aggr_Code) <Gen_Loop>: Copy the
+	initialization expression when unrolling the loop.
+
+2024-05-17  Bob Duff  <duff@adacore.com>
+
+	* sem_disp.adb (Check_Dispatching_Operation): Call
+	Create_Extra_Formals, so that the caller will have an extra
+	"constrained" parameter, which will be checked on assignment in
+	the callee, and will be passed in by the caller.
+
+2024-05-17  Piotr Trojanek  <trojanek@adacore.com>
+
+	* sem_prag.adb (Is_Unconstrained_Or_Tagged_Item): Remove call
+	to Has_Discriminants; combine ELSIF branches.
+
+2024-05-17  Piotr Trojanek  <trojanek@adacore.com>
+
+	* sem_ch7.adb (New_Private_Type): Simplify setting of
+	Is_Constrained flag.
+	* sem_prag.adb (Is_Unconstrained_Or_Tagged_Item): Simplify
+	detection of private types with no discriminant.
+
+2024-05-17  Piotr Trojanek  <trojanek@adacore.com>
+
+	* sem_prag.adb (Is_Unconstrained_Or_Tagged_Item): Allow objects
+	of private types with unknown discriminants.
+
+2024-05-17  Piotr Trojanek  <trojanek@adacore.com>
+
+	* sem_prag.adb (Is_Unconstrained_Or_Tagged_Item): Tune repeated
+	testing of type kinds.
+
+2024-05-17  Marc Poulhiès  <poulhies@adacore.com>
+
+	* doc/gnat_rm/implementation_defined_attributes.rst: Fix
+	copy/paste.
+	* gnat_rm.texi: Regenerate.
+	* gnat_ugn.texi: Regenerate.
+
+2024-05-17  Viljar Indus  <indus@adacore.com>
+
+	* sem_ch3.adb (Analyze_Component_Declaration):
+	Apply range checks only for Scalar_Types to
+	ensure that they have the Scalar_Range attribute.
+
+2024-05-17  Viljar Indus  <indus@adacore.com>
+
+	* sem_ch3.adb (Analyze_Component_Declaration):
+	Add Range_Checks for Subtype_Indications
+
+2024-05-17  Ronan Desplanques  <desplanques@adacore.com>
+
+	* exp_ch4.adb (Expand_N_Case_Expression): Remove call to
+	Relocate_Node.
+	* sem_attr.adb (Analyze_Attribute): Likewise.
+
+2024-05-17  Ronan Desplanques  <desplanques@adacore.com>
+
+	* exp_aggr.adb (Flatten): Small cleanup.
+
+2024-05-17  Eric Botcazou  <ebotcazou@adacore.com>
+
+	* sem_attr.adb (Analyze_Attribute) <Attribute_Size>: Remove special
+	processing for pragma Compile_Time_{Warning,Error}.
+	(Eval_Attribute.Compile_Time_Known_Attribute): Set Is_Static on the
+	resulting value if In_Compile_Time_Warning_Or_Error is set.
+	(Eval_Attribute.Full_Type): New helper function.
+	(Eval_Attribute): Call Full_Type for type attributes.  Add handling
+	of Object_Size and adjust that of Max_Size_In_Storage_Elements in
+	the non-static case.
+
+2024-05-16  Eric Botcazou  <ebotcazou@adacore.com>
+
+	* exp_ch7.adb (Attach_Object_To_Master_Node): Remove reference to a
+	transient object in comment.
+
+2024-05-16  Marc Poulhiès  <poulhies@adacore.com>
+
+	* exp_ch7.adb (Reset_Scopes_To_Block_Elab_Proc): also reset scope
+	for object declarations.
+
+2024-05-16  Steve Baird  <baird@adacore.com>
+
+	* checks.adb (Expr_Known_Valid): Return True for a static expression.
+	* exp_util.adb (Adjust_Condition): No validity check needed for a
+	condition if it is an expression for which a validity check has
+	already been generated.
+
+2024-05-16  Gary Dismukes  <dismukes@adacore.com>
+
+	* libgnat/a-coinve.ads (type Vector): In the Aggregate aspect for
+	this type, the Empty operation is changed to denote the Empty
+	function, rather than the Empty_Vector constant.
+	* exp_aggr.adb (Expand_Container_Aggregate): Remove code for
+	handling the case where the Empty_Subp denotes a constant object,
+	which should never happen (and add an assertion that Empty_Subp
+	must denote a function).
+	* sem_ch13.adb (Valid_Empty): No longer allow the entity to be an
+	E_Constant, and require the (optional) parameter of an Empty
+	function to be of a signed integer type (rather than any integer
+	type).
+
+2024-05-16  Justin Squirek  <squirek@adacore.com>
+
+	* doc/gnat_rm/implementation_defined_attributes.rst: Add entry for
+	Super attribute.
+	* accessibility.adb (Accessibility_Level): Add handling for Super.
+	* exp_attr.adb (Expand_N_Attribute_Reference): Add entry for
+	Super.
+	* sem_attr.adb (Analyze_Attribute): Create a case to handle the
+	semantic checking and expansion for Super.
+	(Eval_Attribute): Add entry for Super.
+	* sem_attr.ads: Add entry for Super.
+	* sem_util.adb (Is_Aliased_View, Is_Variable): Add case to handle
+	references to 'Super.
+	* snames.ads-tmpl: Register Name_Super and Attribute_Super.
+	* gnat_rm.texi: Regenerate.
+
+2024-05-16  Ronan Desplanques  <desplanques@adacore.com>
+
+	* sem_util.ads (Check_Function_Writable_Actuals): Fix comment.
+
+2024-05-16  Ronan Desplanques  <desplanques@adacore.com>
+
+	* sem_res.adb (Resolve_Case_Expression): Add length check
+	insertion.
+	* exp_ch4.adb (Expand_N_Case_Expression): Add handling of nodes
+	known to raise Constraint_Error.
+
+2024-05-16  Sebastian Poeplau  <poeplau@adacore.com>
+
+	* adaint.c: New defines for STANDALONE mode.
+
+2024-05-16  Viljar Indus  <indus@adacore.com>
+
+	* sem_ch6.adb (Analyze_Subprogram_Body_Helper):
+	If the spec is not present for a subprogram body then
+	check if the body definiton was created for a protected
+	procedure.
+
+2024-05-16  Piotr Trojanek  <trojanek@adacore.com>
+
+	* exp_cg.adb (Generate_CG_Output): Remove code for ignored ghost
+	entities that applied to subprogram calls.
+	(Register_CG_Node): Skip ignored ghost entities, both calls
+	and tagged types, when they are registered.
+
+2024-05-16  Ronan Desplanques  <desplanques@adacore.com>
+
+	* checks.adb (Apply_Selected_Length_Checks): Fix reason code.
+
+2024-05-16  Eric Botcazou  <ebotcazou@adacore.com>
+
+	* libgnat/s-finpri.adb (Raise_From_Controlled_Operation): New
+	declaration of imported procedure moved from...
+	(Finalize_Master): ...there.
+	(Finalize): Call Raise_From_Controlled_Operation instead of
+	Reraise_Occurrence to propagate the exception, if any.
+
+2024-05-16  Piotr Trojanek  <trojanek@adacore.com>
+
+	* sem_ch4.adb (Analyze_If_Expression): Add guard for
+	if_expression without an ELSE part.
+
+2024-05-16  Piotr Trojanek  <trojanek@adacore.com>
+
+	* exp_ch13.adb (Expand_N_Free_Statement): After analysis, the
+	new temporary has the type of its Object_Definition and the new
+	occurrence of this temporary has this type as well; simplify.
+	* sem_util.adb
+	(Indirect_Temp_Value): Remove redundant call to Set_Etype;
+	simplify.
+	(Is_Access_Type_For_Indirect_Temp): Add missing body header.
+
+2024-05-16  Piotr Trojanek  <trojanek@adacore.com>
+
+	* sem_util.adb (Is_Known_On_Entry): Check whether condition and
+	dependent expressions of an if_expression are known on entry.
+
+2024-05-16  Ronan Desplanques  <desplanques@adacore.com>
+
+	* checks.ads: Fix comments.
+	* checks.adb: Likewise.
+
+2024-05-16  Eric Botcazou  <ebotcazou@adacore.com>
+
+	* libgnat/s-finpri.ads: Add use type clause for Storage_Offset.
+	(Header_Alignment): Turn into an expression function.
+	(Header_Size): Likewise.
+	* libgnat/s-finpri.adb: Remove use type clause for Storage_Offset.
+	(Header_Alignment): Delete.
+	(Header_Size): Likewise.
+
+2024-05-16  Marc Poulhiès  <poulhies@adacore.com>
+
+	* exp_ch7.adb (Unnest_Loop::Fixup_Inner_Scopes): detect a new
+	problematic pattern and fixup the scope accordingly.
+
+2024-05-16  Piotr Trojanek  <trojanek@adacore.com>
+
+	* gnat_cuda.adb (Remove_CUDA_Device_Entities): Fix typo.
+
+2024-05-16  Eric Botcazou  <ebotcazou@adacore.com>
+
+	* libgnat/s-finpri.ads (Header_Alignment): New function.
+	(Header_Size): Adjust description.
+	(Master_Node): Put Finalize_Address as first component.
+	(Collection_Node): Likewise.
+	* libgnat/s-finpri.adb (Header_Alignment): New function.
+	(Header_Size): Return the object size in storage units.
+	* libgnat/s-stposu.ads (Adjust_Controlled_Dereference): Replace
+	collection node with header in description.
+	* libgnat/s-stposu.adb (Adjust_Controlled_Dereference): Likewise.
+	(Allocate_Any_Controlled): Likewise.  Pass the maximum of the
+	specified alignment and that of the header to the allocator.
+	(Deallocate_Any_Controlled): Likewise to the deallocator.
+
+2024-05-16  Viljar Indus  <indus@adacore.com>
+
+	* exp_aggr.adb (Two_Pass_Aggregate_Expansion):
+	Explicitly create new Defining_Iterators for both
+	of the loops.
+
+2024-05-16  Eric Botcazou  <ebotcazou@adacore.com>
+
+	* sem_ch6.adb (Check_Private_Overriding): Implement the second part
+	of RM 3.9.3(10) consistently in both cases.
+
+2024-05-16  Piotr Trojanek  <trojanek@adacore.com>
+
+	* erroutc.adb (Set_Msg_Insertion_Reserved_Word): Fix casing for
+	CUDA appearing in error message strings.
+	(Set_Msg_Str): Likewise for CUDA being a part of a Name_Id.
+
+2024-05-16  Ronan Desplanques  <desplanques@adacore.com>
+
+	* exp_ch4.adb (Expand_Composite_Equality): Call Error_Msg_N
+	instead of Error_Msg.
+
+2024-05-16  Steve Baird  <baird@adacore.com>
+
+	* exp_attr.adb (Build_And_Insert_Type_Attr_Subp): Further tweaking
+	of the point where a compiler-generated Put_Image or streaming
+	subprogram is to be inserted in the tree. If one such subprogram
+	calls another (as is often the case with, for example, Put_Image
+	procedures for composite type and for a component type thereof),
+	then we want to avoid use-before-definition problems that can
+	result from inserting the caller ahead of the callee.
+
+2024-05-16  Eric Botcazou  <ebotcazou@adacore.com>
+
+	* libgnat/s-finpri.ads (Lock_Type): New modular type.
+	(Collection_Node): Add Enclosing_Collection component.
+	(Finalization_Collection): Add Lock component.
+	* libgnat/s-finpri.adb: Add clauses for System.Atomic_Primitives.
+	(Attach_Object_To_Collection): Lock and unlock the collection.
+	Save a pointer to the enclosing collection in the node.
+	(Detach_Object_From_Collection): Lock and unlock the collection.
+	(Finalize): Likewise.
+	(Initialize): Initialize the lock.
+	(Lock_Collection): New procedure.
+	(Unlock_Collection): Likewise.
+
+2024-05-16  Steve Baird  <baird@adacore.com>
+
+	* sem_attr.adb (Eval_Attribute): Expand existing checks for
+	generic formal types for which Is_Generic_Type returns False. In
+	that case, mark the attribute reference as nonstatic.
+
+2024-05-16  Steve Baird  <baird@adacore.com>
+
+	* sem_util.adb (Copy_Node_With_Replacement): Add call to
+	Copy_Dimensions so that any dimension information associated with
+	the copied node is also associated with the resulting copy.
+
+2024-05-16  Piotr Trojanek  <trojanek@adacore.com>
+
+	* gen_il-gen-gen_nodes.adb (N_Procedure_Specification): Remove
+	Aspect_Specifications field.
+
+2024-05-16  Piotr Trojanek  <trojanek@adacore.com>
+
+	* sem_ch13.adb (Analyze_Aspect_Specification): Consistently
+	reuse existing constant where possible.
+
+2024-05-16  Piotr Trojanek  <trojanek@adacore.com>
+
+	* sem_ch13.adb (Analyze_Aspect_Specification): Consistently
+	reuse existing constant where possible.
+
+2024-05-16  Piotr Trojanek  <trojanek@adacore.com>
+
+	* aspects.ads (Aspect_Id): Fix ordering.
+
+2024-05-16  Piotr Trojanek  <trojanek@adacore.com>
+
+	* sem_prag.adb (Analyze_Pragma): Move case alternative to match
+	to alphabetic order.
+
+2024-05-16  Piotr Trojanek  <trojanek@adacore.com>
+
+	* gnat_cuda.adb (Remove_CUDA_Device_Entities): Fix casing
+	(this primarily fixes a style, because the capitalization will
+	not be preserved by the error-reporting machinery anyway).
+	* sem_ch13.adb (Analyze_User_Aspect_Aspect_Specification): Fix
+	casing in error message.
+
+2024-05-16  Piotr Trojanek  <trojanek@adacore.com>
+
+	* doc/gnat_rm/implementation_defined_pragmas.rst: Fix
+	documentation.
+	* sem_prag.adb: Fix comments.
+	* gnat_rm.texi: Regenerate.
+
 2024-05-14  Piotr Trojanek  <trojanek@adacore.com>
 
 	* aspects.ads (Aspect_Id, Boolean_Aspect): Change categorization
diff --git a/gcc/analyzer/ChangeLog b/gcc/analyzer/ChangeLog
index e44f496712ee..31dfcbc469f5 100644
--- a/gcc/analyzer/ChangeLog
+++ b/gcc/analyzer/ChangeLog
@@ -1,3 +1,13 @@
+2024-05-17  David Malcolm  <dmalcolm@redhat.com>
+
+	* checker-event.h (checker_event::connect_to_next_event_p):
+	Implement new diagnostic_event::connect_to_next_event_p vfunc.
+	(start_cfg_edge_event::connect_to_next_event_p): Likewise.
+	(start_consolidated_cfg_edges_event::connect_to_next_event_p):
+	Likewise.
+	* infinite-loop.cc (class looping_back_event): New subclass.
+	(infinite_loop_diagnostic::add_final_event): Use it.
+
 2024-05-15  David Malcolm  <dmalcolm@redhat.com>
 
 	PR analyzer/114899
diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog
index fb09551a9b08..c2c28ff9f1b0 100644
--- a/gcc/c-family/ChangeLog
+++ b/gcc/c-family/ChangeLog
@@ -1,3 +1,9 @@
+2024-05-17  Eric Botcazou  <ebotcazou@adacore.com>
+
+	* c-ada-spec.cc (bitfield_used): Move around.
+	(packed_layout): Likewise.
+	(dump_ada_array_type): Do not put "aliased" for a packed layout.
+
 2024-05-15  Marek Polacek  <polacek@redhat.com>
 
 	DR 1693
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 7177fdb4022a..41cccad75ec5 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,8 @@
+2024-05-17  Patrick Palka  <ppalka@redhat.com>
+
+	PR c++/115114
+	* pt.cc (maybe_aggr_guide): Consider bases in the paren init case.
+
 2024-05-15  Marek Polacek  <polacek@redhat.com>
 
 	PR c++/114854
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index 3a27c1876176..efbeea658cba 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,18 @@
+2024-05-17  Paul Thomas  <pault@gcc.gnu.org>
+
+	PR fortran/114874
+	* gfortran.h: Add 'assoc_name_inferred' to gfc_namespace.
+	* match.cc (gfc_match_select_type): Set 'assoc_name_inferred'
+	in select type namespace if the selector has inferred type.
+	* primary.cc (gfc_match_varspec): If a select type temporary
+	is apparently scalar and a left parenthesis has been detected,
+	check the current namespace has 'assoc_name_inferred' set. If
+	so, set inferred_type.
+	* resolve.cc (resolve_variable): If the namespace of a select
+	type temporary is marked with 'assoc_name_inferred' call
+	gfc_fixup_inferred_type_refs to ensure references are OK.
+	(gfc_fixup_inferred_type_refs): Catch invalid array refs..
+
 2024-05-15  Jakub Jelinek  <jakub@redhat.com>
 
 	PR c/115103
diff --git a/gcc/po/ChangeLog b/gcc/po/ChangeLog
index 2b1fc6e7b193..3207c1699766 100644
--- a/gcc/po/ChangeLog
+++ b/gcc/po/ChangeLog
@@ -1,3 +1,7 @@
+2024-05-16  Joseph Myers  <josmyers@redhat.com>
+
+	* sv.po: Update.
+
 2024-05-13  Joseph Myers  <josmyers@redhat.com>
 
 	* be.po, da.po, de.po, el.po, es.po, fi.po, fr.po, hr.po, id.po,
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index d8d4609b4bd9..5efa506f8419 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,194 @@
+2024-05-19  Jeff Law  <jlaw@ventanamicro.com>
+
+	PR target/115142
+	* gcc.target/riscv/pr115142.c: New test.
+
+2024-05-19  Iain Sandoe  <iain@sandoe.co.uk>
+
+	PR testsuite/114982
+	* g++.dg/tree-ssa/cxa_atexit-6.C: Skip for Darwin.
+
+2024-05-19  Iain Sandoe  <iain@sandoe.co.uk>
+
+	* gcc.dg/darwin-weakimport-3.c: Suppress unwind frames.
+
+2024-05-18  Jeff Law  <jlaw@ventanamicro.com>
+
+	* gcc.target/riscv/shift-add-1.c: New test.
+
+2024-05-18  Xiao Zeng  <zengxiao@eswincomputing.com>
+
+	* gcc.target/riscv/_Bfloat16-nanboxing.c: Move to...
+	* gcc.target/riscv/__bf16-nanboxing.c: ...here.
+	* gcc.target/riscv/bf16_arithmetic.c: Modify _Bfloat16 to __bf16.
+	* gcc.target/riscv/bf16_call.c: Ditto.
+	* gcc.target/riscv/bf16_comparison.c: Ditto.
+	* gcc.target/riscv/bf16_float_libcall_convert.c: Ditto.
+	* gcc.target/riscv/bf16_integer_libcall_convert.c: Ditto.
+
+2024-05-18  Pan Li  <pan2.li@intel.com>
+
+	PR target/51492
+	PR target/112600
+	* gcc.target/riscv/rvv/autovec/binop/vec_sat_binary.h: New test.
+	* gcc.target/riscv/rvv/autovec/binop/vec_sat_u_add-1.c: New test.
+	* gcc.target/riscv/rvv/autovec/binop/vec_sat_u_add-2.c: New test.
+	* gcc.target/riscv/rvv/autovec/binop/vec_sat_u_add-3.c: New test.
+	* gcc.target/riscv/rvv/autovec/binop/vec_sat_u_add-4.c: New test.
+	* gcc.target/riscv/rvv/autovec/binop/vec_sat_u_add-run-1.c: New test.
+	* gcc.target/riscv/rvv/autovec/binop/vec_sat_u_add-run-2.c: New test.
+	* gcc.target/riscv/rvv/autovec/binop/vec_sat_u_add-run-3.c: New test.
+	* gcc.target/riscv/rvv/autovec/binop/vec_sat_u_add-run-4.c: New test.
+	* gcc.target/riscv/sat_arith.h: New test.
+	* gcc.target/riscv/sat_u_add-1.c: New test.
+	* gcc.target/riscv/sat_u_add-2.c: New test.
+	* gcc.target/riscv/sat_u_add-3.c: New test.
+	* gcc.target/riscv/sat_u_add-4.c: New test.
+	* gcc.target/riscv/sat_u_add-run-1.c: New test.
+	* gcc.target/riscv/sat_u_add-run-2.c: New test.
+	* gcc.target/riscv/sat_u_add-run-3.c: New test.
+	* gcc.target/riscv/sat_u_add-run-4.c: New test.
+	* gcc.target/riscv/scalar_sat_binary.h: New test.
+
+2024-05-17  Robin Dapp  <rdapp@ventanamicro.com>
+
+	* gcc.dg/vect/costmodel/riscv/rvv/pr113112-4.c: Adjust test.
+
+2024-05-17  Robin Dapp  <rdapp@ventanamicro.com>
+
+	* gcc.target/riscv/rvv/autovec/pr113474.c: New test.
+
+2024-05-17  David Malcolm  <dmalcolm@redhat.com>
+
+	* gcc.dg/analyzer/event-links-ascii.c: New test.
+	* gcc.dg/analyzer/event-links-color.c: New test.
+	* gcc.dg/analyzer/event-links-disabled.c: New test.
+	* gcc.dg/analyzer/event-links-unicode.c: New test.
+
+2024-05-17  Uros Bizjak  <ubizjak@gmail.com>
+
+	PR middle-end/112600
+	* gcc.target/i386/pr112600-1a.c: New test.
+	* gcc.target/i386/pr112600-1b.c: New test.
+
+2024-05-17  Paul Thomas  <pault@gcc.gnu.org>
+
+	PR fortran/114874
+	* gfortran.dg/pr114874_1.f90: New test for valid code.
+	* gfortran.dg/pr114874_2.f90: New test for invalid code.
+
+2024-05-17  Patrick Palka  <ppalka@redhat.com>
+
+	PR c++/115114
+	* g++.dg/cpp2a/class-deduction-aggr15.C: New test.
+
+2024-05-17  Aldy Hernandez  <aldyh@redhat.com>
+
+	* gcc.dg/tree-ssa/pr115128.c: New test.
+
+2024-05-17  Richard Biener  <rguenther@suse.de>
+
+	* gcc.dg/torture/20240517-1.c: New testcase.
+
+2024-05-16  Pan Li  <pan2.li@intel.com>
+
+	* gcc.dg/vect/slp-mask-store-1.c: Add pragma novector as it will
+	have 2 times LOOP VECTORIZED in RISC-V.
+	* gcc.dg/vect/vect-early-break_124-pr114403.c: Xfail for the
+	riscv backend.
+	* lib/target-supports.exp: Add RISC-V backend.
+
+2024-05-16  Pan Li  <pan2.li@intel.com>
+
+	* gcc.target/riscv/rvv/autovec/early-break-1.c: New test.
+	* gcc.target/riscv/rvv/autovec/early-break-2.c: New test.
+
+2024-05-16  Jan Hubicka  <jh@suse.cz>
+
+	* gcc.c-torture/execute/pr113787.c: New test.
+
+2024-05-16  Richard Biener  <rguenther@suse.de>
+
+	PR tree-optimization/13962
+	PR tree-optimization/96564
+	* gcc.dg/tree-ssa/alias-39.c: New testcase.
+	* g++.dg/vect/pr68145.cc: Use -fno-tree-pta to avoid UB
+	to manifest in transforms no longer vectorizing this testcase
+	for an ICE.
+
+2024-05-16  Richard Biener  <rguenther@suse.de>
+
+	* gcc.dg/tree-ssa/alias-38.c: New testcase.
+
+2024-05-16  Christoph Müllner  <christoph.muellner@vrull.eu>
+
+	* gcc.target/riscv/cmpmemsi-1.c: Drop options.
+	* gcc.target/riscv/cpymemsi-1.c: Likewise.
+
+2024-05-16  Richard Biener  <rguenther@suse.de>
+
+	PR tree-optimization/79958
+	PR tree-optimization/109087
+	PR tree-optimization/100314
+	PR tree-optimization/114774
+	* gcc.dg/tree-ssa/ssa-dse-48.c: New testcase.
+	* gcc.dg/tree-ssa/ssa-dse-49.c: Likewise.
+	* gcc.dg/tree-ssa/ssa-dse-50.c: Likewise.
+	* gcc.dg/tree-ssa/ssa-dse-51.c: Likewise.
+	* gcc.dg/graphite/pr80906.c: Avoid DSE of last data reference
+	in loop.
+	* g++.dg/ipa/devirt-24.C: Adjust for extra DSE.
+	* g++.dg/warn/Wuninitialized-pr107919-1.C: Use more important
+	-O2 optimization level, -O1 regresses.
+
+2024-05-16  David Malcolm  <dmalcolm@redhat.com>
+
+	* gcc.dg/analyzer/out-of-bounds-diagram-1-emoji.c: Update expected
+	output to use unicode for depth indication.
+	* gcc.dg/analyzer/out-of-bounds-diagram-1-unicode.c: Likewise.
+
+2024-05-16  David Malcolm  <dmalcolm@redhat.com>
+
+	* gcc.dg/analyzer/out-of-bounds-diagram-1-emoji.c: Update expected
+	output to include warning emoji.
+	* gcc.dg/analyzer/warning-emoji.c: New test.
+
+2024-05-16  David Malcolm  <dmalcolm@redhat.com>
+
+	* c-c++-common/analyzer/allocation-size-multiline-1.c: Update
+	expected results for purely intraprocedural path.
+	* c-c++-common/analyzer/allocation-size-multiline-2.c: Likewise.
+	* c-c++-common/analyzer/allocation-size-multiline-3.c: Likewise.
+	* c-c++-common/analyzer/analyzer-verbosity-0.c: Likewise.
+	* c-c++-common/analyzer/analyzer-verbosity-1.c: Likewise.
+	* c-c++-common/analyzer/analyzer-verbosity-2.c: Likewise.
+	* c-c++-common/analyzer/analyzer-verbosity-3.c: Likewise.
+	* c-c++-common/analyzer/malloc-macro-inline-events.c: Likewise.
+	Doing so for this file requires a rewrite since the paths
+	prefixing the "in expansion of macro" lines become the only thing
+	on their line and so are no longer pruned by multiline.exp logic
+	for pruning extra content on non-blank lines.
+	* c-c++-common/analyzer/malloc-paths-9-noexcept.c: Likewise.
+	* c-c++-common/analyzer/setjmp-2.c: Likewise.
+	* gcc.dg/analyzer/malloc-paths-9.c: Likewise.
+	* gcc.dg/analyzer/out-of-bounds-multiline-2.c: Likewise.
+	* gcc.dg/plugin/diagnostic-test-paths-2.c: Likewise.
+
+2024-05-16  Xiao Zeng  <zengxiao@eswincomputing.com>
+
+	* gcc.target/riscv/arch-37.c: New test.
+	* gcc.target/riscv/arch-38.c: New test.
+	* gcc.target/riscv/predef-36.c: New test.
+	* gcc.target/riscv/predef-37.c: New test.
+
+2024-05-16  liuhongt  <hongtao.liu@intel.com>
+
+	* gcc.target/i386/pr114514-shufb.c: New test.
+
+2024-05-16  liuhongt  <hongtao.liu@intel.com>
+
+	* gcc.target/i386/pr114514-shift.c: New test.
+
 2024-05-15  David Malcolm  <dmalcolm@redhat.com>
 
 	PR analyzer/114899
diff --git a/libcpp/ChangeLog b/libcpp/ChangeLog
index 2beee7f179a3..52eaeb4ea297 100644
--- a/libcpp/ChangeLog
+++ b/libcpp/ChangeLog
@@ -1,3 +1,8 @@
+2024-05-17  David Malcolm  <dmalcolm@redhat.com>
+
+	* include/rich-location.h (class label_effects): New forward decl.
+	(range_label::get_effects): New vfunc.
+
 2024-04-30  Jakub Jelinek  <jakub@redhat.com>
 
 	* init.cc (cpp_init_builtins): Change __STDC_VERSION__
diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog
index 0897d7f7db45..f50159d81d19 100644
--- a/libgcc/ChangeLog
+++ b/libgcc/ChangeLog
@@ -1,3 +1,8 @@
+2024-05-18  Wolfgang Hospital  <Wolfgang.Hospital@arcor.de>
+
+	PR target/115065
+	* config/avr/lib1funcs.S (__clzhi2): Tweak.
+
 2024-05-10  Georg-Johann Lay  <avr@gjlay.de>
 
 	PR target/114981
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index b3e02cd4bc29..42eddd412312 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,18 @@
+2024-05-17  Björn Schäpers  <bjoern@hazardy.de>
+
+	* acinclude.m4 (GLIBCXX_ENABLE_BACKTACE): Add check for
+	tlhelp32.h, matching libbacktrace.
+	* config.h.in: Regenerate.
+	* configure: Regenerate.
+
+2024-05-17  Jonathan Wakely  <jwakely@redhat.com>
+
+	PR libstdc++/115119
+	* include/bits/unicode.h (_Iterator::operator++(int)): Fix typo
+	in increment expression.
+	* testsuite/ext/unicode/grapheme_view.cc: Check post-increment
+	on view's iterator.
+
 2024-05-15  Jonathan Wakely  <jwakely@redhat.com>
 
 	PR libstdc++/77704


More information about the Libstdc++-cvs mailing list