From fa1158c50a9f57a0b6ec73484134e3fce40b0bf3 Mon Sep 17 00:00:00 2001
From: GCC Administrator <gccadmin@gcc.gnu.org>
Date: Wed, 20 Dec 2023 00:17:48 +0000
Subject: [PATCH] Daily bump.

---
 gcc/ChangeLog           | 163 ++++++++++++
 gcc/DATESTAMP           |   2 +-
 gcc/ada/ChangeLog       | 215 ++++++++++++++++
 gcc/c/ChangeLog         |  22 ++
 gcc/cp/ChangeLog        |  94 +++++++
 gcc/fortran/ChangeLog   |  35 +++
 gcc/testsuite/ChangeLog | 553 ++++++++++++++++++++++++++++++++++++++++
 libgcc/ChangeLog        |   6 +
 libgfortran/ChangeLog   |   5 +
 9 files changed, 1094 insertions(+), 1 deletion(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index cc88c7243207..5c20d1a8dd32 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,166 @@
+2023-12-20  Alexandre Oliva  <oliva@adacore.com>
+
+	* ipa-strub.cc (gsi_insert_finally_seq_after_call): Likewise.
+	(pass_ipa_strub::adjust_at_calls_call): Likewise.
+
+2023-12-20  Alexandre Oliva  <oliva@adacore.com>
+
+	* gcc.cc (process_command): Use LD_PIE_SPEC only if defined.
+
+2023-12-19  Marek Polacek  <polacek@redhat.com>
+
+	PR tree-optimization/113069
+	* gimple-ssa-sccopy.cc (scc_discovery): Remove unused member.
+
+2023-12-19  Sandra Loosemore  <sandra@codesourcery.com>
+
+	* omp-general.cc (vendor_properties): Add "hpe".
+	(atomic_default_mem_order_properties): Add "acquire" and "release".
+	(omp_context_selector_matches): Handle "acquire" and "release".
+
+2023-12-19  Sandra Loosemore  <sandra@codesourcery.com>
+
+	* omp-selectors.h: New file.
+	* omp-general.h: Include omp-selectors.h.
+	(OMP_TSS_CODE, OMP_TSS_NAME): New.
+	(OMP_TS_CODE, OMP_TS_NAME): New.
+	(make_trait_set_selector, make_trait_selector): Adjust declarations.
+	(omp_construct_traits_to_codes): Likewise.
+	(omp_context_selector_set_compare): Likewise.
+	(omp_get_context_selector): Likewise.
+	(omp_get_context_selector_list): New.
+	* omp-general.cc (omp_construct_traits_to_codes): Pass length in
+	as argument instead of returning it.  Make it table-driven.
+	(omp_tss_map): New.
+	(kind_properties, vendor_properties, extension_properties): New.
+	(atomic_default_mem_order_properties): New.
+	(omp_ts_map): New.
+	(omp_check_context_selector): Simplify lookup and dispatch logic.
+	(omp_mark_declare_variant): Ignore variants with unknown construct
+	selectors.  Adjust for new representation.
+	(make_trait_set_selector, make_trait_selector): Adjust for new
+	representations.
+	(omp_context_selector_matches): Simplify dispatch logic.  Avoid
+	fixed-sized buffers and adjust call to omp_construct_traits_to_codes.
+	(omp_context_selector_props_compare): Adjust for new representations
+	and simplify dispatch logic.
+	(omp_context_selector_set_compare): Likewise.
+	(omp_context_selector_compare): Likewise.
+	(omp_get_context_selector): Adjust for new representations, and split
+	out...
+	(omp_get_context_selector_list): New function.
+	(omp_lookup_tss_code): New.
+	(omp_lookup_ts_code): New.
+	(omp_context_compute_score): Adjust for new representations.  Avoid
+	fixed-sized buffers and magic numbers.  Adjust call to
+	omp_construct_traits_to_codes.
+	* gimplify.cc (omp_construct_selector_matches): Avoid use of
+	fixed-size buffer.  Adjust call to omp_construct_traits_to_codes.
+
+2023-12-19  Sandra Loosemore  <sandra@codesourcery.com>
+
+	* omp-general.h (OMP_TP_NAMELIST_NODE): New.
+	* omp-general.cc (omp_context_name_list_prop): Move earlier
+	in the file, and adjust for new representation.
+	(omp_check_context_selector): Adjust this too.
+	(omp_context_selector_props_compare): Likewise.
+
+2023-12-19  Sandra Loosemore  <sandra@codesourcery.com>
+
+	* omp-general.h (OMP_TS_SCORE_NODE): New.
+	(OMP_TSS_ID, OMP_TSS_TRAIT_SELECTORS): New.
+	(OMP_TS_ID, OMP_TS_SCORE, OMP_TS_PROPERTIES): New.
+	(OMP_TP_NAME, OMP_TP_VALUE): New.
+	(make_trait_set_selector): Declare.
+	(make_trait_selector): Declare.
+	(make_trait_property): Declare.
+	(omp_constructor_traits_to_codes): Rename to
+	omp_construct_traits_to_codes.
+	* omp-general.cc (omp_constructor_traits_to_codes): Rename
+	to omp_construct_traits_to_codes.  Use new accessors.
+	(omp_check_context_selector): Use new accessors.
+	(make_trait_set_selector): New.
+	(make_trait_selector): New.
+	(make_trait_property): New.
+	(omp_context_name_list_prop): Use new accessors.
+	(omp_context_selector_matches): Use new accessors.
+	(omp_context_selector_props_compare): Use new accessors.
+	(omp_context_selector_set_compare): Use new accessors.
+	(omp_get_context_selector): Use new accessors.
+	(omp_context_compute_score): Use new accessors.
+	* gimplify.cc (omp_construct_selector_matches): Adjust for renaming
+	of omp_constructor_traits_to_codes.
+
+2023-12-19  David Faust  <david.faust@oracle.com>
+
+	PR debug/111735
+	* btfout.cc (btf_fwd_to_enum_p): New.
+	(btf_asm_type_ref): Special case references to enum forwards.
+	(btf_asm_type): Special case enum forwards. Rename btf_size_type to
+	btf_size, and change chained ifs switching on btf_kind into else ifs.
+
+2023-12-19  Richard Biener  <rguenther@suse.de>
+
+	PR tree-optimization/113080
+	* tree-scalar-evolution.cc (expression_expensive_p): Allow
+	a tiny bit of growth due to expansion of shared trees.
+	(final_value_replacement_loop): Add comment.
+
+2023-12-19  Richard Biener  <rguenther@suse.de>
+
+	PR tree-optimization/113073
+	* tree-vect-stmts.cc (vectorizable_load): Properly ensure
+	to exempt only vector-size aligned overreads.
+
+2023-12-19  Roger Sayle  <roger@nextmovesoftware.com>
+
+	* config/i386/i386-expand.cc
+	(ix86_convert_const_wide_int_to_broadcast): Remove static.
+	(ix86_expand_move): Don't attempt to convert wide constants
+	to SSE using ix86_convert_const_wide_int_to_broadcast here.
+	(ix86_split_long_move): Always un-cprop multi-word constants.
+	* config/i386/i386-expand.h
+	(ix86_convert_const_wide_int_to_broadcast): Prototype here.
+	* config/i386/i386-features.cc: Include i386-expand.h.
+	(timode_scalar_chain::convert_insn): When converting TImode to
+	V1TImode, try ix86_convert_const_wide_int_to_broadcast.
+
+2023-12-19  Juzhe-Zhong  <juzhe.zhong@rivai.ai>
+
+	* config/riscv/riscv-v.cc (expand_const_vector): Use builder.inner_mode ().
+
+2023-12-19  Jakub Jelinek  <jakub@redhat.com>
+
+	PR target/112816
+	* config/i386/mmx.md (signbitv2sf2, signbit<mode>2): Force operands[1]
+	into a REG.
+
+2023-12-19  Alex Coplan  <alex.coplan@arm.com>
+
+	PR target/113061
+	* config/aarch64/predicates.md (aarch64_stp_reg_operand): Fix
+	parentheses to match intent.
+
+2023-12-19  Jiufu Guo  <guojiufu@linux.ibm.com>
+
+	PR rtl-optimization/112525
+	PR target/30271
+	* dse.cc (get_group_info): Add arg_pointer_rtx as frame_related.
+	(check_mem_read_rtx): Add parameter to indicate if it is checking mem
+	for call insn.
+	(scan_insn): Add mem checking on call usage.
+
+2023-12-19  Feng Wang  <wangfeng@eswincomputing.com>
+
+	* config/riscv/riscv-vector-builtins-functions.def (REQUIRED_EXTENSIONS):
+					Add new macro for match function.
+	* config/riscv/riscv-vector-builtins.cc (DEF_RVV_FUNCTION):
+					Add one more parameter for macro expanding.
+	(handle_pragma_vector): Add match function calls.
+	* config/riscv/riscv-vector-builtins.h (enum required_ext):
+				Add enum defination for required extension.
+	(struct function_group_info): Add one more parameter for checking required-ext.
+
 2023-12-18  Vladimir N. Makarov  <vmakarov@redhat.com>
 
 	PR rtl-optimization/112918
diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP
index 124c3315d4eb..150569894451 100644
--- a/gcc/DATESTAMP
+++ b/gcc/DATESTAMP
@@ -1 +1 @@
-20231219
+20231220
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index 0065df90a5f3..d1a3b8048e4d 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -1,3 +1,218 @@
+2023-12-19  Marc Poulhiès  <poulhies@adacore.com>
+
+	* gcc-interface/Make-lang.in (ada.html, ada.install-html): Add.
+
+2023-12-19  Eric Botcazou  <ebotcazou@adacore.com>
+
+	* sem_ch3.adb (Analyze_Subtype_Declaration): Remove a short-circuit
+	for subtypes without aspects when it comes to predicates.
+	* sem_util.adb (Inherit_Predicate_Flags): Deal with private subtypes
+	whose full view is an Itype.
+
+2023-12-19  Viljar Indus  <indus@adacore.com>
+
+	* sem_ch13.adb (Valid_Default_Iterator): Check all interfaces for
+	valid iterator type. Also improve error reporting.
+
+2023-12-19  Gary Dismukes  <dismukes@adacore.com>
+
+	* sem_aggr.adb (Resolve_Container_Aggregate): In the Add_Named
+	case, issue an error if the container aggregate is written as a
+	positional aggregate, since such an aggregate must have named
+	associations.
+
+2023-12-19  Sheri Bernstein  <bernstein@adacore.com>
+
+	* libgnat/a-comlin.adb (Argument_Count): Rewrite code so there is
+	only one return, to remove Improper_Returns violation.
+	(Command_Name): Add pragma to exempt Improper_Returns violation.
+
+2023-12-19  Eric Botcazou  <ebotcazou@adacore.com>
+
+	* exp_ch6.adb (Expand_Ctrl_Function_Call): Rework last comment.
+
+2023-12-19  Gary Dismukes  <dismukes@adacore.com>
+
+	* sem_aggr.adb (Resolve_Iterated_Association): Call
+	Preanalyze_And_Resolve instead of Analyze_And_Resolve on a key
+	expression of an iterated association.
+
+2023-12-19  Piotr Trojanek  <trojanek@adacore.com>
+
+	* exp_ch9.adb, sem_ch10.adb, sem_util.adb: Fix comments.
+
+2023-12-19  Piotr Trojanek  <trojanek@adacore.com>
+
+	* sinput.adb, sinput.ads (Get_Logical_Line_Number_Img): Remove.
+
+2023-12-19  Patrick Bernardi  <bernardi@adacore.com>
+
+	* bindgen.adb (Command_Line_Used): New object.
+	(Gen_Main): Only generate references to symbols used by
+	Ada.Command_Line if the package is used by the partition.
+	(Gen_Output_File_Ada): Ditto.
+	(Resolve_Binder_Options): Check if Ada.Command_Line is in the
+	closure of the partition.
+
+2023-12-19  Vasiliy Fofanov  <fofanov@adacore.com>
+
+	* libgnat/i-cstrin.adb (Value): Optimize.
+
+2023-12-19  Piotr Trojanek  <trojanek@adacore.com>
+
+	* sem_prag.adb (Is_Unconstrained_Or_Tagged_Item): Update comment
+	and body.
+
+2023-12-19  Eric Botcazou  <ebotcazou@adacore.com>
+
+	* einfo.ads (Is_Constr_Subt_For_UN_Aliased): Rename into...
+	(Is_Constr_Array_Subt_With_Bounds): ...this.
+	* exp_ch3.adb (Expand_N_Object_Declaration): Adjust to above
+	renaming and remove now redundant test.
+	* sem_ch3.adb (Analyze_Object_Declaration): Likewise, but set
+	Is_Constr_Array_Subt_With_Bounds only on arrays.
+	* gen_il-fields.ads (Opt_Field_Enum): Apply same renaming.
+	* gen_il-gen-gen_entities.adb (Entity_Kind): Likewise.
+	* gen_il-internals.adb (Image): Remove specific processing for
+	Is_Constr_Subt_For_UN_Aliased.
+	* treepr.adb (Image): Likewise.
+	* gcc-interface/decl.cc (gnat_to_gnu_entity): Adjust to renaming
+	and remove now redundant tests.
+	* gcc-interface/trans.cc (Identifier_to_gnu): Likewise.
+	(Call_to_gnu): Likewise.
+
+2023-12-19  Johannes Kliemann  <kliemann@adacore.com>
+
+	* libgnat/s-rident.ads: Remove No_Dynamic_Priorities from
+	Restricted_Tasking.
+
+2023-12-19  Patrick Bernardi  <bernardi@adacore.com>
+
+	* argv.c: Do not include adaint.h if LIGHT_RUNTIME is defined.
+	* bindgen.adb (Gen_Main): Simplify command line argument and exit
+	handling by requiring the runtime to always provide the required
+	symbols if command line argument and exit code is enabled.
+	* targparm.ads: Update comments to reflect changes to gnatbind.
+
+2023-12-19  Ronan Desplanques  <desplanques@adacore.com>
+	    Javier Miranda  <miranda@adacore.com>
+
+	* exp_aggr.adb (Initialize_Component): Use corresponding record
+	types of concurrent types.
+	* exp_util.ads (Make_Tag_Assignment_From_Type): Add precondition
+	and extend documentation.
+
+2023-12-19  Eric Botcazou  <ebotcazou@adacore.com>
+
+	* einfo.ads (Is_Ignored_Transient): Rename into...
+	(Is_Ignored_For_Finalization): ...this.
+	* gen_il-fields.ads (Opt_Field_Enum): Adjust to above renaming.
+	* gen_il-gen-gen_entities.adb (Object_Kind): Likewise.
+	* exp_aggr.adb (Expand_Array_Aggregate): Likewise.
+	* exp_ch7.adb (Build_Finalizer.Process_Declarations): Likewise.
+	* exp_util.adb (Requires_Cleanup_Actions): Likewise.
+	* exp_ch4.adb (Expand_N_If_Expression): Move down declaration of
+	variable Optimize_Return_Stmt.
+	(Process_Transient_In_Expression): Turn procedure into a child of...
+	(Process_Transients_In_Expression): ...this procedure.
+	* exp_ch6.adb (Expand_Ctrl_Function_Call): Remove obsolete setting
+	of Is_Ignored_Transient flag on the temporary if within a dependent
+	expression of a conditional expression.
+
+2023-12-19  Yannick Moy  <moy@adacore.com>
+
+	* exp_spark.adb (Expand_SPARK_N_Aggregate): New procedure for the
+	special expansion.
+	(Expand_SPARK): Call the new expansion procedure.
+	* sem_util.adb (Is_Container_Aggregate): Implement missing test.
+
+2023-12-19  Eric Botcazou  <ebotcazou@adacore.com>
+
+	* sem_ch12.adb (Copy_Generic_Node): Add guard for Ancestor_Type.
+
+2023-12-19  Eric Botcazou  <ebotcazou@adacore.com>
+
+	* gen_il-fields.ads (Aggregate_Bounds): Rename to
+	Aggregate_Bounds_Or_Ancestor_Type.
+	* gen_il-gen-gen_nodes.adb (Aggregate_Bounds): Likewise.
+	* sem_aggr.adb (Resolve_Record_Aggregate): Remove obsolete bypass.
+	* sem_ch12.adb (Check_Generic_Actuals): Add decoration.
+	(Copy_Generic_Node): For an extension aggregate, restore only the
+	full view, if any.  For a full aggregate, restore the full view as
+	well as that of its Ancestor_Type, if any, and up to the root type.
+	(Save_References_In_Aggregate): For a full aggregate of a local
+	derived tagged type with a global ancestor, set Ancestor_Type to
+	this ancestor.  For a full aggregate of a global derived tagged
+	type, set Ancestor_Type to the parent type.
+	* sinfo-utils.ads (Aggregate_Bounds): New function renaming.
+	(Ancestor_Type): Likewise.
+	(Set_Aggregate_Bounds): New procedure renaming.
+	(Set_Ancestor_Type): Likewise.
+	* sinfo.ads (Ancestor_Type): Document new field.
+
+2023-12-19  Eric Botcazou  <ebotcazou@adacore.com>
+
+	* exp_ch4.adb (Expand_N_If_Expression): Also add missing calls to
+	Process_Transients_In_Expression on the code path implementing the
+	special optimization for an unidimensional array type and
+	dependent expressions with static bounds.
+
+2023-12-19  Steve Baird  <baird@adacore.com>
+
+	* sem_ch8.adb (Is_Actual_Subp_Of_Inst): After calling
+	Enclosing_Declaration, add a check for the case where one more
+	Parent call is needed to get the enclosing declaration.
+
+2023-12-19  Ronan Desplanques  <desplanques@adacore.com>
+
+	* sem_util.adb (Build_Default_Subtype_OK): Relax
+	known-at-compile-time requirement.
+	* sem_util.ads (Build_Default_Subtype_OK): Bring documentation
+	comment up-to-date.
+
+2023-12-19  Yannick Moy  <moy@adacore.com>
+
+	* doc/gnat_rm/implementation_defined_pragmas.rst: Fix doc for
+	pragma Ignore_Pragma, in the case where it follows another
+	configuration pragma that it names, which causes the preceding
+	pragma to be ignored after parsing.
+	* errout.adb (Should_Ignore_Pragma_SPARK_Mode): New query.
+	(SPARK_Msg_N): Do nothing if SPARK_Mode is ignored.
+	(SPARK_Msg_NE): Same.
+	* gnat-style.texi: Regenerate.
+	* gnat_rm.texi: Regenerate.
+	* gnat_ugn.texi: Regenerate.
+
+2023-12-19  Yannick Moy  <moy@adacore.com>
+
+	* sem_ch4.adb (Analyze_Selected_Component): Check correct mode
+	variable for GNATprove.
+	* sem_prag.adb (Refined_State): Call SPARK_Msg_NE which checks
+	value of SPARK_Mode before issuing a message.
+	* sem_res.adb (Resolve_Entity_Name): Remove legality check for
+	SPARK RM 6.1.9(1), moved to GNATprove.
+
+2023-12-19  Steve Baird  <baird@adacore.com>
+
+	* sem_ch12.adb (Check_Generic_Child_Unit): Introduce a new nested
+	function Adjusted_Inst_Par_Ekind to cope with cases where either
+	a- the visibility of a compiler-generated renaming is incorrect;
+	or b- we are inside of a generic parent unit G1 that has a child
+	unit G1.G2, so instantiation of G1.G2 is permitted.
+
+2023-12-19  Eric Botcazou  <ebotcazou@adacore.com>
+
+	* exp_ch4.adb (Process_If_Case_Statements): Rename into...
+	(Process_Transients_In_Expression): ...this and beef up comment.
+	(Expand_N_Case_Expression): Call Process_Transients_In_Expression
+	unconditionally on the list of actions of each alternative.
+	(Expand_N_Expression_With_Actions): Do not deal with actions in
+	nested subexpressions, but call Process_Transients_In_Expression
+	on the list of actions only.
+	(Expand_N_If_Expression): Adjust to above renaming.  Add missing
+	calls to Process_Transients_In_Expression in the case when an EWA
+	is not used because of Minimize_Expression_With_Actions.
+
 2023-12-16  Andrew Carlotti  <andrew.carlotti@arm.com>
 
 	* gcc-interface/utils.cc (attr_target_exclusions): Make
diff --git a/gcc/c/ChangeLog b/gcc/c/ChangeLog
index 89acbe35b2ec..04b703f791e8 100644
--- a/gcc/c/ChangeLog
+++ b/gcc/c/ChangeLog
@@ -1,3 +1,25 @@
+2023-12-19  Sandra Loosemore  <sandra@codesourcery.com>
+
+	* c-parser.cc (omp_construct_selectors): Delete.
+	(omp_device_selectors): Delete.
+	(omp_implementation_selectors): Delete.
+	(omp_user_selectors): Delete.
+	(c_parser_omp_context_selector): Adjust for new representations
+	and simplify dispatch logic.  Uniformly warn instead of sometimes
+	error when an unknown selector is found.  Adjust error messages
+	for extraneous/incorrect score.
+	(c_parser_omp_context_selector_specification): Likewise.
+	(c_finish_omp_declare_variant): Adjust for new representations.
+
+2023-12-19  Sandra Loosemore  <sandra@codesourcery.com>
+
+	* c-parser.cc (c_parser_omp_context_selector): Adjust for new
+	namelist property representation.
+
+2023-12-19  Sandra Loosemore  <sandra@codesourcery.com>
+
+	* c-parser.cc (c_parser_omp_context_selector): Use new constructors.
+
 2023-12-18  Richard Biener  <rguenther@suse.de>
 
 	PR c/111975
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 1ce61f1df0dd..617f3c6aceb6 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,97 @@
+2023-12-19  Patrick Palka  <ppalka@redhat.com>
+
+	PR c++/113063
+	* method.cc (synthesize_method): Use maybe_push_to_top_level
+	and maybe_pop_from_top_level.
+
+2023-12-19  Patrick Palka  <ppalka@redhat.com>
+
+	* name-lookup.cc (struct local_state_t): Define.
+	(local_state_stack): Define.
+	(maybe_push_to_top_level): Use them.
+	(maybe_pop_from_top_level): Likewise.
+	* pt.cc (instantiate_decl): Remove dead code for saving/restoring
+	cp_unevaluated_operand and c_inhibit_evaluation_warnings.
+
+2023-12-19  Nathaniel Shead  <nathanieloshead@gmail.com>
+
+	PR c++/102420
+	* constexpr.cc (cxx_bind_parameters_in_call): Check for calling
+	non-static member functions with a null pointer.
+
+2023-12-19  Sandra Loosemore  <sandra@codesourcery.com>
+
+	* decl.cc (omp_declare_variant_finalize_one): Adjust for new
+	representations.
+	* parser.cc (omp_construct_selectors): Delete.
+	(omp_device_selectors): Delete.
+	(omp_implementation_selectors): Delete.
+	(omp_user_selectors): Delete.
+	(cp_parser_omp_context_selector): Adjust for new representations
+	and simplify dispatch logic.  Uniformly warn instead of sometimes
+	error when an unknown selector is found.  Adjust error messages
+	for extraneous/incorrect score.
+	(cp_parser_omp_context_selector_specification): Likewise.
+	* pt.cc (tsubst_attribute): Adjust for new representations.
+
+2023-12-19  Sandra Loosemore  <sandra@codesourcery.com>
+
+	* parser.cc (cp_parser_omp_context_selector): Adjust for new
+	namelist property representation.
+	* pt.cc (tsubst_attribute): Likewise.
+
+2023-12-19  Sandra Loosemore  <sandra@codesourcery.com>
+
+	* parser.cc (cp_parser_omp_context_selector): Use new constructors.
+	* pt.cc: Include omp-general.h.
+	(tsubst_attribute): Use new context selector accessors and
+	constructors.
+
+2023-12-19  Patrick Palka  <ppalka@redhat.com>
+
+	PR c++/90679
+	* cp-tree.h (comp_template_args): Remove partial_order parameter.
+	(template_args_equal): Likewise.
+	* pt.cc (comparing_for_partial_ordering): New global flag.
+	(iterative_hash_template_arg) <case tcc_type>: Hash the template
+	and arguments for specializations that use structural equality.
+	(template_args_equal): Remove partial order parameter and
+	use comparing_for_partial_ordering instead.
+	(comp_template_args): Likewise.
+	(comp_template_args_porder): Set comparing_for_partial_ordering
+	instead.  Make static.
+	(any_template_arguments_need_structural_equality_p): Return true
+	for an argument that's a dependent alias template specialization
+	or a class template specialization that itself needs structural
+	equality.
+	* tree.cc (cp_tree_equal) <case TREE_VEC>: Adjust call to
+	comp_template_args.
+
+2023-12-19  Patrick Palka  <ppalka@redhat.com>
+
+	PR c++/90679
+	* cp-tree.h (TEMPLATE_DECL_COMPLEX_ALIAS_P): Remove.
+	(most_general_template): Constify parameter.
+	* pt.cc (push_template_decl): Adjust after removing
+	TEMPLATE_DECL_COMPLEX_ALIAS_P.
+	(complex_alias_tmpl_info): New hash_map.
+	(uses_all_template_parms_data::seen): Change type to
+	tree* from bool*.
+	(complex_alias_template_r): Adjust accordingly.
+	(complex_alias_template_p): Add 'seen_out' out parameter.
+	Call most_general_template and check PRIMARY_TEMPLATE_P.
+	Use complex_alias_tmpl_info to cache the result and set
+	'*seen_out' accordigly.
+	(dependent_alias_template_spec_p): Add !processing_template_decl
+	early exit test.  Consider dependence of only template arguments
+	corresponding to seen template parameters as per
+
+2023-12-19  Thomas Schwinge  <thomas@codesourcery.com>
+
+	PR c++/90868
+	* parser.cc (cp_parser_oacc_declare): For "more than once", check
+	the DECL that we're actually setting the attribute on.
+
 2023-12-16  Nathaniel Shead  <nathanieloshead@gmail.com>
 
 	PR c++/106363
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index a67df8162838..ab9c0ae954c3 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,38 @@
+2023-12-19  Sandra Loosemore  <sandra@codesourcery.com>
+
+	* gfortran.h: Include omp-selectors.h.
+	(enum gfc_omp_trait_property_kind): Delete, and replace all
+	references with equivalent omp_tp_type enumerators.
+	(struct gfc_omp_trait_property): Update for omp_tp_type.
+	(struct gfc_omp_selector): Replace string name with new enumerator.
+	(struct gfc_omp_set_selector): Likewise.
+	* openmp.cc (gfc_free_omp_trait_property_list): Update for
+	omp_tp_type.
+	(omp_construct_selectors): Delete.
+	(omp_device_selectors): Delete.
+	(omp_implementation_selectors): Delete.
+	(omp_user_selectors): Delete.
+	(gfc_ignore_trait_property_extension): New.
+	(gfc_ignore_trait_property_extension_list): New.
+	(gfc_match_omp_selector): Adjust for new representations and simplify
+	dispatch logic.  Uniformly warn instead of sometimes error when an
+	unknown selector is found.
+	(gfc_match_omp_context_selector): Adjust for new representations.
+	Adjust error messages for extraneous/incorrect score.
+	(gfc_match_omp_context_selector_specification): Likewise.
+	* trans-openmp.cc (gfc_trans_omp_declare_variant): Adjust for
+	new representations.
+
+2023-12-19  Sandra Loosemore  <sandra@codesourcery.com>
+
+	* trans-openmp.cc (gfc_trans_omp_declare_varaint): Adjust for
+	new namelist property representation.
+
+2023-12-19  Sandra Loosemore  <sandra@codesourcery.com>
+
+	* trans-openmp.cc (gfc_trans_omp_declare_variant): Use new
+	constructors.
+
 2023-12-18  Harald Anlauf  <anlauf@gmx.de>
 
 	PR fortran/96580
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 36c476e3bef3..eb6e900adc62 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,556 @@
+2023-12-19  Patrick Palka  <ppalka@redhat.com>
+
+	PR c++/113063
+	* g++.dg/cpp2a/spaceship-synth16.C: New test.
+
+2023-12-19  Nathaniel Shead  <nathanieloshead@gmail.com>
+
+	PR c++/102420
+	* g++.dg/cpp0x/constexpr-memfn2.C: New test.
+
+2023-12-19  Sandra Loosemore  <sandra@codesourcery.com>
+
+	* c-c++-common/gomp/declare-variant-2.c: Don't expect error on
+	"acquire" and "release".
+	* gfortran.dg/gomp/declare-variant-2a.f90: Likewise.
+
+2023-12-19  Sandra Loosemore  <sandra@codesourcery.com>
+
+	* c-c++-common/gomp/declare-variant-1.c: Expect warning on
+	unknown selectors.
+	* c-c++-common/gomp/declare-variant-2.c: Likewise.  Also adjust
+	messages for score errors.
+	* c-c++-common/gomp/declare-variant-no-score.c: New.
+	* gfortran.dg/gomp/declare-variant-1.f90: Expect warning on
+	unknown selectors.
+	* gfortran.dg/gomp/declare-variant-2.f90: Likewise.  Also adjust
+	messages for score errors.
+	* gfortran.dg/gomp/declare-variant-no-score.f90: New.
+
+2023-12-19  David Faust  <david.faust@oracle.com>
+
+	PR debug/111735
+	* gcc.dg/debug/btf/btf-forward-2.c: New test.
+
+2023-12-19  Patrick Palka  <ppalka@redhat.com>
+
+	PR c++/90679
+	* g++.dg/cpp0x/alias-decl-75a.C: New test.
+	* g++.dg/cpp0x/alias-decl-75b.C: New test.
+
+2023-12-19  Patrick Palka  <ppalka@redhat.com>
+
+	PR c++/90679
+	* g++.dg/cpp0x/alias-decl-76.C: New test.
+
+2023-12-19  Marc Poulhiès  <poulhies@adacore.com>
+
+	* g++.target/i386/excess-precision-12.C: call std::abort instead of abort.
+
+2023-12-19  Juzhe-Zhong  <juzhe.zhong@rivai.ai>
+
+	* gcc.dg/vect/bb-slp-cond-1.c: Adapt for RISC-V.
+
+2023-12-19  Richard Biener  <rguenther@suse.de>
+
+	PR tree-optimization/113080
+	* gcc.dg/tree-ssa/sccp-3.c: New testcase.
+
+2023-12-19  Roger Sayle  <roger@nextmovesoftware.com>
+
+	* gcc.target/i386/movti-2.c: New test case.
+	* gcc.target/i386/movti-3.c: Likewise.
+
+2023-12-19  Thomas Schwinge  <thomas@codesourcery.com>
+
+	PR c++/90868
+	* c-c++-common/goacc/declare-1.c: Adjust.
+	* c-c++-common/goacc/declare-2.c: Likewise.
+
+2023-12-19  Jakub Jelinek  <jakub@redhat.com>
+
+	PR target/112816
+	* gcc.target/i386/sse2-pr112816-2.c: New test.
+
+2023-12-19  Alex Coplan  <alex.coplan@arm.com>
+
+	PR target/113061
+	* gfortran.dg/PR113061.f90: New test.
+
+2023-12-19  Juzhe-Zhong  <juzhe.zhong@rivai.ai>
+
+	* gcc.target/riscv/rvv/vsetvl/avl_multiple-1.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_multiple-10.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_multiple-11.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_multiple-12.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_multiple-13.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_multiple-14.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_multiple-15.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_multiple-16.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_multiple-2.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_multiple-3.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_multiple-4.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_multiple-5.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_multiple-6.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_multiple-7.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_multiple-8.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_multiple-9.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_prop-1.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_prop-2.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-1.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-10.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-100.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-101.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-102.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-103.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-104.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-105.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-106.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-107.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-108.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-109.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-11.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-12.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-13.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-14.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-15.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-16.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-17.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-18.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-19.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-2.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-20.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-21.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-22.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-23.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-24.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-25.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-26.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-27.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-28.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-29.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-3.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-30.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-31.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-32.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-33.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-34.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-35.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-36.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-37.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-38.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-39.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-4.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-40.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-41.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-42.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-43.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-44.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-45.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-46.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-47.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-48.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-49.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-5.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-50.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-51.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-52.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-53.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-54.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-55.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-56.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-57.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-58.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-59.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-6.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-60.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-61.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-62.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-63.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-64.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-65.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-66.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-67.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-68.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-69.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-7.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-70.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-71.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-72.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-73.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-74.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-75.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-76.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-77.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-78.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-79.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-8.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-80.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-81.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-82.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-83.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-84.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-85.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-86.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-87.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-88.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-89.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-9.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-90.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-91.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-92.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-93.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-94.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-95.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-96.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-97.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-98.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/avl_single-99.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/dump-1.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/ffload-1.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/ffload-2.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/ffload-3.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/ffload-5.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/ffload-6.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/ffload-7.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_bb_prop-1.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_bb_prop-10.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_bb_prop-11.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_bb_prop-12.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_bb_prop-13.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_bb_prop-2.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_bb_prop-3.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_bb_prop-4.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_bb_prop-5.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_bb_prop-6.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_bb_prop-7.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_bb_prop-8.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_bb_prop-9.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_conflict-1.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_conflict-2.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_conflict-3.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_conflict-4.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_conflict-5.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_loop_invariant-1.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_loop_invariant-10.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_loop_invariant-11.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_loop_invariant-12.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_loop_invariant-13.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_loop_invariant-14.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_loop_invariant-15.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_loop_invariant-16.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_loop_invariant-17.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_loop_invariant-2.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_loop_invariant-3.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_loop_invariant-4.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_loop_invariant-5.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_loop_invariant-6.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_loop_invariant-7.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_loop_invariant-8.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_loop_invariant-9.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_switch-1.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_switch-2.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_switch-3.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_switch-4.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_switch-5.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_switch-6.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_switch-7.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_switch-8.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/imm_switch-9.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/pr108270.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/pr109399.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/pr109547.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/pr109615.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/pr109743-1.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/pr109743-2.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/pr109743-3.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/pr109743-4.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/pr109748.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/pr109773-1.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/pr109773-2.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/pr109974.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/pr111037-1.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/pr111037-2.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/pr111037-3.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/pr111037-4.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/pr111234.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/pr111255.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/pr111927.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/pr111947.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/pr112092-1.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/pr112092-2.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/pr112713-1.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/pr112713-2.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/pr112776.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/pr112813-1.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/pr112929-1.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/pr112988-1.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-1.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-10.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-11.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-12.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-13.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-14.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-15.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-16.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-17.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-18.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-19.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-2.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-20.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-21.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-22.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-23.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-24.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-25.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-26.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-27.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-28.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-29.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-3.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-30.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-31.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-32.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-33.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-34.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-35.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-36.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-37.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-38.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-39.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-4.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-40.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-41.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-42.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-43.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-44.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-45.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-46.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-5.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-6.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-7.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-8.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_back_prop-9.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_bb_prop-1.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_bb_prop-10.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_bb_prop-11.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_bb_prop-12.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_bb_prop-13.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_bb_prop-14.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_bb_prop-15.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_bb_prop-16.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_bb_prop-17.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_bb_prop-18.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_bb_prop-19.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_bb_prop-2.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_bb_prop-20.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_bb_prop-21.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_bb_prop-22.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_bb_prop-23.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_bb_prop-24.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_bb_prop-25.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_bb_prop-26.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_bb_prop-27.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_bb_prop-28.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_bb_prop-3.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_bb_prop-4.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_bb_prop-5.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_bb_prop-6.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_bb_prop-7.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_bb_prop-8.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_bb_prop-9.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_call-1.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_call-2.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_call-3.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_call-4.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_complex_loop-1.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_complex_loop-2.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_conflict-1.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_conflict-10.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_conflict-11.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_conflict-12.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_conflict-13.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_conflict-2.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_conflict-3.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_conflict-4.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_conflict-5.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_conflict-6.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_conflict-7.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_conflict-8.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_conflict-9.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_miss_default-1.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_miss_default-10.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_miss_default-11.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_miss_default-12.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_miss_default-13.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_miss_default-14.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_miss_default-15.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_miss_default-16.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_miss_default-17.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_miss_default-18.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_miss_default-19.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_miss_default-2.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_miss_default-20.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_miss_default-21.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_miss_default-22.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_miss_default-23.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_miss_default-24.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_miss_default-25.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_miss_default-26.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_miss_default-27.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_miss_default-28.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_miss_default-3.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_miss_default-4.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_miss_default-5.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_miss_default-6.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_miss_default-7.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_miss_default-8.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_miss_default-9.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_phi-1.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_phi-10.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_phi-11.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_phi-12.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_phi-13.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_phi-14.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_phi-15.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_phi-16.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_phi-17.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_phi-18.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_phi-19.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_phi-2.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_phi-20.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_phi-21.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_phi-22.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_phi-23.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_phi-24.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_phi-25.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_phi-26.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_phi-27.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_phi-28.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_phi-3.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_phi-4.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_phi-5.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_phi-6.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_phi-7.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_phi-8.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_phi-9.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_single_block-1.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_single_block-10.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_single_block-11.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_single_block-12.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_single_block-13.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_single_block-14.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_single_block-15.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_single_block-16.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_single_block-17.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_single_block-18.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_single_block-19.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_single_block-2.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_single_block-3.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_single_block-4.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_single_block-5.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_single_block-6.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_single_block-7.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_single_block-8.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_single_block-9.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_single_vtype-1.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_single_vtype-2.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_single_vtype-3.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_single_vtype-4.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_single_vtype-5.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_single_vtype-6.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_single_vtype-7.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_single_vtype-8.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_switch_vtype-1.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_switch_vtype-10.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_switch_vtype-11.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_switch_vtype-12.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_switch_vtype-13.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_switch_vtype-14.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_switch_vtype-15.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_switch_vtype-16.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_switch_vtype-2.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_switch_vtype-3.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_switch_vtype-4.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_switch_vtype-5.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_switch_vtype-6.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_switch_vtype-7.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_switch_vtype-8.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vlmax_switch_vtype-9.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvl-1.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvl-10.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvl-11.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvl-12.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvl-13.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvl-14.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvl-15.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvl-16.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvl-17.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvl-18.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvl-19.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvl-2.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvl-20.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvl-21.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvl-22.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvl-23.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvl-24.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvl-3.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvl-4.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvl-5.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvl-6.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvl-7.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvl-8.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvl-9.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvl_bug-1.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvl_bug-2.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvl_int.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvlmax-1.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvlmax-10.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvlmax-11.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvlmax-12.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvlmax-13.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvlmax-14.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvlmax-15.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvlmax-16.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvlmax-17.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvlmax-18.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvlmax-19.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvlmax-2.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvlmax-20.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvlmax-3.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvlmax-4.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvlmax-5.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvlmax-6.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvlmax-7.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvlmax-8.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/vsetvlmax-9.c: Force scalable vector.
+	* gcc.target/riscv/rvv/vsetvl/wredsum_vlmax.c: Force scalable vector.
+
+2023-12-19  Juzhe-Zhong  <juzhe.zhong@rivai.ai>
+
+	* gcc.dg/vect/costmodel/riscv/rvv/dynamic-lmul2-7.c: Adapt test.
+
+2023-12-19  xuli  <xuli1@eswincomputing.com>
+
+	* gcc.target/riscv/rvv/base/cpymem-1.c: Fix checks under medany.
+	* gcc.target/riscv/rvv/base/cpymem-strategy-3.c: Fix checks.
+	* gcc.target/riscv/rvv/base/cpymem-strategy-4.c: Ditto.
+
+2023-12-19  Jiufu Guo  <guojiufu@linux.ibm.com>
+
+	PR rtl-optimization/112525
+	PR target/30271
+	* gcc.target/powerpc/pr112525.c: New test.
+	* gcc.target/powerpc/pr30271.c: New test.
+
+2023-12-19  Juzhe-Zhong  <juzhe.zhong@rivai.ai>
+
+	* lib/target-supports.exp: Remove 256/512/1024 vectors.
+
+2023-12-19  xuli  <xuli1@eswincomputing.com>
+
+	* gcc.target/riscv/rvv/base/cpymem-2.c: Fix checks.
+
 2023-12-18  Harald Anlauf  <anlauf@gmx.de>
 
 	PR fortran/96580
diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog
index e5d461b830ab..0fc99e69b584 100644
--- a/libgcc/ChangeLog
+++ b/libgcc/ChangeLog
@@ -1,3 +1,9 @@
+2023-12-20  Alexandre Oliva  <oliva@adacore.com>
+
+	* strub.c (ATTRIBUTE_NOINLINE): New.
+	(ATTRIBUTE_STRUB_CALLABLE): Add it.
+	(__strub_dummy_force_no_leaf): Drop it.
+
 2023-12-16  Andrew Carlotti  <andrew.carlotti@arm.com>
 
 	* config/aarch64/cpuinfo.c (enum CPUFeatures): Move to shared
diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog
index 2179889f1609..55e6befffa6b 100644
--- a/libgfortran/ChangeLog
+++ b/libgfortran/ChangeLog
@@ -1,3 +1,8 @@
+2023-12-19  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+	PR libfortran/110651
+	* libgfortran.spec.in: Remove duplicate libraries.
+
 2023-12-18  Harald Anlauf  <anlauf@gmx.de>
 
 	PR fortran/96580
-- 
GitLab