[gcc r15-4762] Daily bump.

GCC Administrator gccadmin@gcc.gnu.org
Wed Oct 30 00:20:01 GMT 2024


https://gcc.gnu.org/g:17643e5a6808f4a7161a7aa9234a4999b74f6b1a

commit r15-4762-g17643e5a6808f4a7161a7aa9234a4999b74f6b1a
Author: GCC Administrator <gccadmin@gcc.gnu.org>
Date:   Wed Oct 30 00:19:35 2024 +0000

    Daily bump.

Diff:
---
 gcc/ChangeLog           | 683 ++++++++++++++++++++++++++++++++++++++++++++++++
 gcc/DATESTAMP           |   2 +-
 gcc/ada/ChangeLog       |  10 +
 gcc/analyzer/ChangeLog  |   8 +
 gcc/c-family/ChangeLog  |  23 ++
 gcc/c/ChangeLog         |  16 ++
 gcc/cp/ChangeLog        |  16 ++
 gcc/d/ChangeLog         |   6 +
 gcc/fortran/ChangeLog   |   8 +
 gcc/jit/ChangeLog       |  15 ++
 gcc/testsuite/ChangeLog | 350 +++++++++++++++++++++++++
 libstdc++-v3/ChangeLog  |  18 ++
 12 files changed, 1154 insertions(+), 1 deletion(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 027d1f97cc9b..d2047bd53db6 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,686 @@
+2024-10-29  Andi Kleen  <ak@gcc.gnu.org>
+
+	Revert:
+	2024-10-29  Andi Kleen  <ak@gcc.gnu.org>
+
+	PR middle-end/117091
+	* tree-switch-conversion.cc (bit_test_cluster::find_bit_tests):
+	Change clustering algorithm to simple greedy.
+
+2024-10-29  David Malcolm  <dmalcolm@redhat.com>
+
+	PR other/116613
+	* Makefile.in (OBJS-libcommon-target): Add opts-diagnostic.o.
+	* common.opt (fdiagnostics-add-output=): New.
+	(fdiagnostics-set-output=): New.
+	(diagnostics_output_format): Drop sarif-file-2.2-prerelease from
+	enum.
+	* common.opt.urls: Regenerate.
+	* diagnostic-buffer.h (diagnostic_buffer::~diagnostic_buffer): New.
+	(diagnostic_buffer::ensure_per_format_buffer): Rename to...
+	(diagnostic_buffer::ensure_per_format_buffers): ...this.
+	(diagnostic_buffer::m_per_format_buffer): Replace with...
+	(diagnostic_buffer::m_per_format_buffers): ...this, updating type.
+	* diagnostic-format-json.cc (json_output_format::update_printer):
+	New.
+	(json_output_format::follows_reference_printer_p): New.
+	(diagnostic_output_format_init_json): Drop redundant call to
+	set_path_format, as this is not a text output format.
+	* diagnostic-format-sarif.cc: Include "diagnostic-format-text.h".
+	(sarif_builder::set_printer): New.
+	(sarif_builder::sarif_builder): Add "printer" param and use it for
+	m_printer.
+	(sarif_builder::make_location_object::escape_nonascii_renderer::render):
+	Rather than using dc.m_printer, create a
+	diagnostic_text_output_format instance and use its printer.
+	(sarif_output_format::follows_reference_printer_p): New.
+	(sarif_output_format::update_printer): New.
+	(sarif_output_format::sarif_output_format): Pass in correct
+	printer to m_builder's ctor.
+	(diagnostic_output_format_init_sarif): Drop redundant call to
+	set_path_format, as this is not a text output format.  Replace
+	calls to pp_show_color and set_token_printer with call to
+	update_printer.  Drop redundant call to set_show_highlight_colors,
+	as this printer does not show colors.
+	(diagnostic_output_format_init_sarif_file): Split out file opening
+	into...
+	(diagnostic_output_format_open_sarif_file): ...this new function.
+	(make_sarif_sink): New.
+	(selftest::test_make_location_object): Provide a pp for the
+	builder.
+	* diagnostic-format-sarif.h
+	(diagnostic_output_format_open_sarif_file): New decl.
+	(make_sarif_sink): New decl.
+	* diagnostic-format-text.cc (diagnostic_text_output_format::dump):
+	Dump sm_follows_reference_printer.
+	(diagnostic_text_output_format::on_report_verbatim): New.
+	(diagnostic_text_output_format::follows_reference_printer_p): New.
+	(diagnostic_text_output_format::update_printer): New.
+	* diagnostic-format-text.h
+	(diagnostic_text_output_format::diagnostic_text_output_format):
+	Add optional "follows_reference_printer" param.
+	(diagnostic_text_output_format::on_report_verbatim): New decl.
+	(diagnostic_text_output_format::after_diagnostic): Drop "final".
+	(diagnostic_text_output_format::follows_reference_printer_p): New
+	decl.
+	(class diagnostic_text_output_format): Convert private members to
+	protected.
+	(diagnostic_text_output_format::m_follows_reference_printer): New
+	field.
+	* diagnostic-format.h
+	(diagnostic_output_format::on_report_verbatim): New vfunc.
+	(diagnostic_output_format::follows_reference_printer_p): New vfunc.
+	(diagnostic_output_format::update_printer): New vfunc.
+	(diagnostic_output_format::get_printer): Use m_printer rather than
+	a printer from m_context.
+	(diagnostic_output_format::diagnostic_output_format): Initialize
+	m_printer by cloning the context's printer.
+	(diagnostic_output_format::m_printer): New field.
+	* diagnostic-global-context.cc (verbatim): Reimplement in terms of
+	global_dc->report_verbatim, moving existing implementation to
+	diagnostic_text_output_format::on_report_verbatim.
+	(fnotice): Support multiple output sinks by using a new
+	global_dc->supports_fnotice_on_stderr_p.
+	* diagnostic-output-file.h
+	(diagnostic_output_file::diagnostic_output_file): New default ctor.
+	(diagnostic_output_file::operator=): Implement move assignment.
+	* diagnostic-path.cc (selftest::test_interprocedural_path_1): Pass
+	false for new param of text_output's ctor.
+	* diagnostic-show-locus.cc
+	(selftest::test_layout_x_offset_display_utf8): Use reference
+	printer.
+	(selftest::test_layout_x_offset_display_tab): Likewise.
+	(selftest::test_one_liner_fixit_remove): Likewise.
+	* diagnostic.cc: Include "pretty-print-urlifier.h".
+	(diagnostic_set_caret_max_width): Update for global_dc's m_printer
+	becoming reference printer.
+	(diagnostic_context::initialize): Update for m_printer becoming
+	m_reference_printer.  Use ::make_unique to create it.  Update for
+	m_output_format becoming m_output_sinks.
+	(diagnostic_context::color_init): Update the reference printer,
+	then update the printers for any output sinks that follow it.
+	(diagnostic_context::urls_init): Likewise.
+	(diagnostic_context::finish): Update comment.  Update for
+	m_output_format becoming m_output_sinks.  Update for m_printer
+	becoming m_reference_printer and use "delete" on it rather than
+	XDELETE.
+	(diagnostic_context::dump): Update for m_printer becoming
+	reference printer, and for multiple output sinks.
+	(diagnostic_context::set_output_format): Reimplement for
+	supporting multiple output sinks.
+	(diagnostic_context::get_output_format): Likewise.
+	(diagnostic_context::add_sink): New.
+	(diagnostic_context::supports_fnotice_on_stderr_p): New.
+	(diagnostic_context::set_pretty_printer): New.
+	(diagnostic_context::refresh_output_sinks): New.
+	(diagnostic_context::set_format_decoder): New.
+	(diagnostic_context::set_show_highlight_colors): New.
+	(diagnostic_context::set_prefixing_rule): New.
+	(diagnostic_context::report_diagnostic): Update to support
+	multiple output sinks.
+	(diagnostic_context::report_verbatim): New.
+	(diagnostic_context::emit_diagram): Update to support multiple
+	output sinks.
+	(diagnostic_context::error_recursion): Update to use
+	m_reference_printer.
+	(fancy_abort): Likewise.
+	(diagnostic_context::end_group): Update to support multiple
+	output sinks.
+	(diagnostic_output_format::dump): Implement.
+	(diagnostic_output_format::on_report_verbatim): Likewise.
+	(diagnostic_output_format_init): Drop
+	DIAGNOSTICS_OUTPUT_FORMAT_SARIF_FILE_2_2_PRERELEASE.
+	(diagnostic_context::set_diagnostic_buffer): Reimplement to
+	support multiple output sinks.
+	(diagnostic_context::clear_diagnostic_buffer): Likewise.
+	(diagnostic_context::flush_diagnostic_buffer): Likewise.
+	(diagnostic_buffer::diagnostic_buffer): Initialize
+	m_per_format_buffers.
+	(diagnostic_buffer::~diagnostic_buffer): New dtor.
+	(diagnostic_buffer::dump): Reimplement to support multiple output
+	sinks.
+	(diagnostic_buffer::empty_p): Likewise.
+	(diagnostic_buffer::move_to): Likewise.
+	(diagnostic_buffer::ensure_per_format_buffer): Likewise, renaming
+	to...
+	(diagnostic_buffer::ensure_per_format_buffers): ...this.
+	* diagnostic.h
+	(DIAGNOSTICS_OUTPUT_FORMAT_SARIF_FILE_2_2_PRERELEASE): Delete.
+	(class diagnostic_context): Add friend class diagnostic_buffer.
+	(diagnostic_context::set_pretty_printer): New decl.
+	(diagnostic_context::refresh_output_sinks): New decl.
+	(diagnostic_context::report_verbatim): New decl.
+	(diagnostic_context::get_output_format): Drop.
+	(diagnostic_context::set_show_highlight_colors): Drop body.
+	(diagnostic_context::set_format_decoder): New decl.
+	(diagnostic_context::set_prefixing_rule): New decl.
+	(diagnostic_context::clone_printer): Reimplement.
+	(diagnostic_context::get_reference_printer): New accessor.
+	(diagnostic_context::add_sink): New decl.
+	(diagnostic_context::supports_fnotice_on_stderr_p): New decl.
+	(diagnostic_context::m_printer): Replace with...
+	(diagnostic_context::m_reference_printer): ...this, and make
+	private.
+	(diagnostic_context::m_output_format): Replace with...
+	(diagnostic_context::m_output_sinks): ...this.
+	(diagnostic_format_decoder): Delete.
+	(diagnostic_prefixing_rule): Delete.
+	(diagnostic_ready_p): Delete.
+	* doc/invoke.texi: Document -fdiagnostics-add-output= and
+	-fdiagnostics-set-output=.
+	* gcc.cc: Include "opts-diagnostic.h".
+	(driver_handle_option): Handle cases OPT_fdiagnostics_add_output_
+	and OPT_fdiagnostics_set_output_.
+	* opts-diagnostic.cc: New file.
+	* opts-diagnostic.h (handle_OPT_fdiagnostics_add_output_): New decl.
+	(handle_OPT_fdiagnostics_set_output_): New decl.
+	* opts-global.cc (init_options_once): Update for global_dc's
+	m_printer becoming reference printer.  Call
+	global_dc->refresh_output_sinks.
+	* opts.cc (common_handle_option): Replace use of
+	diagnostic_prefixing_rule with dc->set_prefixing_rule.  Handle
+	cases OPT_fdiagnostics_add_output_ and
+	OPT_fdiagnostics_set_output_.  Update for m_printer becoming
+	reference printer.
+	* selftest-diagnostic.cc
+	(selftest::test_diagnostic_context::test_diagnostic_context):
+	Update for m_printer becoming reference printer.
+	(test_diagnostic_context::test_show_locus): Likewise.
+	* selftest-run-tests.cc (selftest::run_tests): Call
+	selftest::opts_diagnostic_cc_tests.
+	* selftest.h (selftest::opts_diagnostic_cc_tests): New decl.
+	* simple-diagnostic-path.cc
+	(selftest::simple_diagnostic_path_cc_tests): Use reference
+	printer.
+	* toplev.cc (announce_function): Update for global_dc's m_printer
+	becoming reference printer.
+	(toplev::main): Likewise.
+	* tree-diagnostic.cc (tree_diagnostics_defaults): Replace use of
+	diagnostic_format_decoder with context->set_format_decoder.
+	* tree-diagnostic.h
+	(tree_dump_pretty_printer::tree_dump_pretty_printer): Update for
+	global_dc's m_printer becoming reference printer.
+	* tree.cc (escaped_string::escape): Likewise.
+	(selftest::test_escaped_strings): Likewise.
+
+2024-10-29  Andrew Pinski  <quic_apinski@quicinc.com>
+
+	PR target/117346
+	* config/aarch64/aarch64.cc (aarch64_gen_ccmp_first): Call
+	canonicalize_comparison before figuring out the cmp_mode/cc_mode.
+	(aarch64_gen_ccmp_next): Likewise.
+
+2024-10-29  Andi Kleen  <ak@gcc.gnu.org>
+
+	PR middle-end/117091
+	* tree-switch-conversion.cc (bit_test_cluster::find_bit_tests):
+	Change clustering algorithm to simple greedy.
+
+2024-10-29  Andi Kleen  <ak@gcc.gnu.org>
+
+	PR middle-end/117091
+	* gimple-if-to-switch.cc (if_chain::is_beneficial): Update
+	find_bit_test call.
+	* tree-switch-conversion.cc (bit_test_cluster::find_bit_tests):
+	Get max_c argument and bail out early if all case labels are
+	unique.
+	(switch_decision_tree::compute_cases_per_edge): Record number of
+	targets per label and return.
+	(switch_decision_tree::analyze_switch_statement): ... pass to
+	find_bit_tests.
+	* tree-switch-conversion.h: Update prototypes.
+
+2024-10-29  Andi Kleen  <ak@gcc.gnu.org>
+
+	* common.opt: Enable -fbit-tests and -fjump-tables only at -O1.
+	* opts.cc (default_options_table): Dito.
+
+2024-10-29  Eric Botcazou  <ebotcazou@adacore.com>
+
+	PR rtl-optimization/117327
+	* reorg.cc (find_end_label): Do not return a dangling label at the
+	end of the function and adjust commentary.
+
+2024-10-29  Andrew Pinski  <quic_apinski@quicinc.com>
+
+	PR target/117349
+	* config/aarch64/aarch64.cc (aarch64_rtx_costs): Remove
+	unnecessary casts to rtx_code.
+	(aarch64_gen_ccmp_first): Likewise.
+	(aarch64_gen_ccmp_next): Likewise.
+
+2024-10-29  Tsung Chun Lin  <tclin914@gmail.com>
+
+	* common/config/riscv/riscv-common.cc: M implies Zmmul.
+
+2024-10-29  yulong  <shiyulong@iscas.ac.cn>
+
+	* config.gcc: Add riscv_cmo.h.
+	* config/riscv/riscv_cmo.h: New file.
+
+2024-10-29  Pan Li  <pan2.li@intel.com>
+	    Juzhe-Zhong  <juzhe.zhong@rivai.ai>
+
+	* config/riscv/autovec.md (mask_len_strided_load_<mode>): Add
+	new pattern for MASK_LEN_STRIDED_LOAD.
+	(mask_len_strided_store_<mode>): Ditto but for store.
+	* config/riscv/riscv-protos.h (expand_strided_load): Add new
+	func decl to expand strided load.
+	(expand_strided_store): Ditto but for store.
+	* config/riscv/riscv-v.cc (expand_strided_load): Add new
+	func impl to expand strided load.
+	(expand_strided_store): Ditto but for store.
+
+2024-10-29  Pan Li  <pan2.li@intel.com>
+	    Juzhe-Zhong  <juzhe.zhong@rivai.ai>
+
+	* tree-vect-stmts.cc (vect_get_strided_load_store_ops): Handle
+	MASK_LEN_STRIDED_LOAD{STORE} after supported check.
+	(vectorizable_store): Generate MASK_LEN_STRIDED_LOAD when the offset
+	of gater is not vector type.
+	(vectorizable_load): Ditto but for store.
+
+2024-10-29  Pan Li  <pan2.li@intel.com>
+	    Juzhe-Zhong  <juzhe.zhong@rivai.ai>
+
+	* internal-fn.cc (strided_load_direct): Add new define direct
+	for strided load.
+	(strided_store_direct): Ditto but for store.
+	(expand_strided_load_optab_fn): Add new func to expand the IFN
+	MASK_LEN_STRIDED_LOAD in middle-end.
+	(expand_strided_store_optab_fn): Ditto but for store.
+	(direct_strided_load_optab_supported_p): Add define for stride
+	load optab supported.
+	(direct_strided_store_optab_supported_p): Ditto but for store.
+	(internal_fn_len_index): Add strided load/store len index.
+	(internal_fn_mask_index): Ditto but for mask.
+	(internal_fn_stored_value_index): Add strided store value index.
+	* internal-fn.def (MASK_LEN_STRIDED_LOAD): Add new IFN for
+	strided load.
+	(MASK_LEN_STRIDED_STORE): Ditto but for store.
+	* optabs.def (mask_len_strided_load_optab): Add strided load optab.
+	(mask_len_strided_store_optab): Add strided store optab.
+
+2024-10-29  Richard Biener  <rguenther@suse.de>
+
+	* tree-vect-patterns.cc (type_conversion_p): Remove.
+	(vect_recog_mixed_size_cond_pattern): Likewise.
+	(vect_vect_recog_func_ptrs): Remove vect_recog_mixed_size_cond_pattern
+	entry.
+
+2024-10-29  Richard Biener  <rguenther@suse.de>
+
+	* tree-vect-patterns.cc (vect_recog_mask_conversion_pattern):
+	Remove COMPARISON_CLASS_P rhs1 of COND_EXPR case and assert
+	it doesn't happen.
+
+2024-10-29  David Malcolm  <dmalcolm@redhat.com>
+
+	PR jit/117275
+	* varasm.cc (process_pending_assemble_externals): Reset
+	pending_assemble_externals_set to nullptr after deleting it.
+	(varasm_cc_finalize): Delete pending_assemble_externals_set.
+
+2024-10-29  Richard Biener  <rguenther@suse.de>
+
+	PR tree-optimization/117343
+	* tree-vect-slp.cc (vect_optimize_slp_pass::build_vertices):
+	Support re-building the SLP graph.
+	(vect_optimize_slp_pass::run): Re-build the SLP graph before
+	decide_masked_load_lanes.
+
+2024-10-29  Richard Biener  <rguenther@suse.de>
+
+	PR tree-optimization/117333
+	* tree-data-ref.cc (dr_may_alias_p): Guard against NULL
+	access size.
+
+2024-10-29  Alfie Richards  <Alfie.Richards@arm.com>
+	    Christophe Lyon  <christophe.lyon@arm.com>
+
+	* config/arm/arm-mve-builtins-base.cc (vld1q_impl): Add support
+	for predicated version.
+	(vst1q_impl): Likewise.
+	(vstrq_impl): New class.
+	(vldrq_impl): New class.
+	(vldrbq): New.
+	(vldrhq): New.
+	(vldrwq): New.
+	(vstrbq): New.
+	(vstrhq): New.
+	(vstrwq): New.
+	* config/arm/arm-mve-builtins-base.def (vld1q): Add predicated
+	version.
+	(vldrbq): New.
+	(vldrhq): New.
+	(vldrwq): New.
+	(vst1q): Add predicated version.
+	(vstrbq): New.
+	(vstrhq): New.
+	(vstrwq): New.
+	(vrev32q): Update types to float_16.
+	* config/arm/arm-mve-builtins-base.h (vldrbq): New.
+	(vldrhq): New.
+	(vldrwq): New.
+	(vstrbq): New.
+	(vstrhq): New.
+	(vstrwq): New.
+	* config/arm/arm-mve-builtins-functions.h (memory_vector_mode):
+	Remove conversion of floating point vectors to integer.
+	* config/arm/arm-mve-builtins.cc (TYPES_float16): Change to...
+	(TYPES_float_16): ...this.
+	(TYPES_float_32): New.
+	(float16): Change to...
+	(float_16): ...this.
+	(float_32): New.
+	(preds_z_or_none): New.
+	(function_resolver::check_gp_argument): Add support for _z
+	predicate.
+	* config/arm/arm_mve.h (vstrbq): Remove.
+	(vstrbq_p): Likewise.
+	(vstrhq): Likewise.
+	(vstrhq_p): Likewise.
+	(vstrwq): Likewise.
+	(vstrwq_p): Likewise.
+	(vst1q_p): Likewise.
+	(vld1q_z): Likewise.
+	(vldrbq_s8): Likewise.
+	(vldrbq_u8): Likewise.
+	(vldrbq_s16): Likewise.
+	(vldrbq_u16): Likewise.
+	(vldrbq_s32): Likewise.
+	(vldrbq_u32): Likewise.
+	(vstrbq_s8): Likewise.
+	(vstrbq_s32): Likewise.
+	(vstrbq_s16): Likewise.
+	(vstrbq_u8): Likewise.
+	(vstrbq_u32): Likewise.
+	(vstrbq_u16): Likewise.
+	(vstrbq_p_s8): Likewise.
+	(vstrbq_p_s32): Likewise.
+	(vstrbq_p_s16): Likewise.
+	(vstrbq_p_u8): Likewise.
+	(vstrbq_p_u32): Likewise.
+	(vstrbq_p_u16): Likewise.
+	(vldrbq_z_s16): Likewise.
+	(vldrbq_z_u8): Likewise.
+	(vldrbq_z_s8): Likewise.
+	(vldrbq_z_s32): Likewise.
+	(vldrbq_z_u16): Likewise.
+	(vldrbq_z_u32): Likewise.
+	(vldrhq_s32): Likewise.
+	(vldrhq_s16): Likewise.
+	(vldrhq_u32): Likewise.
+	(vldrhq_u16): Likewise.
+	(vldrhq_z_s32): Likewise.
+	(vldrhq_z_s16): Likewise.
+	(vldrhq_z_u32): Likewise.
+	(vldrhq_z_u16): Likewise.
+	(vldrwq_s32): Likewise.
+	(vldrwq_u32): Likewise.
+	(vldrwq_z_s32): Likewise.
+	(vldrwq_z_u32): Likewise.
+	(vldrhq_f16): Likewise.
+	(vldrhq_z_f16): Likewise.
+	(vldrwq_f32): Likewise.
+	(vldrwq_z_f32): Likewise.
+	(vstrhq_f16): Likewise.
+	(vstrhq_s32): Likewise.
+	(vstrhq_s16): Likewise.
+	(vstrhq_u32): Likewise.
+	(vstrhq_u16): Likewise.
+	(vstrhq_p_f16): Likewise.
+	(vstrhq_p_s32): Likewise.
+	(vstrhq_p_s16): Likewise.
+	(vstrhq_p_u32): Likewise.
+	(vstrhq_p_u16): Likewise.
+	(vstrwq_f32): Likewise.
+	(vstrwq_s32): Likewise.
+	(vstrwq_u32): Likewise.
+	(vstrwq_p_f32): Likewise.
+	(vstrwq_p_s32): Likewise.
+	(vstrwq_p_u32): Likewise.
+	(vst1q_p_u8): Likewise.
+	(vst1q_p_s8): Likewise.
+	(vld1q_z_u8): Likewise.
+	(vld1q_z_s8): Likewise.
+	(vst1q_p_u16): Likewise.
+	(vst1q_p_s16): Likewise.
+	(vld1q_z_u16): Likewise.
+	(vld1q_z_s16): Likewise.
+	(vst1q_p_u32): Likewise.
+	(vst1q_p_s32): Likewise.
+	(vld1q_z_u32): Likewise.
+	(vld1q_z_s32): Likewise.
+	(vld1q_z_f16): Likewise.
+	(vst1q_p_f16): Likewise.
+	(vld1q_z_f32): Likewise.
+	(vst1q_p_f32): Likewise.
+	(__arm_vstrbq_s8): Likewise.
+	(__arm_vstrbq_s32): Likewise.
+	(__arm_vstrbq_s16): Likewise.
+	(__arm_vstrbq_u8): Likewise.
+	(__arm_vstrbq_u32): Likewise.
+	(__arm_vstrbq_u16): Likewise.
+	(__arm_vldrbq_s8): Likewise.
+	(__arm_vldrbq_u8): Likewise.
+	(__arm_vldrbq_s16): Likewise.
+	(__arm_vldrbq_u16): Likewise.
+	(__arm_vldrbq_s32): Likewise.
+	(__arm_vldrbq_u32): Likewise.
+	(__arm_vstrbq_p_s8): Likewise.
+	(__arm_vstrbq_p_s32): Likewise.
+	(__arm_vstrbq_p_s16): Likewise.
+	(__arm_vstrbq_p_u8): Likewise.
+	(__arm_vstrbq_p_u32): Likewise.
+	(__arm_vstrbq_p_u16): Likewise.
+	(__arm_vldrbq_z_s8): Likewise.
+	(__arm_vldrbq_z_s32): Likewise.
+	(__arm_vldrbq_z_s16): Likewise.
+	(__arm_vldrbq_z_u8): Likewise.
+	(__arm_vldrbq_z_u32): Likewise.
+	(__arm_vldrbq_z_u16): Likewise.
+	(__arm_vldrhq_s32): Likewise.
+	(__arm_vldrhq_s16): Likewise.
+	(__arm_vldrhq_u32): Likewise.
+	(__arm_vldrhq_u16): Likewise.
+	(__arm_vldrhq_z_s32): Likewise.
+	(__arm_vldrhq_z_s16): Likewise.
+	(__arm_vldrhq_z_u32): Likewise.
+	(__arm_vldrhq_z_u16): Likewise.
+	(__arm_vldrwq_s32): Likewise.
+	(__arm_vldrwq_u32): Likewise.
+	(__arm_vldrwq_z_s32): Likewise.
+	(__arm_vldrwq_z_u32): Likewise.
+	(__arm_vstrhq_s32): Likewise.
+	(__arm_vstrhq_s16): Likewise.
+	(__arm_vstrhq_u32): Likewise.
+	(__arm_vstrhq_u16): Likewise.
+	(__arm_vstrhq_p_s32): Likewise.
+	(__arm_vstrhq_p_s16): Likewise.
+	(__arm_vstrhq_p_u32): Likewise.
+	(__arm_vstrhq_p_u16): Likewise.
+	(__arm_vstrwq_s32): Likewise.
+	(__arm_vstrwq_u32): Likewise.
+	(__arm_vstrwq_p_s32): Likewise.
+	(__arm_vstrwq_p_u32): Likewise.
+	(__arm_vst1q_p_u8): Likewise.
+	(__arm_vst1q_p_s8): Likewise.
+	(__arm_vld1q_z_u8): Likewise.
+	(__arm_vld1q_z_s8): Likewise.
+	(__arm_vst1q_p_u16): Likewise.
+	(__arm_vst1q_p_s16): Likewise.
+	(__arm_vld1q_z_u16): Likewise.
+	(__arm_vld1q_z_s16): Likewise.
+	(__arm_vst1q_p_u32): Likewise.
+	(__arm_vst1q_p_s32): Likewise.
+	(__arm_vld1q_z_u32): Likewise.
+	(__arm_vld1q_z_s32): Likewise.
+	(__arm_vldrwq_f32): Likewise.
+	(__arm_vldrwq_z_f32): Likewise.
+	(__arm_vldrhq_z_f16): Likewise.
+	(__arm_vldrhq_f16): Likewise.
+	(__arm_vstrwq_p_f32): Likewise.
+	(__arm_vstrwq_f32): Likewise.
+	(__arm_vstrhq_f16): Likewise.
+	(__arm_vstrhq_p_f16): Likewise.
+	(__arm_vld1q_z_f16): Likewise.
+	(__arm_vst1q_p_f16): Likewise.
+	(__arm_vld1q_z_f32): Likewise.
+	(__arm_vst2q_f32): Likewise.
+	(__arm_vst1q_p_f32): Likewise.
+	(__arm_vstrbq): Likewise.
+	(__arm_vstrbq_p): Likewise.
+	(__arm_vstrhq): Likewise.
+	(__arm_vstrhq_p): Likewise.
+	(__arm_vstrwq): Likewise.
+	(__arm_vstrwq_p): Likewise.
+	(__arm_vst1q_p): Likewise.
+	(__arm_vld1q_z): Likewise.
+	* config/arm/arm_mve_builtins.def:
+	(vstrbq_s): Delete.
+	(vstrbq_u): Likewise.
+	(vldrbq_s): Likewise.
+	(vldrbq_u): Likewise.
+	(vstrbq_p_s): Likewise.
+	(vstrbq_p_u): Likewise.
+	(vldrbq_z_s): Likewise.
+	(vldrbq_z_u): Likewise.
+	(vld1q_u): Likewise.
+	(vld1q_s): Likewise.
+	(vldrhq_z_u): Likewise.
+	(vldrhq_u): Likewise.
+	(vldrhq_z_s): Likewise.
+	(vldrhq_s): Likewise.
+	(vld1q_f): Likewise.
+	(vldrhq_f): Likewise.
+	(vldrhq_z_f): Likewise.
+	(vldrwq_f): Likewise.
+	(vldrwq_s): Likewise.
+	(vldrwq_u): Likewise.
+	(vldrwq_z_f): Likewise.
+	(vldrwq_z_s): Likewise.
+	(vldrwq_z_u): Likewise.
+	(vst1q_u): Likewise.
+	(vst1q_s): Likewise.
+	(vstrhq_p_u): Likewise.
+	(vstrhq_u): Likewise.
+	(vstrhq_p_s): Likewise.
+	(vstrhq_s): Likewise.
+	(vst1q_f): Likewise.
+	(vstrhq_f): Likewise.
+	(vstrhq_p_f): Likewise.
+	(vstrwq_f): Likewise.
+	(vstrwq_s): Likewise.
+	(vstrwq_u): Likewise.
+	(vstrwq_p_f): Likewise.
+	(vstrwq_p_s): Likewise.
+	(vstrwq_p_u): Likewise.
+	* config/arm/iterators.md (MVE_w_narrow_TYPE): New iterator.
+	(MVE_w_narrow_type): New iterator.
+	(MVE_wide_n_TYPE): New attribute.
+	(MVE_wide_n_type): New attribute.
+	(MVE_wide_n_sz_elem): New attribute.
+	(MVE_wide_n_VPRED): New attribute.
+	(MVE_elem_ch): New attribute.
+	(supf): Remove VSTRBQ_S, VSTRBQ_U, VLDRBQ_S, VLDRBQ_U, VLD1Q_S,
+	VLD1Q_U, VLDRHQ_S, VLDRHQ_U, VLDRWQ_S, VLDRWQ_U, VST1Q_S, VST1Q_U,
+	VSTRHQ_S, VSTRHQ_U, VSTRWQ_S, VSTRWQ_U.
+	(VSTRBQ, VLDRBQ, VLD1Q, VLDRHQ, VLDRWQ, VST1Q, VSTRHQ, VSTRWQ):
+	Delete.
+	* config/arm/mve.md (mve_vstrbq_<supf><mode>): Remove.
+	(mve_vldrbq_<supf><mode>): Likewise.
+	(mve_vstrbq_p_<supf><mode>): Likewise.
+	(mve_vldrbq_z_<supf><mode>): Likewise.
+	(mve_vldrhq_fv8hf): Likewise.
+	(mve_vldrhq_<supf><mode>): Likewise.
+	(mve_vldrhq_z_fv8hf): Likewise.
+	(mve_vldrhq_z_<supf><mode>): Likewise.
+	(mve_vldrwq_fv4sf): Likewise.
+	(mve_vldrwq_<supf>v4si): Likewise.
+	(mve_vldrwq_z_fv4sf): Likewise.
+	(mve_vldrwq_z_<supf>v4si): Likewise.
+	(@mve_vld1q_f<mode>): Likewise.
+	(@mve_vld1q_<supf><mode>): Likewise.
+	(mve_vstrhq_fv8hf): Likewise.
+	(mve_vstrhq_p_fv8hf): Likewise.
+	(mve_vstrhq_p_<supf><mode>): Likewise.
+	(mve_vstrhq_<supf><mode>): Likewise.
+	(mve_vstrwq_fv4sf): Likewise.
+	(mve_vstrwq_p_fv4sf): Likewise.
+	(mve_vstrwq_p_<supf>v4si): Likewise.
+	(mve_vstrwq_<supf>v4si): Likewise.
+	(@mve_vst1q_f<mode>): Likewise.
+	(@mve_vst1q_<supf><mode>): Likewise.
+	(@mve_vstrq_<mode>): New.
+	(@mve_vstrq_p_<mode>): New.
+	(@mve_vstrq_truncate_<mode>): New.
+	(@mve_vstrq_p_truncate_<mode>): New.
+	(@mve_vldrq_<mode>): New.
+	(@mve_vldrq_z_<mode>): New.
+	(@mve_vldrq_extend_<mode><US>): New.
+	(@mve_vldrq_z_extend_<mode><US>): New.
+	* config/arm/unspecs.md:
+	(VSTRBQ_S): Remove.
+	(VSTRBQ_U): Likewise.
+	(VLDRBQ_S): Likewise.
+	(VLDRBQ_U): Likewise.
+	(VLD1Q_F): Likewise.
+	(VLD1Q_S): Likewise.
+	(VLD1Q_U): Likewise.
+	(VLDRHQ_F): Likewise.
+	(VLDRHQ_U): Likewise.
+	(VLDRHQ_S): Likewise.
+	(VLDRWQ_F): Likewise.
+	(VLDRWQ_S): Likewise.
+	(VLDRWQ_U): Likewise.
+	(VSTRHQ_F): Likewise.
+	(VST1Q_S): Likewise.
+	(VST1Q_U): Likewise.
+	(VSTRHQ_U): Likewise.
+	(VSTRWQ_S): Likewise.
+	(VSTRWQ_U): Likewise.
+	(VSTRWQ_F): Likewise.
+	(VST1Q_F): Likewise.
+	(VLDRQ): New.
+	(VLDRQ_Z): Likewise.
+	(VLDRQ_EXT): Likewise.
+	(VLDRQ_EXT_Z): Likewise.
+	(VSTRQ): Likewise.
+	(VSTRQ_P): Likewise.
+	(VSTRQ_TRUNC): Likewise.
+	(VSTRQ_TRUNC_P): Likewise.
+
+2024-10-29  Alfie Richards  <Alfie.Richards@arm.com>
+	    Christophe Lyon  <christophe.lyon@arm.com>
+
+	* config/arm/arm-mve-builtins.cc
+	(function_expander::use_contiguous_load_insn): Add support for
+	PRED_z.
+	(function_expander::use_contiguous_store_insn): Add support for
+	PRED_p.
+
+2024-10-29  Alfie Richards  <Alfie.Richards@arm.com>
+
+	* config/arm/arm-mve-builtins-functions.h
+	(load_extending): New class.
+	(store_truncating): New class.
+	* config/arm/arm-protos.h (arm_mve_data_mode): New helper function.
+	* config/arm/arm.cc (arm_mve_data_mode): New helper function.
+
+2024-10-29  Alfie Richards  <Alfie.Richards@arm.com>
+
+	* config/arm/arm-mve-builtins-shapes.cc:
+	(load_ext): New.
+	* config/arm/arm-mve-builtins-shapes.h:
+	(load_ext): New.
+
+2024-10-29  Jakub Jelinek  <jakub@redhat.com>
+
+	PR c/117030
+	* doc/extend.texi (__builtin_stdc_rotate_left,
+	__builtin_stdc_rotate_right): Document.
+
 2024-10-28  Sam James  <sam@gentoo.org>
 
 	* opts-common.cc (prune_options): Fix typo.
diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP
index 03377a986ad3..d334905e0408 100644
--- a/gcc/DATESTAMP
+++ b/gcc/DATESTAMP
@@ -1 +1 @@
-20241029
+20241030
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index b12bd408b9c9..31c7b677bdf3 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -1,3 +1,13 @@
+2024-10-29  David Malcolm  <dmalcolm@redhat.com>
+
+	PR other/116613
+	* gcc-interface/misc.cc (internal_error_function): Update for
+	m_printer becoming reference printer.
+
+2024-10-29  Marc Poulhiès  <poulhies@adacore.com>
+
+	* types.h: fix static_assert.
+
 2024-10-26  Eric Botcazou  <ebotcazou@adacore.com>
 
 	PR ada/62122
diff --git a/gcc/analyzer/ChangeLog b/gcc/analyzer/ChangeLog
index f6abba114edb..2976622b50e2 100644
--- a/gcc/analyzer/ChangeLog
+++ b/gcc/analyzer/ChangeLog
@@ -1,3 +1,11 @@
+2024-10-29  David Malcolm  <dmalcolm@redhat.com>
+
+	PR other/116613
+	* analyzer-language.cc (on_finish_translation_unit): Update for
+	m_printer becoming reference printer.
+	* engine.cc (run_checkers): Likewise.
+	* program-point.cc (function_point::print_source_line): Likewise.
+
 2024-10-25  Jakub Jelinek  <jakub@redhat.com>
 
 	* state-purge.cc: Remove trailing whitespace.
diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog
index 2d2eaab4d80b..d0895c53ddd6 100644
--- a/gcc/c-family/ChangeLog
+++ b/gcc/c-family/ChangeLog
@@ -1,3 +1,26 @@
+2024-10-29  David Malcolm  <dmalcolm@redhat.com>
+
+	PR other/116613
+	* c-format.cc (selftest::test_type_mismatch_range_labels): Update
+	for m_printer becoming reference printer.
+	(selftest::test_type_mismatch_range_labels): Likewise.
+
+2024-10-29  Jakub Jelinek  <jakub@redhat.com>
+
+	PR c/117313
+	* c-common.cc (complete_array_type): For RAW_DATA_CST elements
+	advance curindex by RAW_DATA_LENGTH or one less than that if
+	ce->index is non-NULL.  Handle even the first element if
+	it is RAW_DATA_CST.  Formatting fix.
+
+2024-10-29  Jakub Jelinek  <jakub@redhat.com>
+
+	PR c/117030
+	* c-common.cc (c_common_reswords): Add __builtin_stdc_rotate_left
+	and __builtin_stdc_rotate_right.
+	* c-ubsan.cc (ubsan_instrument_shift): For {L,R}ROTATE_EXPR
+	just check if op1 is negative.
+
 2024-10-27  Jakub Jelinek  <jakub@redhat.com>
 
 	* c.opt (warn_trailing_whitespace_kind): Change blank
diff --git a/gcc/c/ChangeLog b/gcc/c/ChangeLog
index 16db34cac838..ed911a738d0f 100644
--- a/gcc/c/ChangeLog
+++ b/gcc/c/ChangeLog
@@ -1,3 +1,19 @@
+2024-10-29  David Malcolm  <dmalcolm@redhat.com>
+
+	PR other/116613
+	* c-objc-common.cc: Include "make-unique.h".
+	(c_initialize_diagnostics): Use unique_ptr for pretty_printer.
+	Use context->set_format_decoder.
+
+2024-10-29  Jakub Jelinek  <jakub@redhat.com>
+
+	PR c/117030
+	* c-parser.cc: Include asan.h and c-family/c-ubsan.h.
+	(c_parser_postfix_expression): Handle __builtin_stdc_rotate_left
+	and __builtin_stdc_rotate_right.
+	* c-fold.cc (c_fully_fold_internal): Handle LROTATE_EXPR and
+	RROTATE_EXPR.
+
 2024-10-25  Jakub Jelinek  <jakub@redhat.com>
 
 	* c-typeck.cc: Remove trailing whitespace.
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index ad38ec922079..e41cde2a928e 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,19 @@
+2024-10-29  David Malcolm  <dmalcolm@redhat.com>
+
+	PR other/116613
+	* error.cc (cxx_initialize_diagnostics): Use unique_ptr for
+	pretty_printer.  Use context->set_format_decoder.
+	* module.cc (noisy_p): Update for global_dc's m_printer becoming
+	reference printer.
+
+2024-10-29  Jason Merrill  <jason@redhat.com>
+
+	PR c++/30854
+	PR c++/116634
+	* error.cc (dump_aggr_init_expr_args): Remove.
+	(dump_call_expr_args): Handle AGGR_INIT_EXPR.
+	(dump_expr): Combine AGGR_INIT_EXPR and CALL_EXPR cases.
+
 2024-10-25  Jakub Jelinek  <jakub@redhat.com>
 
 	* vtable-class-hierarchy.cc: Remove trailing whitespace.
diff --git a/gcc/d/ChangeLog b/gcc/d/ChangeLog
index ad6690ebc85c..c65d9b7b8365 100644
--- a/gcc/d/ChangeLog
+++ b/gcc/d/ChangeLog
@@ -1,3 +1,9 @@
+2024-10-29  David Malcolm  <dmalcolm@redhat.com>
+
+	PR other/116613
+	* d-diagnostic.cc (d_diagnostic_report_diagnostic): Update for
+	m_printer becoming reference printer.
+
 2024-10-24  David Malcolm  <dmalcolm@redhat.com>
 	    Gaius Mulley  <gaiusmod2@gmail.com>
 
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index f5f9b661952d..ddcc65ce2ced 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,11 @@
+2024-10-29  David Malcolm  <dmalcolm@redhat.com>
+
+	PR other/116613
+	* error.cc (gfc_diagnostic_build_kind_prefix): Update for
+	global_dc's m_printer becoming reference printer.
+	(gfc_diagnostics_init): Replace usage of diagnostic_format_decoder
+	with global_dc->set_format_decoder.
+
 2024-10-27  Paul Thomas  <pault@gcc.gnu.org>
 
 	PR fortran/115070
diff --git a/gcc/jit/ChangeLog b/gcc/jit/ChangeLog
index 0c3e84dc365e..d317f73f7672 100644
--- a/gcc/jit/ChangeLog
+++ b/gcc/jit/ChangeLog
@@ -1,3 +1,18 @@
+2024-10-29  David Malcolm  <dmalcolm@redhat.com>
+
+	PR other/116613
+	* dummy-frontend.cc: Include "make-unique.h".
+	(class jit_diagnostic_listener): New.
+	(jit_begin_diagnostic): Update comment.
+	(jit_end_diagnostic): Drop call to add_diagnostic.
+	(jit_langhook_init): Set the output format to a new
+	jit_diagnostic_listener.
+	* jit-playback.cc (playback::context::add_diagnostic): Add "text"
+	param and use that rather than trying to get the text from a
+	pretty_printer.
+	* jit-playback.h (playback::context::add_diagnostic): Add "text"
+	param.
+
 2024-10-25  Jakub Jelinek  <jakub@redhat.com>
 
 	* docs/examples/tut04-toyvm/toyvm.cc: Remove trailing whitespace.
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index f5188c8fd0eb..b4cb431ae7b7 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,353 @@
+2024-10-29  Andi Kleen  <ak@gcc.gnu.org>
+
+	Revert:
+	2024-10-29  Andi Kleen  <ak@gcc.gnu.org>
+
+	* gcc.dg/tree-ssa/if-to-switch-6.c: Allow condition chain.
+	* gcc.dg/tree-ssa/switch-1.c: Allow more bit tests.
+	* gcc.dg/pr21643.c: Use -fno-bit-tests
+	* gcc.target/aarch64/pr99988.c: Use -fno-bit-tests
+
+2024-10-29  David Malcolm  <dmalcolm@redhat.com>
+
+	PR other/116613
+	* gcc.dg/plugin/analyzer_cpython_plugin.c (dump_refcnt_info):
+	Update for global_dc's m_printer becoming reference printer.
+	* gcc.dg/plugin/crash-test-ice-in-header-sarif-2.2.c: Replace usage
+	of -fdiagnostics-format=sarif-file-2.2-prerelease with
+	-fdiagnostics-set-output=sarif:version=2.2-prerelease.
+	* gcc.dg/plugin/diagnostic_plugin_test_paths.c: Update for
+	global_dc's m_printer becoming reference printer.
+	* gcc.dg/plugin/diagnostic_plugin_xhtml_format.c: Update for
+	changes to output formats.
+	* gcc.dg/plugin/expensive_selftests_plugin.c: Update for
+	global_dc's m_printer becoming reference printer.
+	* gcc.dg/sarif-output/add-output-sarif-defaults.c: New test.
+	* gcc.dg/sarif-output/bad-binary-op.c: New test.
+	* gcc.dg/sarif-output/bad-binary-op.py: New support script.
+	* gcc.dg/sarif-output/multiple-outputs.c: New test.
+	* gcc.dg/sarif-output/multiple-outputs.py: New support script.
+	* lib/scansarif.exp (verify-sarif-file): Add an optional second
+	argument specifying the expected filename of the .sarif file.
+
+2024-10-29  Andrew Pinski  <quic_apinski@quicinc.com>
+
+	PR target/117346
+	* gcc.target/aarch64/imm_choice_comparison-1.c: New test.
+
+2024-10-29  Andi Kleen  <ak@gcc.gnu.org>
+
+	* gcc.dg/tree-ssa/if-to-switch-6.c: Allow condition chain.
+	* gcc.dg/tree-ssa/switch-1.c: Allow more bit tests.
+	* gcc.dg/pr21643.c: Use -fno-bit-tests
+	* gcc.target/aarch64/pr99988.c: Use -fno-bit-tests
+
+2024-10-29  Eric Botcazou  <ebotcazou@adacore.com>
+
+	* gcc.c-torture/execute/20241029-1.c: New test.
+
+2024-10-29  Jakub Jelinek  <jakub@redhat.com>
+
+	PR c/117313
+	* c-c++-common/init-6.c: New test.
+
+2024-10-29  Jason Merrill  <jason@redhat.com>
+
+	PR c++/30854
+	PR c++/116634
+	* g++.dg/coroutines/coro-bad-alloc-02-no-op-new-nt.C: Adjust
+	diagnostic.
+	* g++.dg/diagnostic/aggr-init1.C: New test.
+
+2024-10-29  Co-Authored-By: Jeff Law  <jlaw@ventanamicro.com>
+
+	* gcc.target/riscv/attribute-15.c: Add _zmmul1p0 to arch string.
+	* gcc.target/riscv/attribute-16.c: Ditto.
+	* gcc.target/riscv/attribute-17.c: Ditto.
+	* gcc.target/riscv/attribute-18.c: Ditto.
+	* gcc.target/riscv/attribute-19.c: Ditto.
+	* gcc.target/riscv/pr110696.c: Ditto.
+	* gcc.target/riscv/target-attr-01.c: Ditto.
+	* gcc.target/riscv/target-attr-02.c: Ditto.
+	* gcc.target/riscv/target-attr-03.c: Ditto.
+	* gcc.target/riscv/target-attr-04.c: Ditto.
+	* gcc.target/riscv/target-attr-08.c: Ditto.
+	* gcc.target/riscv/target-attr-11.c: Ditto.
+	* gcc.target/riscv/target-attr-14.c: Ditto.
+	* gcc.target/riscv/target-attr-15.c: Ditto.
+	* gcc.target/riscv/target-attr-16.c: Ditto.
+	* gcc.target/riscv/rvv/base/pr114352-1.c: Likewise.
+	* gcc.target/riscv/rvv/base/pr114352-3.c: Likewise.
+	* gcc.dg/pr90838.c: Fix search string for rv64.
+
+2024-10-29  Andrew Pinski  <quic_apinski@quicinc.com>
+
+	PR tree-optimization/117341
+	* g++.dg/torture/pr117341-1.C: New test.
+
+2024-10-29  yulong  <shiyulong@iscas.ac.cn>
+
+	* gcc.target/riscv/cmo-32.c: New test.
+	* gcc.target/riscv/cmo-64.c: New test.
+
+2024-10-29  Pan Li  <pan2.li@intel.com>
+	    Juzhe-Zhong  <juzhe.zhong@rivai.ai>
+
+	* gcc.target/riscv/rvv/rvv.exp: Add strided folder.
+	* gcc.target/riscv/rvv/autovec/strided/strided_ld_st-1-f16.c: New test.
+	* gcc.target/riscv/rvv/autovec/strided/strided_ld_st-1-f32.c: New test.
+	* gcc.target/riscv/rvv/autovec/strided/strided_ld_st-1-f64.c: New test.
+	* gcc.target/riscv/rvv/autovec/strided/strided_ld_st-1-i16.c: New test.
+	* gcc.target/riscv/rvv/autovec/strided/strided_ld_st-1-i32.c: New test.
+	* gcc.target/riscv/rvv/autovec/strided/strided_ld_st-1-i64.c: New test.
+	* gcc.target/riscv/rvv/autovec/strided/strided_ld_st-1-i8.c: New test.
+	* gcc.target/riscv/rvv/autovec/strided/strided_ld_st-1-u16.c: New test.
+	* gcc.target/riscv/rvv/autovec/strided/strided_ld_st-1-u32.c: New test.
+	* gcc.target/riscv/rvv/autovec/strided/strided_ld_st-1-u64.c: New test.
+	* gcc.target/riscv/rvv/autovec/strided/strided_ld_st-1-u8.c: New test.
+	* gcc.target/riscv/rvv/autovec/strided/strided_ld_st-run-1-f16.c: New test.
+	* gcc.target/riscv/rvv/autovec/strided/strided_ld_st-run-1-f32.c: New test.
+	* gcc.target/riscv/rvv/autovec/strided/strided_ld_st-run-1-f64.c: New test.
+	* gcc.target/riscv/rvv/autovec/strided/strided_ld_st-run-1-i16.c: New test.
+	* gcc.target/riscv/rvv/autovec/strided/strided_ld_st-run-1-i32.c: New test.
+	* gcc.target/riscv/rvv/autovec/strided/strided_ld_st-run-1-i64.c: New test.
+	* gcc.target/riscv/rvv/autovec/strided/strided_ld_st-run-1-i8.c: New test.
+	* gcc.target/riscv/rvv/autovec/strided/strided_ld_st-run-1-u16.c: New test.
+	* gcc.target/riscv/rvv/autovec/strided/strided_ld_st-run-1-u32.c: New test.
+	* gcc.target/riscv/rvv/autovec/strided/strided_ld_st-run-1-u64.c: New test.
+	* gcc.target/riscv/rvv/autovec/strided/strided_ld_st-run-1-u8.c: New test.
+	* gcc.target/riscv/rvv/autovec/strided/strided_ld_st.h: New test.
+	* gcc.target/riscv/rvv/autovec/strided/strided_ld_st_data.h: New test.
+	* gcc.target/riscv/rvv/autovec/strided/strided_ld_st_run.h: New test.
+
+2024-10-29  Pan Li  <pan2.li@intel.com>
+	    Juzhe-Zhong  <juzhe.zhong@rivai.ai>
+
+	* gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-1.c:
+	Adjust IR for MASK_LEN_LOAD check.
+	* gcc.target/riscv/rvv/autovec/gather-scatter/strided_load-2.c:
+	Ditto.
+	* gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-1.c:
+	Ditto but for store.
+	* gcc.target/riscv/rvv/autovec/gather-scatter/strided_store-2.c:
+	Ditto.
+
+2024-10-29  Richard Biener  <rguenther@suse.de>
+
+	PR tree-optimization/117333
+	* gcc.dg/torture/pr117333.c: New testcase.
+
+2024-10-29  Alfie Richards  <Alfie.Richards@arm.com>
+	    Christophe Lyon  <christophe.lyon@arm.com>
+
+	* gcc.target/arm/pr112337.c: Call intrinsic instead of builtin.
+
+2024-10-29  Alfie Richards  <Alfie.Richards@arm.com>
+
+	* gcc.target/arm/mve/intrinsics/vst1q_p_f16.c: Remove `return`.
+	* gcc.target/arm/mve/intrinsics/vst1q_p_f32.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vst1q_p_s16.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vst1q_p_s32.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vst1q_p_s8.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vst1q_p_u16.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vst1q_p_u32.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vst1q_p_u8.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vst2q_f16.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vst2q_f32.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vst2q_s16.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vst2q_s32.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vst2q_s8.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vst2q_u16.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vst2q_u32.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vst2q_u8.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vst4q_f16.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vst4q_f32.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vst4q_s16.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vst4q_s32.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vst4q_s8.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vst4q_u16.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vst4q_u32.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vst4q_u8.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrbq_p_s16.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrbq_p_s32.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrbq_p_s8.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrbq_p_u16.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrbq_p_u32.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrbq_p_u8.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrbq_s16.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrbq_s32.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrbq_s8.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrbq_scatter_offset_p_s16.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrbq_scatter_offset_p_s32.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrbq_scatter_offset_p_s8.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrbq_scatter_offset_p_u16.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrbq_scatter_offset_p_u32.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrbq_scatter_offset_p_u8.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrbq_scatter_offset_s16.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrbq_scatter_offset_s32.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrbq_scatter_offset_s8.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrbq_scatter_offset_u16.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrbq_scatter_offset_u32.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrbq_scatter_offset_u8.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrbq_u16.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrbq_u32.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrbq_u8.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrdq_scatter_base_p_s64.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrdq_scatter_base_p_u64.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrdq_scatter_base_s64.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrdq_scatter_base_u64.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrdq_scatter_base_wb_p_s64.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrdq_scatter_base_wb_p_u64.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrdq_scatter_base_wb_s64.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrdq_scatter_base_wb_u64.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrdq_scatter_offset_p_s64.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrdq_scatter_offset_p_u64.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrdq_scatter_offset_s64.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrdq_scatter_offset_u64.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrdq_scatter_shifted_offset_p_s64.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrdq_scatter_shifted_offset_p_u64.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrdq_scatter_shifted_offset_s64.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrdq_scatter_shifted_offset_u64.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrhq_f16.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrhq_p_f16.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrhq_p_s16.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrhq_p_s32.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrhq_p_u16.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrhq_p_u32.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrhq_s16.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrhq_s32.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrhq_scatter_offset_f16.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrhq_scatter_offset_p_f16.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrhq_scatter_offset_p_s16.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrhq_scatter_offset_p_s32.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrhq_scatter_offset_p_u16.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrhq_scatter_offset_p_u32.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrhq_scatter_offset_s16.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrhq_scatter_offset_s32.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrhq_scatter_offset_u16.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrhq_scatter_offset_u32.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrhq_scatter_shifted_offset_f16.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrhq_scatter_shifted_offset_p_f16.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrhq_scatter_shifted_offset_p_s16.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrhq_scatter_shifted_offset_p_s32.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrhq_scatter_shifted_offset_p_u16.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrhq_scatter_shifted_offset_p_u32.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrhq_scatter_shifted_offset_s16.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrhq_scatter_shifted_offset_s32.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrhq_scatter_shifted_offset_u16.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrhq_scatter_shifted_offset_u32.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrhq_u16.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrhq_u32.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrwq_f32.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrwq_p_f32.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrwq_p_s32.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrwq_p_u32.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrwq_s32.c: Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrwq_scatter_base_f32.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrwq_scatter_base_p_f32.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrwq_scatter_base_p_s32.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrwq_scatter_base_p_u32.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrwq_scatter_base_s32.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrwq_scatter_base_u32.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrwq_scatter_base_wb_f32.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrwq_scatter_base_wb_p_f32.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrwq_scatter_base_wb_p_s32.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrwq_scatter_base_wb_p_u32.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrwq_scatter_base_wb_s32.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrwq_scatter_base_wb_u32.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrwq_scatter_offset_f32.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrwq_scatter_offset_p_f32.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrwq_scatter_offset_p_s32.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrwq_scatter_offset_p_u32.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrwq_scatter_offset_s32.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrwq_scatter_offset_u32.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrwq_scatter_shifted_offset_f32.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrwq_scatter_shifted_offset_p_f32.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrwq_scatter_shifted_offset_p_s32.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrwq_scatter_shifted_offset_p_u32.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrwq_scatter_shifted_offset_s32.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrwq_scatter_shifted_offset_u32.c:
+	Likewise.
+	* gcc.target/arm/mve/intrinsics/vstrwq_u32.c: Likewise.
+
+2024-10-29  Jakub Jelinek  <jakub@redhat.com>
+
+	PR c/117030
+	* gcc.dg/builtin-stdc-rotate-1.c: New test.
+	* gcc.dg/builtin-stdc-rotate-2.c: New test.
+	* gcc.dg/ubsan/builtin-stdc-rotate-1.c: New test.
+	* gcc.dg/ubsan/builtin-stdc-rotate-2.c: New test.
+
 2024-10-28  David Malcolm  <dmalcolm@redhat.com>
 
 	* gcc.dg/sarif-output/test-bad-pragma.py: Rename to...
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 9be0aa3b3fb5..a3e2b4747e00 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,21 @@
+2024-10-29  Patrick Palka  <ppalka@redhat.com>
+
+	PR libstdc++/112641
+	* include/std/ranges (drop_view::begin): Reimplement const
+	overload so that it's O(1) always.
+	* testsuite/std/ranges/adaptors/drop.cc (test10): New test.
+
+2024-10-29  Jakub Jelinek  <jakub@redhat.com>
+
+	PR libstdc++/117321
+	* include/c_global/cmath (nextafter(_Float16, _Float16)): Use
+	if consteval rather than if (std::__is_constant_evaluated()) around
+	the __builtin_nextafterf16 call.
+	(nextafter(__gnu_cxx::__bfloat16_t, __gnu_cxx::__bfloat16_t)): Use
+	if consteval rather than if (std::__is_constant_evaluated()) around
+	the __builtin_nextafterf16b call.
+	* testsuite/26_numerics/headers/cmath/117321.cc: New test.
+
 2024-10-28  Jonathan Wakely  <jwakely@redhat.com>
 
 	* testsuite/23_containers/vector/bool/cons/from_range.cc: Use


More information about the Gcc-cvs mailing list