aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog120
-rw-r--r--gcc/DATESTAMP2
-rw-r--r--gcc/c-family/ChangeLog8
-rw-r--r--gcc/c/ChangeLog6
-rw-r--r--gcc/cp/ChangeLog13
-rw-r--r--gcc/m2/ChangeLog107
-rw-r--r--gcc/rust/ChangeLog1014
-rw-r--r--gcc/testsuite/ChangeLog816
-rw-r--r--libgm2/ChangeLog25
-rw-r--r--libsanitizer/ChangeLog18
10 files changed, 2128 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 3a8041bb364..692efe134e0 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,123 @@
+2023-01-31 Ju-Zhe Zhong <juzhe.zhong@rivai.ai>
+
+ * config/riscv/constraints.md (vj): New.
+ (vk): Ditto
+ * config/riscv/iterators.md: Add more opcode.
+ * config/riscv/predicates.md (vector_arith_operand): New.
+ (vector_neg_arith_operand): New.
+ (vector_shift_operand): New.
+ * config/riscv/riscv-vector-builtins-bases.cc (class binop): New.
+ * config/riscv/riscv-vector-builtins-bases.h: (vadd): New.
+ (vsub): Ditto.
+ (vand): Ditto.
+ (vor): Ditto.
+ (vxor): Ditto.
+ (vsll): Ditto.
+ (vsra): Ditto.
+ (vsrl): Ditto.
+ (vmin): Ditto.
+ (vmax): Ditto.
+ (vminu): Ditto.
+ (vmaxu): Ditto.
+ (vmul): Ditto.
+ (vdiv): Ditto.
+ (vrem): Ditto.
+ (vdivu): Ditto.
+ (vremu): Ditto.
+ * config/riscv/riscv-vector-builtins-functions.def (vadd): New.
+ (vsub): Ditto.
+ (vand): Ditto.
+ (vor): Ditto.
+ (vxor): Ditto.
+ (vsll): Ditto.
+ (vsra): Ditto.
+ (vsrl): Ditto.
+ (vmin): Ditto.
+ (vmax): Ditto.
+ (vminu): Ditto.
+ (vmaxu): Ditto.
+ (vmul): Ditto.
+ (vdiv): Ditto.
+ (vrem): Ditto.
+ (vdivu): Ditto.
+ (vremu): Ditto.
+ * config/riscv/riscv-vector-builtins-shapes.cc (struct binop_def): New.
+ * config/riscv/riscv-vector-builtins-shapes.h (binop): New.
+ * config/riscv/riscv-vector-builtins.cc (DEF_RVV_I_OPS): New.
+ (DEF_RVV_U_OPS): New.
+ (rvv_arg_type_info::get_base_vector_type): Handle
+ RVV_BASE_shift_vector.
+ (rvv_arg_type_info::get_tree_type): Ditto.
+ * config/riscv/riscv-vector-builtins.h (enum rvv_base_type): Add
+ RVV_BASE_shift_vector.
+ * config/riscv/riscv.cc (riscv_print_operand): Handle 'V'.
+ * config/riscv/vector-iterators.md: Handle more opcode.
+ * config/riscv/vector.md (@pred_<optab><mode>): New.
+
+2023-01-31 Philipp Tomsich <philipp.tomsich@vrull.eu>
+
+ PR target/108589
+ * config/aarch64/aarch64.cc (aarch_macro_fusion_pair_p): Check
+ REG_P on SET_DEST.
+
+2023-01-31 Richard Sandiford <richard.sandiford@arm.com>
+
+ PR tree-optimization/108608
+ * tree-vect-loop.cc (vect_transform_reduction): Handle single
+ def-use cycles that involve function calls rather than tree codes.
+
+2023-01-31 Andrew MacLeod <amacleod@redhat.com>
+
+ PR tree-optimization/108385
+ * gimple-range-gori.cc (gori_compute::compute_operand_range):
+ Allow VARYING computations to continue if there is a relation.
+ * range-op.cc (pointer_plus_operator::op2_range): New.
+
+2023-01-31 Andrew MacLeod <amacleod@redhat.com>
+
+ PR tree-optimization/108359
+ * range-op.cc (range_operator::wi_fold_in_parts_equiv): New.
+ (range_operator::fold_range): If op1 is equivalent to op2 then
+ invoke new fold_in_parts_equiv to operate on sub-components.
+ * range-op.h (wi_fold_in_parts_equiv): New prototype.
+
+2023-01-31 Andrew MacLeod <amacleod@redhat.com>
+
+ * gimple-range-gori.cc (gori_compute::compute_operand_range): Do
+ not abort calculations if there is a valid relation available.
+ (gori_compute::refine_using_relation): Pass correct relation trio.
+ (gori_compute::compute_operand1_range): Create trio and use it.
+ (gori_compute::compute_operand2_range): Ditto.
+ * range-op.cc (operator_plus::op1_range): Use correct trio member.
+ (operator_minus::op1_range): Use correct trio member.
+ * value-relation.cc (value_relation::create_trio): New.
+ * value-relation.h (value_relation::create_trio): New prototype.
+
+2023-01-31 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/108599
+ * config/i386/i386-expand.cc
+ (ix86_convert_const_wide_int_to_broadcast): Return nullptr if
+ CONST_WIDE_INT_NUNITS (op) times HOST_BITS_PER_WIDE_INT isn't
+ equal to bitsize of mode.
+
+2023-01-31 Jakub Jelinek <jakub@redhat.com>
+
+ PR rtl-optimization/108596
+ * bb-reorder.cc (fix_up_fall_thru_edges): Handle the case where cur_bb
+ ends with asm goto and has a crossing fallthrough edge to the same bb
+ that contains at least one of its labels by restoring EDGE_CROSSING
+ flag even on possible edge from cur_bb to new_bb successor.
+
+2023-01-31 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/105593
+ * config/i386/avx512erintrin.h (_mm512_exp2a23_round_pd,
+ _mm512_exp2a23_round_ps, _mm512_rcp28_round_pd, _mm512_rcp28_round_ps,
+ _mm512_rsqrt28_round_pd, _mm512_rsqrt28_round_ps): Use
+ _mm512_undefined_pd () or _mm512_undefined_ps () instead of using
+ uninitialized automatic variable __W.
+
2023-01-31 Gerald Pfeifer <gerald@pfeifer.com>
* doc/include/fdl.texi: Change fsf.org to www.fsf.org.
diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP
index aa6d8640ab9..f295cfe77a7 100644
--- a/gcc/DATESTAMP
+++ b/gcc/DATESTAMP
@@ -1 +1 @@
-20230131
+20230201
diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog
index 76b75032528..ba60297ef82 100644
--- a/gcc/c-family/ChangeLog
+++ b/gcc/c-family/ChangeLog
@@ -1,3 +1,11 @@
+2023-01-31 Marek Polacek <polacek@redhat.com>
+
+ PR c++/107593
+ PR c++/108597
+ * c-common.h (instantiation_dependent_expression_p): Declare.
+ * c-warn.cc (warn_duplicated_cond_add_or_warn): If the condition
+ is dependent, invalidate the chain.
+
2023-01-26 Marek Polacek <polacek@redhat.com>
PR c++/105300
diff --git a/gcc/c/ChangeLog b/gcc/c/ChangeLog
index fd1b72f8067..ca7e9b3c006 100644
--- a/gcc/c/ChangeLog
+++ b/gcc/c/ChangeLog
@@ -1,3 +1,9 @@
+2023-01-31 Marek Polacek <polacek@redhat.com>
+
+ PR c++/107593
+ PR c++/108597
+ * c-objc-common.cc (instantiation_dependent_expression_p): New.
+
2023-01-27 Joseph Myers <joseph@codesourcery.com>
* c-parser.cc (c_parser_declaration_or_fndef): Do not allow braces
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index bb6ddc0f328..4e97c19834d 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,16 @@
+2023-01-31 Jason Merrill <jason@redhat.com>
+
+ PR c++/108559
+ * cp-gimplify.cc (any_non_eliding_target_exprs): New.
+ (cp_genericize_init): Check it.
+
+2023-01-31 Marek Polacek <polacek@redhat.com>
+
+ PR c++/107593
+ PR c++/108597
+ * cp-tree.h (instantiation_dependent_expression_p): Don't
+ declare here.
+
2023-01-26 Marek Polacek <polacek@redhat.com>
PR c++/105300
diff --git a/gcc/m2/ChangeLog b/gcc/m2/ChangeLog
index 6e9bc21481f..b476c4fa13a 100644
--- a/gcc/m2/ChangeLog
+++ b/gcc/m2/ChangeLog
@@ -1,3 +1,110 @@
+2023-01-31 Gaius Mulley <gaiusmod2@gmail.com>
+
+ * Make-lang.in (gm2-libs.texi-check): Rename
+ m2/gm2-libs-pim to m2/gm2-libs-log.
+ * gm2-libs-pim/BitBlockOps.def: Moved to...
+ * gm2-libs-log/BitBlockOps.def: ...here.
+ * gm2-libs-pim/BitBlockOps.mod: Moved to...
+ * gm2-libs-log/BitBlockOps.mod: ...here.
+ * gm2-libs-pim/BitByteOps.def: Moved to...
+ * gm2-libs-log/BitByteOps.def: ...here.
+ * gm2-libs-pim/BitByteOps.mod: Moved to...
+ * gm2-libs-log/BitByteOps.mod: ...here.
+ * gm2-libs-pim/BitWordOps.def: Moved to...
+ * gm2-libs-log/BitWordOps.def: ...here.
+ * gm2-libs-pim/BitWordOps.mod: Moved to...
+ * gm2-libs-log/BitWordOps.mod: ...here.
+ * gm2-libs-pim/BlockOps.def: Moved to...
+ * gm2-libs-log/BlockOps.def: ...here.
+ * gm2-libs-pim/BlockOps.mod: Moved to...
+ * gm2-libs-log/BlockOps.mod: ...here.
+ * gm2-libs-pim/Break.c: Moved to...
+ * gm2-libs-log/Break.c: ...here.
+ * gm2-libs-pim/Break.def: Moved to...
+ * gm2-libs-log/Break.def: ...here.
+ * gm2-libs-pim/CardinalIO.def: Moved to...
+ * gm2-libs-log/CardinalIO.def: ...here.
+ * gm2-libs-pim/CardinalIO.mod: Moved to...
+ * gm2-libs-log/CardinalIO.mod: ...here.
+ * gm2-libs-pim/Conversions.def: Moved to...
+ * gm2-libs-log/Conversions.def: ...here.
+ * gm2-libs-pim/Conversions.mod: Moved to...
+ * gm2-libs-log/Conversions.mod: ...here.
+ * gm2-libs-pim/DebugPMD.def: Moved to...
+ * gm2-libs-log/DebugPMD.def: ...here.
+ * gm2-libs-pim/DebugPMD.mod: Moved to...
+ * gm2-libs-log/DebugPMD.mod: ...here.
+ * gm2-libs-pim/DebugTrace.def: Moved to...
+ * gm2-libs-log/DebugTrace.def: ...here.
+ * gm2-libs-pim/DebugTrace.mod: Moved to...
+ * gm2-libs-log/DebugTrace.mod: ...here.
+ * gm2-libs-pim/Delay.def: Moved to...
+ * gm2-libs-log/Delay.def: ...here.
+ * gm2-libs-pim/Delay.mod: Moved to...
+ * gm2-libs-log/Delay.mod: ...here.
+ * gm2-libs-pim/Display.def: Moved to...
+ * gm2-libs-log/Display.def: ...here.
+ * gm2-libs-pim/Display.mod: Moved to...
+ * gm2-libs-log/Display.mod: ...here.
+ * gm2-libs-pim/ErrorCode.def: Moved to...
+ * gm2-libs-log/ErrorCode.def: ...here.
+ * gm2-libs-pim/ErrorCode.mod: Moved to...
+ * gm2-libs-log/ErrorCode.mod: ...here.
+ * gm2-libs-pim/FileSystem.def: Moved to...
+ * gm2-libs-log/FileSystem.def: ...here.
+ * gm2-libs-pim/FileSystem.mod: Moved to...
+ * gm2-libs-log/FileSystem.mod: ...here.
+ * gm2-libs-pim/FloatingUtilities.def: Moved to...
+ * gm2-libs-log/FloatingUtilities.def: ...here.
+ * gm2-libs-pim/FloatingUtilities.mod: Moved to...
+ * gm2-libs-log/FloatingUtilities.mod: ...here.
+ * gm2-libs-pim/InOut.def: Moved to...
+ * gm2-libs-log/InOut.def: ...here.
+ * gm2-libs-pim/InOut.mod: Moved to...
+ * gm2-libs-log/InOut.mod: ...here.
+ * gm2-libs-pim/Keyboard.def: Moved to...
+ * gm2-libs-log/Keyboard.def: ...here.
+ * gm2-libs-pim/Keyboard.mod: Moved to...
+ * gm2-libs-log/Keyboard.mod: ...here.
+ * gm2-libs-pim/LongIO.def: Moved to...
+ * gm2-libs-log/LongIO.def: ...here.
+ * gm2-libs-pim/LongIO.mod: Moved to...
+ * gm2-libs-log/LongIO.mod: ...here.
+ * gm2-libs-pim/NumberConversion.def: Moved to...
+ * gm2-libs-log/NumberConversion.def: ...here.
+ * gm2-libs-pim/NumberConversion.mod: Moved to...
+ * gm2-libs-log/NumberConversion.mod: ...here.
+ * gm2-libs-pim/README.texi: Moved to...
+ * gm2-libs-log/README.texi: ...here.
+ * gm2-libs-pim/Random.def: Moved to...
+ * gm2-libs-log/Random.def: ...here.
+ * gm2-libs-pim/Random.mod: Moved to...
+ * gm2-libs-log/Random.mod: ...here.
+ * gm2-libs-pim/RealConversions.def: Moved to...
+ * gm2-libs-log/RealConversions.def: ...here.
+ * gm2-libs-pim/RealConversions.mod: Moved to...
+ * gm2-libs-log/RealConversions.mod: ...here.
+ * gm2-libs-pim/RealInOut.def: Moved to...
+ * gm2-libs-log/RealInOut.def: ...here.
+ * gm2-libs-pim/RealInOut.mod: Moved to...
+ * gm2-libs-log/RealInOut.mod: ...here.
+ * gm2-libs-pim/Strings.def: Moved to...
+ * gm2-libs-log/Strings.def: ...here.
+ * gm2-libs-pim/Strings.mod: Moved to...
+ * gm2-libs-log/Strings.mod: ...here.
+ * gm2-libs-pim/Termbase.def: Moved to...
+ * gm2-libs-log/Termbase.def: ...here.
+ * gm2-libs-pim/Termbase.mod: Moved to...
+ * gm2-libs-log/Termbase.mod: ...here.
+ * gm2-libs-pim/Terminal.def: Moved to...
+ * gm2-libs-log/Terminal.def: ...here.
+ * gm2-libs-pim/Terminal.mod: Moved to...
+ * gm2-libs-log/Terminal.mod: ...here.
+ * gm2-libs-pim/TimeDate.def: Moved to...
+ * gm2-libs-log/TimeDate.def: ...here.
+ * gm2-libs-pim/TimeDate.mod: Moved to...
+ * gm2-libs-log/TimeDate.mod: ...here.
+
2023-01-28 Iain Sandoe <iain@sandoe.co.uk>
* lang.opt: Claim Wreturn-type.
diff --git a/gcc/rust/ChangeLog b/gcc/rust/ChangeLog
index 0a91fcf4594..033b0ff7c0b 100644
--- a/gcc/rust/ChangeLog
+++ b/gcc/rust/ChangeLog
@@ -1,3 +1,1017 @@
+2023-01-31 Philip Herron <philip.herron@embecosm.com>
+
+ * Make-lang.in: Remove `rust-hir-typecheck-toplevel` object and add
+ `rust-hir-path-probe` one.
+ * typecheck/rust-hir-dot-operator.cc (MethodResolver::MethodResolver):
+ Remove no longer used `context` and `mapping` fields, and use new
+ `query_type` API.
+ (MethodResolver::MethodResolver): Likewise.
+ (MethodResolver::select): Use new `query_type` API.
+ * typecheck/rust-hir-path-probe.h: New header.
+ * typecheck/rust-hir-path-probe.cc: New file.
+ * typecheck/rust-hir-dot-operator.h (class MethodResolver): Remove no
+ longer used `context` and `mapping` fields, and use new `query_type` API.
+ * typecheck/rust-hir-type-check-base.cc (TypeCheckBase::query_type): New function.
+ * typecheck/rust-hir-type-check-base.h: Declare `query_type` function.
+ * typecheck/rust-hir-type-check-expr.cc (TypeCheckExpr::visit): Add debug print.
+ * typecheck/rust-hir-type-check-implitem.cc (TypeCheckTopLevelExternItem::Resolve):
+ Refactor and make use of new query system.
+ (TypeCheckTopLevelExternItem::Resolve): Likewise.
+ (TypeCheckTopLevelExternItem::visit): Likewise.
+ (TypeCheckTopLevelImplItem::visit): Likewise.
+ (TypeCheckImplItem::visit): Likewise.
+ (TypeCheckImplItem::TypeCheckImplItem): Likewise.
+ (TypeCheckImplItem::Resolve): Likewise.
+ (TypeCheckImplItemWithTrait::visit): Likewise.
+ * typecheck/rust-hir-type-check-implitem.h (class TypeCheckTopLevelImplItem): Likewise.
+ (class TypeCheckImplItemWithTrait): Likewise.
+ * typecheck/rust-hir-type-check-item.cc (TypeCheckItem::TypeCheckItem): Likewise.
+ (TypeCheckItem::Resolve): Likewise.
+ (TypeCheckItem::ResolveImplItem): Likewise.
+ (TypeCheckItem::ResolveImplBlockSelf): Likewise.
+ (TypeCheckItem::visit): Likewise.
+ (TypeCheckItem::resolve_impl_item): Likewise.
+ (TypeCheckItem::resolve_impl_block_substitutions): Likewise.
+ (TypeCheckItem::resolve_impl_block_self): Likewise.
+ * typecheck/rust-hir-type-check-item.h: Likewise.
+ * typecheck/rust-hir-type-check-path.cc (TypeCheckExpr::resolve_root_path): Likewise.
+ (TypeCheckExpr::resolve_segments): Likewise.
+ * typecheck/rust-hir-type-check-stmt.cc (TypeCheckStmt::visit): Likewise.
+ * typecheck/rust-hir-type-check-stmt.h: Likewise.
+ * typecheck/rust-hir-type-check-type.cc (TypeCheckType::Resolve): Likewise.
+ (TypeCheckType::visit): Likewise.
+ (TypeCheckType::resolve_root_path): Likewise.
+ * typecheck/rust-hir-type-check.cc (TypeResolution::Resolve): Likewise.
+ * typecheck/rust-hir-type-check.h: Likewise.
+ * typecheck/rust-substitution-mapper.h: Likewise.
+ * typecheck/rust-tyty-bounds.cc (TypeBoundsProbe::scan): Likewise.
+ (TypeCheckBase::get_predicate_from_bound): Likewise.
+ (TypeBoundsMappings::add_bound): Likewise.
+ * typecheck/rust-tyty-cmp.h: Likewise.
+ * typecheck/rust-tyty.h: Likewise.
+ * typecheck/rust-tyty.cc (SubstitutionRef::infer_substitions): Likewise.
+ (ParamType::resolve): Do not infinite loop anymore.
+ * util/rust-hir-map.h: Add new `hirImplBlockTypeMappings` and
+ declare `lookup_impl_block_type`.
+ * util/rust-hir-map.cc (Mappings::insert_hir_impl_block): Use new
+ `hirImplBlockTypeMappings`
+ (Mappings::lookup_impl_block_type): New function.
+
+2023-01-31 Philip Herron <philip.herron@embecosm.com>
+
+ * backend/rust-compile-context.h: Add new optional `asm_name` string
+ argument to `lookup_function_decl`.
+ * backend/rust-compile-item.cc (CompileItem::visit): Compute assembly
+ name and pass it to `lookup_function_decl` when calling it.
+
+2023-01-31 Philip Herron <philip.herron@embecosm.com>
+
+ * backend/rust-constexpr.cc (eval_store_expression): Remove invalid
+ assertion on constexpr constructors.
+
+2023-01-31 Philip Herron <philip.herron@embecosm.com>
+
+ * backend/rust-compile-expr.h: Formatting.
+
+2023-01-31 liushuyu <liushuyu011@gmail.com>
+
+ * ast/rust-ast.h (class MacroInvocData): Store expander as
+ member of the class.
+ (class Expr): Add `is_literal` virtual method
+ * ast/rust-expr.h: Override `is_literal` for `LiteralExpr`s.
+ * expand/rust-macro-builtins.cc (try_expand_macro_expression): New function.
+ (try_extract_string_literal_from_fragment): Likewise.
+ (try_expand_single_string_literal): Likewise.
+ (try_expand_many_expr): Likewise.
+ (parse_single_string_literal): Add macro expander as argument.
+ (MacroBuiltin::include_bytes): Pass expander as argument to
+ `parse_single_string_literal`.
+ (MacroBuiltin::include_str): Likewise.
+ (MacroBuiltin::compile_error): Likewise.
+ (MacroBuiltin::include): Likewise.
+ (MacroBuiltin::concat): Likewise and add better error handling.
+ (MacroBuiltin::env): Likewise.
+ * expand/rust-macro-expand.cc (MacroExpander::expand_invoc): Expand
+ invocations recursively.
+
+2023-01-31 Arthur Cohen <arthur.cohen@embecosm.com>
+
+ * lang.opt: Add new ``-frust-compile-until` option.
+ * rust-session-manager.cc (Session::compile_crate): Add stops around
+ various compilation steps in the pipeline.
+ * rust-session-manager.h (struct CompileOptions): Add `CompileStep` enum
+ and field.
+
+2023-01-31 Philip Herron <philip.herron@embecosm.com>
+
+ * backend/rust-tree.cc (rs_type_quals): Comment out bad assertion
+
+2023-01-31 Philip Herron <philip.herron@embecosm.com>
+
+ * typecheck/rust-hir-type-check-toplevel.cc (TypeCheckTopLevel::visit):
+ Make static items behave more similarly to const items.
+
+2023-01-31 Philip Herron <philip.herron@embecosm.com>
+
+ * backend/rust-compile-item.cc (CompileItem::visit): Const evaluate
+ static item expressions.
+
+2023-01-31 Arthur Cohen <arthur.cohen@embecosm.com>
+
+ * hir/rust-ast-lower-item.cc (ASTLoweringItem::visit): Do not lower
+ null items within modules.
+
+2023-01-31 Arthur Cohen <arthur.cohen@embecosm.com>
+
+ * util/rust-attributes.cc: Add `macro_use` to list of builtin
+ attributes.
+
+2023-01-31 Arthur Cohen <arthur.cohen@embecosm.com>
+
+ * checks/errors/rust-const-checker.cc (ConstChecker::ctx_to_str): Allow
+ getting an error string from a specific constant context.
+ (ConstChecker::ctx_allows_default): New function, check if a context
+ allows default values for Const generics.
+ (ConstChecker::visit): Call into `ctx_allows_default`.
+ * checks/errors/rust-const-checker.h: Declare `ctx_allows_default`.
+
+2023-01-31 liushuyu <liushuyu011@gmail.com>
+
+ * backend/rust-compile-expr.cc (CompileExpr::visit): Properly formulate
+ exit condition when compiling while loops.
+
+2023-01-31 Faisal Abbas <90.abbasfaisal@gmail.com>
+
+ * typecheck/rust-hir-type-check-stmt.cc (TypeCheckStmt::visit): Turn
+ constant item typechecking into a coercion site instead of a unify
+ site.
+
+2023-01-31 Philip Herron <philip.herron@embecosm.com>
+
+ * typecheck/rust-tyty.h: Fix `is_concrete` for unit types with
+ substitutions.
+
+2023-01-31 Philip Herron <philip.herron@embecosm.com>
+
+ * typecheck/rust-tyty-bounds.cc (TypeBoundPredicate::contains_associated_types):
+ Check if a type bound predicate contains assocated types.
+ * typecheck/rust-tyty.h: Declare the above mentioned function.
+ * typecheck/rust-hir-trait-resolve.cc: Use `contains_associated_types`
+ function.
+
+2023-01-31 Philip Herron <philip.herron@embecosm.com>
+
+ * typecheck/rust-hir-type-check-expr.cc (TypeCheckExpr::visit): Add
+ more calls to `rust_debug` for development.
+
+2023-01-31 Philip Herron <philip.herron@embecosm.com>
+
+ * backend/rust-compile-base.cc: Improve compilation pipeline and simplify
+ function.
+
+2023-01-31 Philip Herron <philip.herron@embecosm.com>
+
+ * backend/rust-tree.cc (comptypes): Remove some C++ specific checks in
+ Rust const folder for now.
+
+2023-01-31 Philip Herron <philip.herron@embecosm.com>
+
+ * typecheck/rust-hir-type-check-base.cc (TypeCheckBase::unify_site): Add
+ better unification function with debug calls.
+ * typecheck/rust-autoderef.cc (AutoderefCycle::cycle): Add more debug
+ calls and use new unify API.
+ * typecheck/rust-coercion.cc (TypeCoercionRules::do_coercion): Likewise.
+ (TypeCoercionRules::coerce_borrowed_pointer): Likewise.
+ (TypeCoercionRules::select): Likewise.
+ * typecheck/rust-hir-dot-operator.cc (MethodResolver::select): Likewise.
+ * typecheck/rust-hir-trait-resolve.cc (TraitItemReference::resolve_item): Likewise.
+ (TypeCheckBase::coercion_site): Likewise.
+ (TypeCheckBase::cast_site): Likewise.
+ * typecheck/rust-hir-type-check-base.h: Likewise.
+ * typecheck/rust-hir-type-check-enumitem.cc (TypeCheckEnumItem::visit): Likewise.
+ * typecheck/rust-hir-type-check-expr.cc (TypeCheckExpr::visit): Likewise.
+ * typecheck/rust-hir-type-check-implitem.cc (TypeCheckTopLevelImplItem::visit): Likewise.
+ (TypeCheckImplItem::visit): Likewise.
+ * typecheck/rust-hir-type-check-item.cc (TypeCheckItem::visit): Likewise.
+ * typecheck/rust-hir-type-check-path.cc (TypeCheckExpr::resolve_segments): Likewise.
+ * typecheck/rust-hir-type-check-pattern.cc (TypeCheckPattern::visit): Likewise.
+ * typecheck/rust-hir-type-check-stmt.cc (TypeCheckStmt::visit): Likewise.
+ * typecheck/rust-hir-type-check-struct.cc (TypeCheckStructExpr::resolve): Likewise.
+ * typecheck/rust-hir-type-check-toplevel.cc (TypeCheckTopLevel::visit): Likewise.
+ * typecheck/rust-hir-type-check-type.cc (TypeCheckType::visit): Likewise.
+ * typecheck/rust-hir-type-check.cc (TypeResolution::Resolve): Likewise.
+ * typecheck/rust-tyctx.cc (TypeCheckContext::peek_return_type): Likewise.
+ * typecheck/rust-tyty-call.cc (TypeCheckMethodCallExpr::visit): Likewise.
+ * typecheck/rust-tyty-cmp.h: Likewise.
+ * typecheck/rust-tyty-rules.h: Likewise.
+ * typecheck/rust-tyty.cc (BaseType::mappings_str): Likewise.
+ (BaseType::debug): Print type name more clearly.
+ (BaseType::debug_str): Add new function to print type pointer and name.
+ (TupleType::get_name): Improve type name fetching function.
+ (ReferenceType::get_name): Likewise.
+ (PointerType::get_name): Likewise.
+ * typecheck/rust-tyty.h: Refactor definitions outside of the header.
+
+2023-01-31 Philip Herron <philip.herron@embecosm.com>
+
+ * typecheck/rust-hir-type-check-base.cc (TypeCheckBase::TypeCheckBase):
+ Remove constructor.
+ (TypeCheckBase::coercion_site): Add `Location` argument to function.
+ * typecheck/rust-hir-type-check-base.h: Use `TypeCheckBase::coercion_site`
+ function with location argument.
+ * typecheck/rust-hir-type-check-enumitem.cc (TypeCheckEnumItem::visit): Likewise.
+ * typecheck/rust-hir-type-check-expr.cc (TypeCheckExpr::visit): Likewise.
+ * typecheck/rust-hir-type-check-expr.h (class TypeCheckExpr): Likewise.
+ * typecheck/rust-hir-type-check-stmt.cc (TypeCheckStmt::visit): Likewise.
+ * typecheck/rust-hir-type-check-struct.cc (TypeCheckStructExpr::visit): Likewise.
+ * typecheck/rust-hir-type-check-toplevel.cc (TypeCheckTopLevel::visit): Likewise.
+ * typecheck/rust-tyty-call.cc (TypeCheckCallExpr::visit): Likewise.
+ (TypeCheckMethodCallExpr::visit): Likewise.
+ * typecheck/rust-tyty.h: Add missing locus field.
+ * typecheck/rust-tyty.cc (StructFieldType::clone): Use locus field.
+ (StructFieldType::monomorphized_clone): Likewise.
+
+2023-01-31 Philip Herron <philip.herron@embecosm.com>
+
+ * typecheck/rust-tyctx.cc (TypeCheckContext::pop_return_type): Add
+ guards around `std::vector<T>.pop_back()`.
+ (TypeCheckContext::peek_context): Likewise for `std::vector<T>.back()`.
+
+2023-01-31 Arthur Cohen <arthur.cohen@embecosm.com>
+ philberty <philip.herron@embecosm.com>
+
+ * ast/rust-ast.h: Improve assertions within ASTFragment API.
+
+2023-01-31 Arthur Cohen <arthur.cohen@embecosm.com>
+
+ * ast/rust-ast.h: Add assertions and accessors for fragment nodes.
+ * expand/rust-attribute-visitor.cc (AttrVisitor::visit): Fix expansion
+ context typo when visiting `InherentImpl` items.
+ (AttrVisitor::maybe_expand_expr): Use new Fragment accessor to fetch
+ properly typed node.
+ (AttrVisitor::maybe_expand_type): Likewise.
+ * expand/rust-macro-expand.cc (transcribe_type): Emit parse errors
+ when trying to parse a type.
+
+2023-01-31 Arthur Cohen <arthur.cohen@embecosm.com>
+
+ * ast/rust-ast-dump.h: Add shorthand `AST::Dump::debug` function to
+ dump an AST node on `stderr`.
+
+2023-01-31 Arthur Cohen <arthur.cohen@embecosm.com>
+ philberty <philip.herron@embecosm.com>
+
+ * expand/rust-macro-expand.cc (parse_many): Return early from parsing
+ loop if we encounter an error, and emit that error in the meantime.
+
+2023-01-31 Arthur Cohen <arthur.cohen@embecosm.com>
+
+ * expand/rust-macro-expand.cc (MacroExpander::match_matcher): Handle
+ fragments differently based on whether or not we are currently trying
+ to match a matcher in a repetition context.
+ (MacroExpander::match_n_matches): Use new `in_repetition` argument
+ properly when calling `match_matcher`.
+ * expand/rust-macro-expand.h (MacroExpander::match_matcher): Allow
+ passing extra `in_repetition` bool argument
+
+2023-01-31 Arthur Cohen <arthur.cohen@embecosm.com>
+
+ * parse/rust-parse-impl.h: Allow parsing full range expressions without
+ erroring out.
+
+2023-01-31 Arthur Cohen <arthur.cohen@embecosm.com>
+
+ * checks/lints/rust-lint-scan-deadcode.h: Do not report public items
+ as dead code.
+
+2023-01-31 Arthur Cohen <arthur.cohen@embecosm.com>
+
+ * util/rust-attributes.cc: Add `rustc_inherit_overflow_checks` to list
+ of builtin attributes.
+
+2023-01-31 Arthur Cohen <arthur.cohen@embecosm.com>
+
+ * backend/rust-compile-expr.cc (CompileExpr::visit): Insert overflow
+ checks logic.
+ (CompileExpr::array_copied_expr): Insert overflow checks logic.
+ * backend/rust-compile-item.cc (CompileItem::visit): Insert overflow
+ checks logic.
+ * backend/rust-compile-type.cc (TyTyResolveCompile::visit): Insert
+ overflow checks logic.
+ * rust-gcc.cc (Gcc_backend::arithmetic_or_logical_expression): Differentiate
+ existing function from `arithmetic_or_logical_expression_checked`.
+ This function does insert perform overflow checks.
+ (Gcc_backend::arithmetic_or_logical_expression_checked): New
+ function.
+ (is_overflowing_expr): New function. Check if an expression is an
+ overflowing one (ADD, SUB, MUL).
+ (fetch_overflow_builtins): New function.
+ * rust-backend.h: Declare `arithmetic_or_logical_expression_checked` in
+ abstract `Backend` class.
+
+2023-01-31 Arthur Cohen <arthur.cohen@embecosm.com>
+
+ * backend/rust-builtins.h: Refactor builtin context class and add
+ overflow builtins.
+
+2023-01-31 Arthur Cohen <arthur.cohen@embecosm.com>
+
+ * rust-gcc.cc (class Bvariable): Move class to `rust-gcc.h` header.
+ * rust-gcc.h: New file.
+
+2023-01-31 Philip Herron <philip.herron@embecosm.com>
+
+ * hir/rust-ast-lower-expr.h: Lower double borrow expressions to two
+ `HIR::BorrowExpr`s.
+ * hir/tree/rust-hir-expr.h: Remove `is_double_borrow` field from
+ `HIR::BorrowExpr`.
+ * typecheck/rust-hir-type-check-expr.cc (TypeCheckExpr::visit): Remove
+ call to `gcc_unreachable` on double borrow expressions.
+
+2023-01-31 Faisal Abbas <90.abbasfaisal@gmail.com>
+
+ * backend/rust-tree.cc : Add new includes.
+ (scope_chain): New.
+ (maybe_add_global): New.
+ (init_modules): New (copied from cp)
+ (var_in_constexpr_fn): Likewise.
+ (member_vec_linear_search): Likewise.
+ (member_vec_binary_search): Likewise.
+ (is_overloaded_fn): Likewise.
+ (ovl_make): Likewise.
+ (lookup_add): Likewise.
+ (type_memfn_quals): Likewise.
+ (struct find_parameter_pack_data): Likewise.
+ (struct conv_type_hasher): Likewise.
+ (make_conv_op_name): Likewise.
+ (builtin_pack_fn_p): Likewise.
+ (builtin_pack_call_p): Likewise.
+ (has_extra_args_mechanism_p): Likewise.
+ (find_parameter_packs_r): Likewise.
+ (WALK_SUBTREE): Likewise.
+ (type_memfn_rqual): Likewise.
+ (maybe_add_lang_type_raw): Likewise.
+ (struct c_fileinfo): Likewise.
+ (get_fileinfo): Likewise.
+ (cxx_make_type): Likewise.
+ (build_min_array_type): Likewise.
+ (fields_linear_search): Likewise.
+ (nothrow_spec_p): Likewise.
+ (maybe_get_fns): Likewise.
+ (get_fns): Likewise.
+ (get_first_fn): Likewise.
+ (dependent_name): Likewise.
+ (called_fns_equal): Likewise.
+ (canonical_eh_spec): Likewise.
+ (rs_tree_code_length): Likewise.
+ (rs_tree_operand_length): Likewise.
+ (rs_tree_equal): Likewise.
+ (publicly_uniquely_derived_p): Likewise.
+ (comp_except_types): Likewise.
+ (comp_except_specs): Likewise.
+ (compparms): Likewise.
+ (set_array_type_canon): Likewise.
+ (struct cplus_array_info): Likewise.
+ (struct cplus_array_hasher): Likewise.
+ (cplus_array_hasher::hash): Likewise.
+ (cplus_array_hasher::equal): Likewise.
+ (is_byte_access_type): Likewise.
+ (build_cplus_array_type): Likewise.
+ (rs_build_qualified_type_real): Likewise.
+ (vector_targets_convertible_p): Likewise.
+ (comp_array_types): Likewise.
+ (same_type_ignoring_top_level_qualifiers_p): Likewise.
+ (comp_ptr_ttypes_const): Likewise.
+ (similar_type_p): Likewise.
+ (structural_comptypes): Likewise.
+ (comptypes): Likewise.
+ (next_initializable_field): Likewise.
+ (sufficient_parms_p): Likewise.
+ (default_ctor_p): Likewise.
+ (user_provided_p): Likewise.
+ (type_has_non_user_provided_default_constructor): Likewise.
+ (default_init_uninitialized_part): Likewise.
+ (extract_conversion_operator): Likewise.
+ (get_class_binding_direct): Likewise.
+ (lang_check_failed): Likewise.
+ (skip_artificial_parms_for): Likewise.
+ (in_class_defaulted_default_constructor): Likewise.
+ (is_instantiation_of_constexpr): Likewise.
+ (check_for_uninitialized_const_var): Likewise.
+ (cv_unqualified): Likewise.
+ (make_tree_vector): Likewise.
+ (release_tree_vector): Likewise.
+ (instantiation_dependent_expression_p): Likewise.
+ (cp_get_callee): Likewise.
+ (build_nop): Likewise.
+ (scalarish_type_p): Likewise.
+ (type_has_nontrivial_copy_init): Likewise.
+ (build_local_temp): Likewise.
+ (is_normal_capture_proxy): Likewise.
+ (reject_gcc_builtin): Likewise.
+ (is_bitfield_expr_with_lowered_type): Likewise.
+ (maybe_undo_parenthesized_ref): Likewise.
+ (fold_offsetof): Likewise.
+ (char_type_p): Likewise.
+ (resolve_nondeduced_context): Likewise.
+ (instantiate_non_dependent_or_null): Likewise.
+ (resolve_nondeduced_context_or_error): Likewise.
+ (really_overloaded_fn): Likewise.
+ (invalid_nonstatic_memfn_p): Likewise.
+ (strip_top_quals): Likewise.
+ (cxx_incomplete_type_inform): Likewise.
+ (cxx_incomplete_type_diagnostic): Likewise.
+ (decl_constant_var_p): Likewise.
+ (undeduced_auto_decl): Likewise.
+ (require_deduced_type): Likewise.
+ * backend/rust-tree.h (enum c_tree_index): Likewise.
+ (GTY): Likewise.
+ (enum cp_tree_index): Likewise.
+ (wchar_decl_node): Likewise.
+ (vtable_entry_type): Likewise.
+ (delta_type_node): Likewise.
+ (vtable_index_type): Likewise.
+ (class_type_node): Likewise.
+ (unknown_type_node): Likewise.
+ (init_list_type_node): Likewise.
+ (explicit_void_list_node): Likewise.
+ (vtbl_type_node): Likewise.
+ (vtbl_ptr_type_node): Likewise.
+ (std_node): Likewise.
+ (abi_node): Likewise.
+ (global_namespace): Likewise.
+ (const_type_info_type_node): Likewise.
+ (conv_op_marker): Likewise.
+ (abort_fndecl): Likewise.
+ (current_aggr): Likewise.
+ (nullptr_node): Likewise.
+ (nullptr_type_node): Likewise.
+ (align_type_node): Likewise.
+ (char8_type_node): Likewise.
+ (char16_type_node): Likewise.
+ (char32_type_node): Likewise.
+ (wchar_type_node): Likewise.
+ (underlying_wchar_type_node): Likewise.
+ (wint_type_node): Likewise.
+ (signed_size_type_node): Likewise.
+ (unsigned_ptrdiff_type_node): Likewise.
+ (intmax_type_node): Likewise.
+ (uintmax_type_node): Likewise.
+ (widest_integer_literal_type_node): Likewise.
+ (widest_unsigned_literal_type_node): Likewise.
+ (sig_atomic_type_node): Likewise.
+ (int8_type_node): Likewise.
+ (int16_type_node): Likewise.
+ (int32_type_node): Likewise.
+ (int64_type_node): Likewise.
+ (uint8_type_node): Likewise.
+ (c_uint16_type_node): Likewise.
+ (c_uint32_type_node): Likewise.
+ (c_uint64_type_node): Likewise.
+ (int_least8_type_node): Likewise.
+ (int_least16_type_node): Likewise.
+ (int_least32_type_node): Likewise.
+ (int_least64_type_node): Likewise.
+ (uint_least8_type_node): Likewise.
+ (uint_least16_type_node): Likewise.
+ (uint_least32_type_node): Likewise.
+ (uint_least64_type_node): Likewise.
+ (int_fast8_type_node): Likewise.
+ (int_fast16_type_node): Likewise.
+ (int_fast32_type_node): Likewise.
+ (int_fast64_type_node): Likewise.
+ (uint_fast8_type_node): Likewise.
+ (uint_fast16_type_node): Likewise.
+ (uint_fast32_type_node): Likewise.
+ (uint_fast64_type_node): Likewise.
+ (intptr_type_node): Likewise.
+ (uintptr_type_node): Likewise.
+ (truthvalue_type_node): Likewise.
+ (truthvalue_true_node): Likewise.
+ (truthvalue_false_node): Likewise.
+ (char_array_type_node): Likewise.
+ (char8_array_type_node): Likewise.
+ (char16_array_type_node): Likewise.
+ (char32_array_type_node): Likewise.
+ (wchar_array_type_node): Likewise.
+ (string_type_node): Likewise.
+ (const_string_type_node): Likewise.
+ (default_function_type): Likewise.
+ (function_name_decl_node): Likewise.
+ (pretty_function_name_decl_node): Likewise.
+ (c99_function_name_decl_node): Likewise.
+ (saved_function_name_decls): Likewise.
+ (null_node): Likewise.
+ (ctor_identifier): Likewise.
+ (complete_ctor_identifier): Likewise.
+ (base_ctor_identifier): Likewise.
+ (dtor_identifier): Likewise.
+ (complete_dtor_identifier): Likewise.
+ (base_dtor_identifier): Likewise.
+ (deleting_dtor_identifier): Likewise.
+ (conv_op_identifier): Likewise.
+ (delta_identifier): Likewise.
+ (in_charge_identifier): Likewise.
+ (vtt_parm_identifier): Likewise.
+ (as_base_identifier): Likewise.
+ (this_identifier): Likewise.
+ (pfn_identifier): Likewise.
+ (vptr_identifier): Likewise.
+ (global_identifier): Likewise.
+ (anon_identifier): Likewise.
+ (auto_identifier): Likewise.
+ (decltype_auto_identifier): Likewise.
+ (init_list_identifier): Likewise.
+ (for_range__identifier): Likewise.
+ (for_begin__identifier): Likewise.
+ (for_end__identifier): Likewise.
+ (for_range_identifier): Likewise.
+ (for_begin_identifier): Likewise.
+ (for_end_identifier): Likewise.
+ (abi_tag_identifier): Likewise.
+ (aligned_identifier): Likewise.
+ (begin_identifier): Likewise.
+ (end_identifier): Likewise.
+ (get__identifier): Likewise.
+ (gnu_identifier): Likewise.
+ (tuple_element_identifier): Likewise.
+ (tuple_size_identifier): Likewise.
+ (type_identifier): Likewise.
+ (value_identifier): Likewise.
+ (fun_identifier): Likewise.
+ (closure_identifier): Likewise.
+ (heap_uninit_identifier): Likewise.
+ (heap_identifier): Likewise.
+ (heap_deleted_identifier): Likewise.
+ (heap_vec_uninit_identifier): Likewise.
+ (heap_vec_identifier): Likewise.
+ (omp_identifier): Likewise.
+ (lang_name_c): Likewise.
+ (lang_name_cplusplus): Likewise.
+ (empty_except_spec): Likewise.
+ (noexcept_true_spec): Likewise.
+ (noexcept_false_spec): Likewise.
+ (noexcept_deferred_spec): Likewise.
+ (terminate_fn): Likewise.
+ (call_unexpected_fn): Likewise.
+ (get_exception_ptr_fn): Likewise.
+ (begin_catch_fn): Likewise.
+ (end_catch_fn): Likewise.
+ (allocate_exception_fn): Likewise.
+ (free_exception_fn): Likewise.
+ (throw_fn): Likewise.
+ (rethrow_fn): Likewise.
+ (atexit_fn_ptr_type_node): Likewise.
+ (atexit_node): Likewise.
+ (dso_handle_node): Likewise.
+ (dynamic_cast_node): Likewise.
+ (cleanup_type): Likewise.
+ (vtt_parm_type): Likewise.
+ (any_targ_node): Likewise.
+ (source_location_impl): Likewise.
+ (OVL_FUNCTION): Likewise.
+ (OVL_CHAIN): Likewise.
+ (OVL_DEDUP_P): Likewise.
+ (OVL_USING_P): Likewise.
+ (OVL_HIDDEN_P): Likewise.
+ (OVL_NESTED_P): Likewise.
+ (OVL_LOOKUP_P): Likewise.
+ (OVL_EXPORT_P): Likewise.
+ (OVL_FIRST): Likewise.
+ (OVL_NAME): Likewise.
+ (OVL_P): Likewise.
+ (OVL_SINGLE_P): Likewise.
+ (TYPE_HAS_DEFAULT_CONSTRUCTOR): Likewise.
+ (CLASSTYPE_LAZY_DEFAULT_CTOR): Likewise.
+ (CLASSTYPE_CONSTRUCTORS): Likewise.
+ (ATTR_IS_DEPENDENT): Likewise.
+ (ABI_TAG_IMPLICIT): Likewise.
+ (PARENTHESIZED_LIST_P): Likewise.
+ (DECL_DEPENDENT_P): Likewise.
+ (USING_DECL_SCOPE): Likewise.
+ (USING_DECL_DECLS): Likewise.
+ (USING_DECL_TYPENAME_P): Likewise.
+ (USING_DECL_UNRELATED_P): Likewise.
+ (DECL_DECLARES_FUNCTION_P): Likewise.
+ (DECL_DECLARES_TYPE_P): Likewise.
+ (IDENTIFIER_KIND_BIT_0): Likewise.
+ (IDENTIFIER_KIND_BIT_1): Likewise.
+ (IDENTIFIER_KIND_BIT_2): Likewise.
+ (IDENTIFIER_MARKED): Likewise.
+ (IDENTIFIER_VIRTUAL_P): Likewise.
+ (IDENTIFIER_KEYWORD_P): Likewise.
+ (IDENTIFIER_CDTOR_P): Likewise.
+ (IDENTIFIER_CTOR_P): Likewise.
+ (IDENTIFIER_DTOR_P): Likewise.
+ (IDENTIFIER_ANY_OP_P): Likewise.
+ (IDENTIFIER_OVL_OP_P): Likewise.
+ (IDENTIFIER_ASSIGN_OP_P): Likewise.
+ (IDENTIFIER_CONV_OP_P): Likewise.
+ (IDENTIFIER_NEWDEL_OP_P): Likewise.
+ (IDENTIFIER_NEW_OP_P): Likewise.
+ (CLASSTYPE_DIAMOND_SHAPED_P): Likewise.
+ (CLASSTYPE_REPEATED_BASE_P): Likewise.
+ (CLASSTYPE_KEY_METHOD): Likewise.
+ (CLASSTYPE_MEMBER_VEC): Likewise.
+ (CLASSTYPE_DECL_LIST): Likewise.
+ (CLASSTYPE_DESTRUCTOR): Likewise.
+ (CLASSTYPE_HAS_PRIMARY_BASE_P): Likewise.
+ (CLASSTYPE_PRIMARY_BINFO): Likewise.
+ (CLASSTYPE_VBASECLASSES): Likewise.
+ (CLASSTYPE_AS_BASE): Likewise.
+ (DECL_CONV_FN_P): Likewise.
+ (DECL_CONV_FN_TYPE): Likewise.
+ (same_type_p): Likewise.
+ (WILDCARD_TYPE_P): Likewise.
+ (MAYBE_CLASS_TYPE_P): Likewise.
+ (FUNCTION_REF_QUALIFIED): Likewise.
+ (FUNCTION_RVALUE_QUALIFIED): Likewise.
+ (TYPE_PTRMEMFUNC_FN_TYPE): Likewise.
+ (TYPE_PTRMEMFUNC_FN_TYPE_RAW): Likewise.
+ (TYPE_DEPENDENT_P): Likewise.
+ (TYPE_DEPENDENT_P_VALID): Likewise.
+ (TYPE_HAS_NONTRIVIAL_DESTRUCTOR): Likewise.
+ (TYPE_RAISES_EXCEPTIONS): Likewise.
+ (IDENTIFIER_BINDING): Likewise.
+ (LANG_IDENTIFIER_CAST): Likewise.
+ (IF_COND): Likewise.
+ (THEN_CLAUSE): Likewise.
+ (ELSE_CLAUSE): Likewise.
+ (IF_SCOPE): Likewise.
+ (IF_STMT_CONSTEXPR_P): Likewise.
+ (IF_STMT_CONSTEVAL_P): Likewise.
+ (DECLTYPE_TYPE_EXPR): Likewise.
+ (SET_CLASSTYPE_INTERFACE_UNKNOWN_X): Likewise.
+ (CLASSTYPE_INTERFACE_ONLY): Likewise.
+ (TYPE_NAME_STRING): Likewise.
+ (TYPE_NAME_LENGTH): Likewise.
+ (CONSTRAINT_VAR_P): Likewise.
+ (KOENIG_LOOKUP_P): Likewise.
+ (DECL_PARM_INDEX): Likewise.
+ (DECL_PARM_LEVEL): Likewise.
+ (CONV_IMPLICIT): Likewise.
+ (CONV_STATIC): Likewise.
+ (CONV_CONST): Likewise.
+ (CONV_REINTERPRET): Likewise.
+ (CONV_PRIVATE): Likewise.
+ (CONV_FORCE_TEMP): Likewise.
+ (CONV_FOLD): Likewise.
+ (CONV_OLD_CONVERT): Likewise.
+ (CONV_C_CAST): Likewise.
+ (CONV_BACKEND_CONVERT): Likewise.
+ (WANT_INT): Likewise.
+ (WANT_FLOAT): Likewise.
+ (WANT_ENUM): Likewise.
+ (WANT_POINTER): Likewise.
+ (WANT_NULL): Likewise.
+ (WANT_VECTOR_OR_COMPLEX): Likewise.
+ (WANT_ARITH): Likewise.
+ (COMPARE_STRICT): Likewise.
+ (COMPARE_BASE): Likewise.
+ (COMPARE_DERIVED): Likewise.
+ (COMPARE_REDECLARATION): Likewise.
+ (COMPARE_STRUCTURAL): Likewise.
+ (SF_DEFAULT): Likewise.
+ (SF_PRE_PARSED): Likewise.
+ (SF_INCLASS_INLINE): Likewise.
+ (SD_UNINITIALIZED): Likewise.
+ (SD_INITIALIZED): Likewise.
+ (SD_DECOMPOSITION): Likewise.
+ (SD_DEFAULTED): Likewise.
+ (SD_DELETED): Likewise.
+ (TYPE_PTRDATAMEM_P): Likewise.
+ (RS_TYPE_CONST_P): Likewise.
+ (TYPE_MAIN_DECL): Likewise.
+ (DECL_NONTRIVIALLY_INITIALIZED_P): Likewise.
+ (DECL_DEFAULTED_FN): Likewise.
+ (TYPE_HAS_USER_CONSTRUCTOR): Likewise.
+ (DECL_INITIALIZED_IN_CLASS_P): Likewise.
+ (DECL_DEFAULTED_IN_CLASS_P): Likewise.
+ (DECL_NONSTATIC_MEMBER_FUNCTION_P): Likewise.
+ (DECL_HAS_IN_CHARGE_PARM_P): Likewise.
+ (DECL_HAS_VTT_PARM_P): Likewise.
+ (FUNCTION_FIRST_USER_PARMTYPE): Likewise.
+ (FUNCTION_FIRST_USER_PARM): Likewise.
+ (DECL_CONSTRUCTOR_P): Likewise.
+ (DECL_DELETED_FN): Likewise.
+ (BRACE_ENCLOSED_INITIALIZER_P): Likewise.
+ (DECL_IMMEDIATE_FUNCTION_P): Likewise.
+ (SET_DECL_IMMEDIATE_FUNCTION_P): Likewise.
+ (CONSTRUCTOR_MUTABLE_POISON): Likewise.
+ (PTRMEM_CST_MEMBER): Likewise.
+ (REF_PARENTHESIZED_P): Likewise.
+ (TYPE_PTRMEM_P): Likewise.
+ (TYPE_PTR_OR_PTRMEM_P): Likewise.
+ (DECL_DECOMPOSITION_P): Likewise.
+ (DECL_DECOMP_BASE): Likewise.
+ (DECL_MAYBE_IN_CHARGE_CDTOR_P): Likewise.
+ (DECL_MAYBE_IN_CHARGE_DESTRUCTOR_P): Likewise.
+ (DECL_CLONED_FUNCTION_P): Likewise.
+ (DECL_CLONED_FUNCTION): Likewise.
+ (DECL_MAYBE_IN_CHARGE_CONSTRUCTOR_P): Likewise.
+ (cp_function_chain): Likewise.
+ (cdtor_label): Likewise.
+ (current_class_ptr): Likewise.
+ (current_class_ref): Likewise.
+ (current_eh_spec_block): Likewise.
+ (current_in_charge_parm): Likewise.
+ (current_vtt_parm): Likewise.
+ (current_retval_sentinel): Likewise.
+ (current_function_returns_value): Likewise.
+ (current_function_returns_null): Likewise.
+ (current_function_returns_abnormally): Likewise.
+ (current_function_infinite_loop): Likewise.
+ (in_base_initializer): Likewise.
+ (in_function_try_handler): Likewise.
+ (current_function_return_value): Likewise.
+ (current_class_type): Likewise.
+ (TYPE_BEING_DEFINED): Likewise.
+ (DECL_STATIC_FUNCTION_P): Likewise.
+ (DECL_FUNCTION_MEMBER_P): Likewise.
+ (LANG_DECL_MIN_CHECK): Likewise.
+ (LANG_DECL_FN_CHECK): Likewise.
+ (LANG_DECL_NS_CHECK): Likewise.
+ (LANG_DECL_PARM_CHECK): Likewise.
+ (LANG_DECL_DECOMP_CHECK): Likewise.
+ (RS_INTEGRAL_TYPE_P): Likewise.
+ (STAT_HACK_P): Likewise.
+ (STAT_TYPE_VISIBLE_P): Likewise.
+ (STAT_TYPE): Likewise.
+ (STAT_DECL): Likewise.
+ (STAT_VISIBLE): Likewise.
+ (MAYBE_STAT_DECL): Likewise.
+ (MAYBE_STAT_TYPE): Likewise.
+ (STAT_TYPE_HIDDEN_P): Likewise.
+ (STAT_DECL_HIDDEN_P): Likewise.
+ (class warning_sentinel): Likewise.
+ (struct uid_sensitive_constexpr_evaluation_checker): Likewise.
+ (class iloc_sentinel): Likewise.
+ (struct GTY): Likewise.
+ (struct named_decl_hash): Likewise.
+ (enum lang_decl_selector): Likewise.
+ (LANG_DECL_HAS_MIN): Likewise.
+ (struct named_label_entry): Likewise.
+ (struct named_label_hash): Likewise.
+ (enum ref_operator): Likewise.
+ (struct c_fileinfo): Likewise.
+ (class ovl_iterator): Likewise.
+ (class lkp_iterator): Likewise.
+ (enum rs_ref_qualifier): Likewise.
+ (enum tsubst_flags): Likewise.
+ (enum cp_identifier_kind): Likewise.
+ (enum tag_types): Likewise.
+ (enum compare_bounds_t): Likewise.
+ (mark_rvalue_use): Likewise.
+ (type_unknown_p): Likewise.
+ (init_modules): Likewise.
+ (var_in_constexpr_fn): Likewise.
+ (ovl_first): Likewise.
+ (lookup_add): Likewise.
+ (ovl_make): Likewise.
+ (is_overloaded_fn): Likewise.
+ (maybe_add_lang_type_raw): Likewise.
+ (type_memfn_rqual): Likewise.
+ (builtin_pack_fn_p): Likewise.
+ (make_conv_op_name): Likewise.
+ (type_memfn_quals): Likewise.
+ (get_fileinfo): Likewise.
+ (cxx_make_type): Likewise.
+ (build_cplus_array_type): Likewise.
+ (is_byte_access_type): Likewise.
+ (comptypes): Likewise.
+ (canonical_eh_spec): Likewise.
+ (cp_tree_operand_length): Likewise.
+ (rs_tree_equal): Likewise.
+ (compparms): Likewise.
+ (rs_build_qualified_type_real): Likewise.
+ (rs_build_qualified_type): Likewise.
+ (cv_qualified_p): Likewise.
+ (similar_type_p): Likewise.
+ (vector_targets_convertible_p): Likewise.
+ (same_type_ignoring_top_level_qualifiers_p): Likewise.
+ (comp_ptr_ttypes_const): Likewise.
+ (get_class_binding_direct): Likewise.
+ (skip_artificial_parms_for): Likewise.
+ (lang_check_failed): Likewise.
+ (default_init_uninitialized_part): Likewise.
+ (type_has_non_user_provided_default_constructor): Likewise.
+ (default_ctor_p): Likewise.
+ (user_provided_p): Likewise.
+ (sufficient_parms_p): Likewise.
+ (next_initializable_field): Likewise.
+ (in_class_defaulted_default_constructor): Likewise.
+ (is_instantiation_of_constexpr): Likewise.
+ (check_for_uninitialized_const_var): Likewise.
+ (reduced_constant_expression_p): Likewise.
+ (cv_unqualified): Likewise.
+ (cp_get_callee): Likewise.
+ (cp_get_callee_fndecl_nofold): Likewise.
+ (is_nondependent_static_init_expression): Likewise.
+ (maybe_constant_init): Likewise.
+ (build_nop): Likewise.
+ (scalarish_type_p): Likewise.
+ (is_bitfield_expr_with_lowered_type): Likewise.
+ (convert_bitfield_to_declared_type): Likewise.
+ (cp_fold_maybe_rvalue): Likewise.
+ (maybe_undo_parenthesized_ref): Likewise.
+ (fold_offsetof): Likewise.
+ (cp_truthvalue_conversion): Likewise.
+ (fold_non_dependent_expr): Likewise.
+ (char_type_p): Likewise.
+ (instantiation_dependent_expression_p): Likewise.
+ (type_has_nontrivial_copy_init): Likewise.
+ (build_local_temp): Likewise.
+ (is_normal_capture_proxy): Likewise.
+ (reject_gcc_builtin): Likewise.
+ (resolve_nondeduced_context): Likewise.
+ (cxx_incomplete_type_diagnostic): Likewise.
+ (cxx_incomplete_type_error): Likewise.
+ (invalid_nonstatic_memfn_p): Likewise.
+ (really_overloaded_fn): Likewise.
+ (resolve_nondeduced_context_or_error): Likewise.
+ (instantiate_non_dependent_or_null): Likewise.
+ (cxx_incomplete_type_inform): Likewise.
+ (strip_top_quals): Likewise.
+ (undeduced_auto_decl): Likewise.
+ (require_deduced_type): Likewise.
+ (decl_constant_var_p): Likewise.
+ (type_of_this_parm): Likewise.
+ (class_of_this_parm): Likewise.
+ (identifier_p): Likewise.
+ (gnu_vector_type_p): Likewise.
+ (make_tree_vector): Likewise.
+ (release_tree_vector): Likewise.
+ (class releasing_vec): Likewise.
+ (vec_safe_push): Likewise.
+ (null_node_p): Likewise.
+ * backend/rust-compile-base.cc (HIRCompileBase::setup_fndecl): Correctly
+ set fndecl as constexpr from qualifiers.
+ (HIRCompileBase::compile_function): Test if fndecl is constexpr.
+ (HIRCompileBase::compile_constant_item): Set fndecl as constexpr.
+ * backend/rust-compile-intrinsic.cc : Update include.
+ (finalize_intrinsic_block): Set fndecl as constexpr.
+ * backend/rust-constexpr.cc : Update include.
+ (VERIFY_CONSTANT): New.
+ (is_instantiation_of_constexpr): New.
+ (literal_type_p): New.
+ (verify_constant): New.
+ (find_array_ctor_elt): New.
+ (array_index_cmp): New.
+ (potential_constant_expression_1): New.
+ (get_nth_callarg): New.
+ (unshare_constructor): New.
+ (maybe_save_constexpr_fundef): New.
+ (returns): New.
+ (breaks): New.
+ (continues): New.
+ (switches): New.
+ (struct constexpr_global_ctx): Add new fields.
+ (constexpr_fundef): New.
+ (struct constexpr_call): New.
+ (constexpr_call_hasher : ggc_ptr_hash<constexpr_call>): New.
+ (enum constexpr_switch_state): New.
+ (struct constexpr_ctx): Add new fields.
+ (struct constexpr_fundef_hasher): New.
+ (constexpr_fundef_table): New.
+ (constexpr_fundef_hasher::equal): New.
+ (constexpr_fundef_hasher::hash): New.
+ (retrieve_constexpr_fundef): New.
+ (uid_sensitive_constexpr_evaluation_value): New.
+ (uid_sensitive_constexpr_evaluation_true_counter): New.
+ (uid_sensitive_constexpr_evaluation_p): New.
+ (class temp_override): New.
+ (struct uid_sensitive_constexpr_evaluation_sentinel): New.
+ (struct uid_sensitive_constexpr_evaluation_checker): New.
+ (::uid_sensitive_constexpr_evaluation_sentinel): New.
+ (::uid_sensitive_constexpr_evaluation_checker): New.
+ (uid_sensitive_constexpr_evaluation_checker::evaluation_restricted_p): New.
+ (constexpr_call_table): New.
+ (constexpr_call_hasher::hash): New.
+ (constexpr_call_hasher::equal): New.
+ (maybe_initialize_constexpr_call_table): New.
+ (fundef_copies_table): New.
+ (get_fundef_copy): New.
+ (save_fundef_copy): New.
+ (constexpr_expression): Refactor in ...
+ (eval_constant_expression): ...this.
+ (eval_store_expression): Add 3 bool params.
+ (eval_call_expression): Likewise.
+ (eval_binary_expression): Likewise.
+ (eval_statement_list): New.
+ (extract_string_elt): New.
+ (eval_conditional_expression): New.
+ (eval_bit_field_ref): New.
+ (eval_loop_expr): New.
+ (eval_switch_expr): New.
+ (eval_unary_expression): New.
+ (call_stack): New.
+ (call_stack_tick): New.
+ (last_cx_error_tick): New.
+ (push_cx_call_context): New.
+ (pop_cx_call_context): New.
+ (cx_error_context): New.
+ (fold_expr): Adjust call to eval_constant_expression.
+ (same_type_ignoring_tlq_and_bounds_p): New.
+ (union_active_member): Port more for cxx constexpr.
+ (fold_indirect_ref_1): New.
+ (rs_fold_indirect_ref): Likewise.
+ (rs_eval_indirect_ref): New (from corresponding cxx FE file).
+ (eval_logical_expression): Adjust parameter list.
+ (lookup_placeholder): New (from corresponding cxx FE file).
+ (constant_value_1): Remove.
+ (inline_asm_in_constexpr_error): New (from corresponding cxx FE file).
+ (verify_ctor_sanity): New.
+ (get_callee): Remove.
+ (initialized_type): New.
+ (maybe_constexpr_fn): Remove.
+ (init_subob_ctx): New.
+ (base_field_constructor_elt): New.
+ (get_or_insert_ctor_field): New.
+ (eval_vector_conditional_expression): New (from correponding cxx FE file).
+ (eval_bare_aggregate): New.
+ (cxx_eval_trinary_expression): New.
+ (reduced_constant_expression_p): New.
+ (adjust_temp_type): New.
+ (free_constructor): New.
+ (eval_and_check_array_index): New.
+ (eval_array_reference): New.
+ (eval_component_reference): New.
+ (label_matches): New.
+ (eval_constant_expression): New.
+ (modifying_const_object_error): New.
+ (is_empty_field): New.
+ (eval_store_expression): New.
+ (eval_binary_expression): New.
+ (addr_of_non_const_var): New.
+ (rs_bind_parameters_in_call): New.
+ (eval_builtin_function_call): New.
+ (eval_call_expression): New.
+ (build_anon_member_initialization): New.
+ (build_data_member_initialization): New.
+ (constexpr_fn_retval): New.
+ (constant_value_1): New.
+ (decl_constant_value): New.
+ (non_const_var_error): New.
+ (get_callee): New.
+ (get_function_named_in_call): New.
+ (maybe_constexpr_fn): New.
+ (get_nth_callarg): New.
+ (var_in_maybe_constexpr_fn): New.
+ (instantiate_cx_fn_r): New.
+ (instantiate_constexpr_fns): New.
+ (array_index_cmp): New.
+ (unshare_constructor): New.
+ (find_array_ctor_elt): New.
+ (verify_constant): New.
+ (find_heap_var_refs): New.
+ (find_immediate_fndecl): New.
+ (diag_array_subscript): New.
+ (get_array_or_vector_nelts): New.
+ (eval_and_check_array_index): New.
+ (extract_string_elt): New.
+ (is_valid_constexpr_fn): New.
+ (explain_invalid_constexpr_fn): New.
+ (register_constexpr_fundef): New.
+ (maybe_save_constexpr_fundef): New.
+ (eval_statement_list): New.
+ (eval_conditional_expression): New.
+ (eval_bit_field_ref): New.
+ (returns): New.
+ (breaks): New.
+ (continues): New.
+ (switches): New.
+ (eval_loop_expr): New.
+ (eval_switch_expr): New.
+ (eval_unary_expression): New.
+ (cxx_eval_outermost_constant_expr): New.
+ (is_static_init_expression): New.
+ (is_constant_expression): New.
+ (is_nondependent_static_init_expression): New.
+ (maybe_constant_init_1): New.
+ (maybe_constant_init): New.
+ (is_nondependent_constant_expression): New.
+ (cv_cache): New.
+ (maybe_constant_value): New.
+ (potential_constant_expression): New.
+ (struct check_for_return_continue_data): New.
+ (check_for_return_continue): New.
+ (decl_namespace_context): New.
+ (decl_in_std_namespace_p): New.
+ (is_std_construct_at): New.
+ (cxx_dynamic_cast_fn_p): New.
+ (is_std_allocator_allocate): New.
+ (is_std_allocator_allocate): New.
+ (potential_constant_expression_1): New.
+ (potential_constant_expression_1): New.
+ (fold_non_dependent_init): New.
+ * backend/rust-constexpr.h (maybe_save_constexpr_fundef): New.
+
+2023-01-31 Arthur Cohen <arthur.cohen@embecosm.com>
+
+ * rust-session-manager.cc (Session::compile_crate): Allow the dump of prettified AST
+ (Session::dump_ast_pretty): New
+ * rust-session-manager.h: Add new output file for pretty AST dump
+
2023-01-05 David Malcolm <dmalcolm@redhat.com>
* resolve/rust-ast-resolve-item.cc (selftest::rust_flatten_list):
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 7d476cc6901..30eb68a94fc 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,819 @@
+2023-01-31 Jason Merrill <jason@redhat.com>
+
+ PR c++/108559
+ * g++.dg/cpp1z/aggr-base13.C: New test.
+
+2023-01-31 Thomas Schwinge <thomas@codesourcery.com>
+
+ * lib/gm2.exp (gm2_link_flags) [$gccpath != ""]: Also consider
+ 'gcc-set-multilib-library-path' for 'ld_library_path'.
+
+2023-01-31 Marek Polacek <polacek@redhat.com>
+
+ PR c++/102870
+ * g++.dg/cpp0x/variadic184.C: New test.
+
+2023-01-31 Ju-Zhe Zhong <juzhe.zhong@rivai.ai>
+
+ * g++.target/riscv/rvv/base/vdiv_vv-1.C: New test.
+ * g++.target/riscv/rvv/base/vdiv_vv-2.C: New test.
+ * g++.target/riscv/rvv/base/vdiv_vv-3.C: New test.
+ * g++.target/riscv/rvv/base/vdiv_vv_mu-1.C: New test.
+ * g++.target/riscv/rvv/base/vdiv_vv_mu-2.C: New test.
+ * g++.target/riscv/rvv/base/vdiv_vv_mu-3.C: New test.
+ * g++.target/riscv/rvv/base/vdiv_vv_tu-1.C: New test.
+ * g++.target/riscv/rvv/base/vdiv_vv_tu-2.C: New test.
+ * g++.target/riscv/rvv/base/vdiv_vv_tu-3.C: New test.
+ * g++.target/riscv/rvv/base/vdiv_vv_tum-1.C: New test.
+ * g++.target/riscv/rvv/base/vdiv_vv_tum-2.C: New test.
+ * g++.target/riscv/rvv/base/vdiv_vv_tum-3.C: New test.
+ * g++.target/riscv/rvv/base/vdiv_vv_tumu-1.C: New test.
+ * g++.target/riscv/rvv/base/vdiv_vv_tumu-2.C: New test.
+ * g++.target/riscv/rvv/base/vdiv_vv_tumu-3.C: New test.
+ * g++.target/riscv/rvv/base/vdivu_vv-1.C: New test.
+ * g++.target/riscv/rvv/base/vdivu_vv-2.C: New test.
+ * g++.target/riscv/rvv/base/vdivu_vv-3.C: New test.
+ * g++.target/riscv/rvv/base/vdivu_vv_mu-1.C: New test.
+ * g++.target/riscv/rvv/base/vdivu_vv_mu-2.C: New test.
+ * g++.target/riscv/rvv/base/vdivu_vv_mu-3.C: New test.
+ * g++.target/riscv/rvv/base/vdivu_vv_tu-1.C: New test.
+ * g++.target/riscv/rvv/base/vdivu_vv_tu-2.C: New test.
+ * g++.target/riscv/rvv/base/vdivu_vv_tu-3.C: New test.
+ * g++.target/riscv/rvv/base/vdivu_vv_tum-1.C: New test.
+ * g++.target/riscv/rvv/base/vdivu_vv_tum-2.C: New test.
+ * g++.target/riscv/rvv/base/vdivu_vv_tum-3.C: New test.
+ * g++.target/riscv/rvv/base/vdivu_vv_tumu-1.C: New test.
+ * g++.target/riscv/rvv/base/vdivu_vv_tumu-2.C: New test.
+ * g++.target/riscv/rvv/base/vdivu_vv_tumu-3.C: New test.
+
+2023-01-31 Ju-Zhe Zhong <juzhe.zhong@rivai.ai>
+
+ * g++.target/riscv/rvv/base/vmax_vv-1.C: New test.
+ * g++.target/riscv/rvv/base/vmax_vv-2.C: New test.
+ * g++.target/riscv/rvv/base/vmax_vv-3.C: New test.
+ * g++.target/riscv/rvv/base/vmax_vv_mu-1.C: New test.
+ * g++.target/riscv/rvv/base/vmax_vv_mu-2.C: New test.
+ * g++.target/riscv/rvv/base/vmax_vv_mu-3.C: New test.
+ * g++.target/riscv/rvv/base/vmax_vv_tu-1.C: New test.
+ * g++.target/riscv/rvv/base/vmax_vv_tu-2.C: New test.
+ * g++.target/riscv/rvv/base/vmax_vv_tu-3.C: New test.
+ * g++.target/riscv/rvv/base/vmax_vv_tum-1.C: New test.
+ * g++.target/riscv/rvv/base/vmax_vv_tum-2.C: New test.
+ * g++.target/riscv/rvv/base/vmax_vv_tum-3.C: New test.
+ * g++.target/riscv/rvv/base/vmax_vv_tumu-1.C: New test.
+ * g++.target/riscv/rvv/base/vmax_vv_tumu-2.C: New test.
+ * g++.target/riscv/rvv/base/vmax_vv_tumu-3.C: New test.
+ * g++.target/riscv/rvv/base/vmaxu_vv-1.C: New test.
+ * g++.target/riscv/rvv/base/vmaxu_vv-2.C: New test.
+ * g++.target/riscv/rvv/base/vmaxu_vv-3.C: New test.
+ * g++.target/riscv/rvv/base/vmaxu_vv_mu-1.C: New test.
+ * g++.target/riscv/rvv/base/vmaxu_vv_mu-2.C: New test.
+ * g++.target/riscv/rvv/base/vmaxu_vv_mu-3.C: New test.
+ * g++.target/riscv/rvv/base/vmaxu_vv_tu-1.C: New test.
+ * g++.target/riscv/rvv/base/vmaxu_vv_tu-2.C: New test.
+ * g++.target/riscv/rvv/base/vmaxu_vv_tu-3.C: New test.
+ * g++.target/riscv/rvv/base/vmaxu_vv_tum-1.C: New test.
+ * g++.target/riscv/rvv/base/vmaxu_vv_tum-2.C: New test.
+ * g++.target/riscv/rvv/base/vmaxu_vv_tum-3.C: New test.
+ * g++.target/riscv/rvv/base/vmaxu_vv_tumu-1.C: New test.
+ * g++.target/riscv/rvv/base/vmaxu_vv_tumu-2.C: New test.
+ * g++.target/riscv/rvv/base/vmaxu_vv_tumu-3.C: New test.
+
+2023-01-31 Ju-Zhe Zhong <juzhe.zhong@rivai.ai>
+
+ * g++.target/riscv/rvv/base/vmin_vv-1.C: New test.
+ * g++.target/riscv/rvv/base/vmin_vv-2.C: New test.
+ * g++.target/riscv/rvv/base/vmin_vv-3.C: New test.
+ * g++.target/riscv/rvv/base/vmin_vv_mu-1.C: New test.
+ * g++.target/riscv/rvv/base/vmin_vv_mu-2.C: New test.
+ * g++.target/riscv/rvv/base/vmin_vv_mu-3.C: New test.
+ * g++.target/riscv/rvv/base/vmin_vv_tu-1.C: New test.
+ * g++.target/riscv/rvv/base/vmin_vv_tu-2.C: New test.
+ * g++.target/riscv/rvv/base/vmin_vv_tu-3.C: New test.
+ * g++.target/riscv/rvv/base/vmin_vv_tum-1.C: New test.
+ * g++.target/riscv/rvv/base/vmin_vv_tum-2.C: New test.
+ * g++.target/riscv/rvv/base/vmin_vv_tum-3.C: New test.
+ * g++.target/riscv/rvv/base/vmin_vv_tumu-1.C: New test.
+ * g++.target/riscv/rvv/base/vmin_vv_tumu-2.C: New test.
+ * g++.target/riscv/rvv/base/vmin_vv_tumu-3.C: New test.
+ * g++.target/riscv/rvv/base/vminu_vv-1.C: New test.
+ * g++.target/riscv/rvv/base/vminu_vv-2.C: New test.
+ * g++.target/riscv/rvv/base/vminu_vv-3.C: New test.
+ * g++.target/riscv/rvv/base/vminu_vv_mu-1.C: New test.
+ * g++.target/riscv/rvv/base/vminu_vv_mu-2.C: New test.
+ * g++.target/riscv/rvv/base/vminu_vv_mu-3.C: New test.
+ * g++.target/riscv/rvv/base/vminu_vv_tu-1.C: New test.
+ * g++.target/riscv/rvv/base/vminu_vv_tu-2.C: New test.
+ * g++.target/riscv/rvv/base/vminu_vv_tu-3.C: New test.
+ * g++.target/riscv/rvv/base/vminu_vv_tum-1.C: New test.
+ * g++.target/riscv/rvv/base/vminu_vv_tum-2.C: New test.
+ * g++.target/riscv/rvv/base/vminu_vv_tum-3.C: New test.
+ * g++.target/riscv/rvv/base/vminu_vv_tumu-1.C: New test.
+ * g++.target/riscv/rvv/base/vminu_vv_tumu-2.C: New test.
+ * g++.target/riscv/rvv/base/vminu_vv_tumu-3.C: New test.
+
+2023-01-31 Ju-Zhe Zhong <juzhe.zhong@rivai.ai>
+
+ * g++.target/riscv/rvv/base/vor_vv-1.C: New test.
+ * g++.target/riscv/rvv/base/vor_vv-2.C: New test.
+ * g++.target/riscv/rvv/base/vor_vv-3.C: New test.
+ * g++.target/riscv/rvv/base/vor_vv_mu-1.C: New test.
+ * g++.target/riscv/rvv/base/vor_vv_mu-2.C: New test.
+ * g++.target/riscv/rvv/base/vor_vv_mu-3.C: New test.
+ * g++.target/riscv/rvv/base/vor_vv_tu-1.C: New test.
+ * g++.target/riscv/rvv/base/vor_vv_tu-2.C: New test.
+ * g++.target/riscv/rvv/base/vor_vv_tu-3.C: New test.
+ * g++.target/riscv/rvv/base/vor_vv_tum-1.C: New test.
+ * g++.target/riscv/rvv/base/vor_vv_tum-2.C: New test.
+ * g++.target/riscv/rvv/base/vor_vv_tum-3.C: New test.
+ * g++.target/riscv/rvv/base/vor_vv_tumu-1.C: New test.
+ * g++.target/riscv/rvv/base/vor_vv_tumu-2.C: New test.
+ * g++.target/riscv/rvv/base/vor_vv_tumu-3.C: New test.
+
+2023-01-31 Ju-Zhe Zhong <juzhe.zhong@rivai.ai>
+
+ * g++.target/riscv/rvv/base/vrem_vv-1.C: New test.
+ * g++.target/riscv/rvv/base/vrem_vv-2.C: New test.
+ * g++.target/riscv/rvv/base/vrem_vv-3.C: New test.
+ * g++.target/riscv/rvv/base/vrem_vv_mu-1.C: New test.
+ * g++.target/riscv/rvv/base/vrem_vv_mu-2.C: New test.
+ * g++.target/riscv/rvv/base/vrem_vv_mu-3.C: New test.
+ * g++.target/riscv/rvv/base/vrem_vv_tu-1.C: New test.
+ * g++.target/riscv/rvv/base/vrem_vv_tu-2.C: New test.
+ * g++.target/riscv/rvv/base/vrem_vv_tu-3.C: New test.
+ * g++.target/riscv/rvv/base/vrem_vv_tum-1.C: New test.
+ * g++.target/riscv/rvv/base/vrem_vv_tum-2.C: New test.
+ * g++.target/riscv/rvv/base/vrem_vv_tum-3.C: New test.
+ * g++.target/riscv/rvv/base/vrem_vv_tumu-1.C: New test.
+ * g++.target/riscv/rvv/base/vrem_vv_tumu-2.C: New test.
+ * g++.target/riscv/rvv/base/vrem_vv_tumu-3.C: New test.
+ * g++.target/riscv/rvv/base/vremu_vv-1.C: New test.
+ * g++.target/riscv/rvv/base/vremu_vv-2.C: New test.
+ * g++.target/riscv/rvv/base/vremu_vv-3.C: New test.
+ * g++.target/riscv/rvv/base/vremu_vv_mu-1.C: New test.
+ * g++.target/riscv/rvv/base/vremu_vv_mu-2.C: New test.
+ * g++.target/riscv/rvv/base/vremu_vv_mu-3.C: New test.
+ * g++.target/riscv/rvv/base/vremu_vv_tu-1.C: New test.
+ * g++.target/riscv/rvv/base/vremu_vv_tu-2.C: New test.
+ * g++.target/riscv/rvv/base/vremu_vv_tu-3.C: New test.
+ * g++.target/riscv/rvv/base/vremu_vv_tum-1.C: New test.
+ * g++.target/riscv/rvv/base/vremu_vv_tum-2.C: New test.
+ * g++.target/riscv/rvv/base/vremu_vv_tum-3.C: New test.
+ * g++.target/riscv/rvv/base/vremu_vv_tumu-1.C: New test.
+ * g++.target/riscv/rvv/base/vremu_vv_tumu-2.C: New test.
+ * g++.target/riscv/rvv/base/vremu_vv_tumu-3.C: New test.
+
+2023-01-31 Ju-Zhe Zhong <juzhe.zhong@rivai.ai>
+
+ * g++.target/riscv/rvv/base/vsll_vv-1.C: New test.
+ * g++.target/riscv/rvv/base/vsll_vv-2.C: New test.
+ * g++.target/riscv/rvv/base/vsll_vv-3.C: New test.
+ * g++.target/riscv/rvv/base/vsll_vv_mu-1.C: New test.
+ * g++.target/riscv/rvv/base/vsll_vv_mu-2.C: New test.
+ * g++.target/riscv/rvv/base/vsll_vv_mu-3.C: New test.
+ * g++.target/riscv/rvv/base/vsll_vv_tu-1.C: New test.
+ * g++.target/riscv/rvv/base/vsll_vv_tu-2.C: New test.
+ * g++.target/riscv/rvv/base/vsll_vv_tu-3.C: New test.
+ * g++.target/riscv/rvv/base/vsll_vv_tum-1.C: New test.
+ * g++.target/riscv/rvv/base/vsll_vv_tum-2.C: New test.
+ * g++.target/riscv/rvv/base/vsll_vv_tum-3.C: New test.
+ * g++.target/riscv/rvv/base/vsll_vv_tumu-1.C: New test.
+ * g++.target/riscv/rvv/base/vsll_vv_tumu-2.C: New test.
+ * g++.target/riscv/rvv/base/vsll_vv_tumu-3.C: New test.
+
+2023-01-31 Ju-Zhe Zhong <juzhe.zhong@rivai.ai>
+
+ * g++.target/riscv/rvv/base/vsra_vv-1.C: New test.
+ * g++.target/riscv/rvv/base/vsra_vv-2.C: New test.
+ * g++.target/riscv/rvv/base/vsra_vv-3.C: New test.
+ * g++.target/riscv/rvv/base/vsra_vv_mu-1.C: New test.
+ * g++.target/riscv/rvv/base/vsra_vv_mu-2.C: New test.
+ * g++.target/riscv/rvv/base/vsra_vv_mu-3.C: New test.
+ * g++.target/riscv/rvv/base/vsra_vv_tu-1.C: New test.
+ * g++.target/riscv/rvv/base/vsra_vv_tu-2.C: New test.
+ * g++.target/riscv/rvv/base/vsra_vv_tu-3.C: New test.
+ * g++.target/riscv/rvv/base/vsra_vv_tum-1.C: New test.
+ * g++.target/riscv/rvv/base/vsra_vv_tum-2.C: New test.
+ * g++.target/riscv/rvv/base/vsra_vv_tum-3.C: New test.
+ * g++.target/riscv/rvv/base/vsra_vv_tumu-1.C: New test.
+ * g++.target/riscv/rvv/base/vsra_vv_tumu-2.C: New test.
+ * g++.target/riscv/rvv/base/vsra_vv_tumu-3.C: New test.
+
+2023-01-31 Ju-Zhe Zhong <juzhe.zhong@rivai.ai>
+
+ * g++.target/riscv/rvv/base/vsrl_vv-1.C: New test.
+ * g++.target/riscv/rvv/base/vsrl_vv-2.C: New test.
+ * g++.target/riscv/rvv/base/vsrl_vv-3.C: New test.
+ * g++.target/riscv/rvv/base/vsrl_vv_mu-1.C: New test.
+ * g++.target/riscv/rvv/base/vsrl_vv_mu-2.C: New test.
+ * g++.target/riscv/rvv/base/vsrl_vv_mu-3.C: New test.
+ * g++.target/riscv/rvv/base/vsrl_vv_tu-1.C: New test.
+ * g++.target/riscv/rvv/base/vsrl_vv_tu-2.C: New test.
+ * g++.target/riscv/rvv/base/vsrl_vv_tu-3.C: New test.
+ * g++.target/riscv/rvv/base/vsrl_vv_tum-1.C: New test.
+ * g++.target/riscv/rvv/base/vsrl_vv_tum-2.C: New test.
+ * g++.target/riscv/rvv/base/vsrl_vv_tum-3.C: New test.
+ * g++.target/riscv/rvv/base/vsrl_vv_tumu-1.C: New test.
+ * g++.target/riscv/rvv/base/vsrl_vv_tumu-2.C: New test.
+ * g++.target/riscv/rvv/base/vsrl_vv_tumu-3.C: New test.
+
+2023-01-31 Ju-Zhe Zhong <juzhe.zhong@rivai.ai>
+
+ * g++.target/riscv/rvv/base/vand_vv-1.C: New test.
+ * g++.target/riscv/rvv/base/vand_vv-2.C: New test.
+ * g++.target/riscv/rvv/base/vand_vv-3.C: New test.
+ * g++.target/riscv/rvv/base/vand_vv_mu-1.C: New test.
+ * g++.target/riscv/rvv/base/vand_vv_mu-2.C: New test.
+ * g++.target/riscv/rvv/base/vand_vv_mu-3.C: New test.
+ * g++.target/riscv/rvv/base/vand_vv_tu-1.C: New test.
+ * g++.target/riscv/rvv/base/vand_vv_tu-2.C: New test.
+ * g++.target/riscv/rvv/base/vand_vv_tu-3.C: New test.
+ * g++.target/riscv/rvv/base/vand_vv_tum-1.C: New test.
+ * g++.target/riscv/rvv/base/vand_vv_tum-2.C: New test.
+ * g++.target/riscv/rvv/base/vand_vv_tum-3.C: New test.
+ * g++.target/riscv/rvv/base/vand_vv_tumu-1.C: New test.
+ * g++.target/riscv/rvv/base/vand_vv_tumu-2.C: New test.
+ * g++.target/riscv/rvv/base/vand_vv_tumu-3.C: New test.
+ * g++.target/riscv/rvv/base/vsub_vv-1.C: New test.
+ * g++.target/riscv/rvv/base/vsub_vv-2.C: New test.
+ * g++.target/riscv/rvv/base/vsub_vv-3.C: New test.
+ * g++.target/riscv/rvv/base/vsub_vv_mu-1.C: New test.
+ * g++.target/riscv/rvv/base/vsub_vv_mu-2.C: New test.
+ * g++.target/riscv/rvv/base/vsub_vv_mu-3.C: New test.
+ * g++.target/riscv/rvv/base/vsub_vv_tu-1.C: New test.
+ * g++.target/riscv/rvv/base/vsub_vv_tu-2.C: New test.
+ * g++.target/riscv/rvv/base/vsub_vv_tu-3.C: New test.
+ * g++.target/riscv/rvv/base/vsub_vv_tum-1.C: New test.
+ * g++.target/riscv/rvv/base/vsub_vv_tum-2.C: New test.
+ * g++.target/riscv/rvv/base/vsub_vv_tum-3.C: New test.
+ * g++.target/riscv/rvv/base/vsub_vv_tumu-1.C: New test.
+ * g++.target/riscv/rvv/base/vsub_vv_tumu-2.C: New test.
+ * g++.target/riscv/rvv/base/vsub_vv_tumu-3.C: New test.
+
+2023-01-31 Ju-Zhe Zhong <juzhe.zhong@rivai.ai>
+
+ * g++.target/riscv/rvv/base/vxor_vv-1.C: New test.
+ * g++.target/riscv/rvv/base/vxor_vv-2.C: New test.
+ * g++.target/riscv/rvv/base/vxor_vv-3.C: New test.
+ * g++.target/riscv/rvv/base/vxor_vv_mu-1.C: New test.
+ * g++.target/riscv/rvv/base/vxor_vv_mu-2.C: New test.
+ * g++.target/riscv/rvv/base/vxor_vv_mu-3.C: New test.
+ * g++.target/riscv/rvv/base/vxor_vv_tu-1.C: New test.
+ * g++.target/riscv/rvv/base/vxor_vv_tu-2.C: New test.
+ * g++.target/riscv/rvv/base/vxor_vv_tu-3.C: New test.
+ * g++.target/riscv/rvv/base/vxor_vv_tum-1.C: New test.
+ * g++.target/riscv/rvv/base/vxor_vv_tum-2.C: New test.
+ * g++.target/riscv/rvv/base/vxor_vv_tum-3.C: New test.
+ * g++.target/riscv/rvv/base/vxor_vv_tumu-1.C: New test.
+ * g++.target/riscv/rvv/base/vxor_vv_tumu-2.C: New test.
+ * g++.target/riscv/rvv/base/vxor_vv_tumu-3.C: New test.
+
+2023-01-31 Ju-Zhe Zhong <juzhe.zhong@rivai.ai>
+
+ * g++.target/riscv/rvv/base/vadd_vv-1.C: New test.
+ * g++.target/riscv/rvv/base/vadd_vv-2.C: New test.
+ * g++.target/riscv/rvv/base/vadd_vv-3.C: New test.
+ * g++.target/riscv/rvv/base/vadd_vv_mu-1.C: New test.
+ * g++.target/riscv/rvv/base/vadd_vv_mu-2.C: New test.
+ * g++.target/riscv/rvv/base/vadd_vv_mu-3.C: New test.
+ * g++.target/riscv/rvv/base/vadd_vv_tu-1.C: New test.
+ * g++.target/riscv/rvv/base/vadd_vv_tu-2.C: New test.
+ * g++.target/riscv/rvv/base/vadd_vv_tu-3.C: New test.
+ * g++.target/riscv/rvv/base/vadd_vv_tum-1.C: New test.
+ * g++.target/riscv/rvv/base/vadd_vv_tum-2.C: New test.
+ * g++.target/riscv/rvv/base/vadd_vv_tum-3.C: New test.
+ * g++.target/riscv/rvv/base/vadd_vv_tumu-1.C: New test.
+ * g++.target/riscv/rvv/base/vadd_vv_tumu-2.C: New test.
+ * g++.target/riscv/rvv/base/vadd_vv_tumu-3.C: New test.
+
+2023-01-31 Ju-Zhe Zhong <juzhe.zhong@rivai.ai>
+
+ * gcc.target/riscv/rvv/base/binop_vv_constraint-1.c: New test.
+
+2023-01-31 Ju-Zhe Zhong <juzhe.zhong@rivai.ai>
+
+ * gcc.target/riscv/rvv/base/vadd_vv-1.c: New test.
+ * gcc.target/riscv/rvv/base/vadd_vv-2.c: New test.
+ * gcc.target/riscv/rvv/base/vadd_vv-3.c: New test.
+ * gcc.target/riscv/rvv/base/vadd_vv_m-1.c: New test.
+ * gcc.target/riscv/rvv/base/vadd_vv_m-2.c: New test.
+ * gcc.target/riscv/rvv/base/vadd_vv_m-3.c: New test.
+ * gcc.target/riscv/rvv/base/vadd_vv_mu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vadd_vv_mu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vadd_vv_mu-3.c: New test.
+ * gcc.target/riscv/rvv/base/vadd_vv_tu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vadd_vv_tu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vadd_vv_tu-3.c: New test.
+ * gcc.target/riscv/rvv/base/vadd_vv_tum-1.c: New test.
+ * gcc.target/riscv/rvv/base/vadd_vv_tum-2.c: New test.
+ * gcc.target/riscv/rvv/base/vadd_vv_tum-3.c: New test.
+ * gcc.target/riscv/rvv/base/vadd_vv_tumu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vadd_vv_tumu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vadd_vv_tumu-3.c: New test.
+
+2023-01-31 Ju-Zhe Zhong <juzhe.zhong@rivai.ai>
+
+ * gcc.target/riscv/rvv/base/vand_vv-1.c: New test.
+ * gcc.target/riscv/rvv/base/vand_vv-2.c: New test.
+ * gcc.target/riscv/rvv/base/vand_vv-3.c: New test.
+ * gcc.target/riscv/rvv/base/vand_vv_m-1.c: New test.
+ * gcc.target/riscv/rvv/base/vand_vv_m-2.c: New test.
+ * gcc.target/riscv/rvv/base/vand_vv_m-3.c: New test.
+ * gcc.target/riscv/rvv/base/vand_vv_mu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vand_vv_mu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vand_vv_mu-3.c: New test.
+ * gcc.target/riscv/rvv/base/vand_vv_tu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vand_vv_tu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vand_vv_tu-3.c: New test.
+ * gcc.target/riscv/rvv/base/vand_vv_tum-1.c: New test.
+ * gcc.target/riscv/rvv/base/vand_vv_tum-2.c: New test.
+ * gcc.target/riscv/rvv/base/vand_vv_tum-3.c: New test.
+ * gcc.target/riscv/rvv/base/vand_vv_tumu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vand_vv_tumu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vand_vv_tumu-3.c: New test.
+
+2023-01-31 Ju-Zhe Zhong <juzhe.zhong@rivai.ai>
+
+ * gcc.target/riscv/rvv/base/vdiv_vv-1.c: New test.
+ * gcc.target/riscv/rvv/base/vdiv_vv-2.c: New test.
+ * gcc.target/riscv/rvv/base/vdiv_vv-3.c: New test.
+ * gcc.target/riscv/rvv/base/vdiv_vv_m-1.c: New test.
+ * gcc.target/riscv/rvv/base/vdiv_vv_m-2.c: New test.
+ * gcc.target/riscv/rvv/base/vdiv_vv_m-3.c: New test.
+ * gcc.target/riscv/rvv/base/vdiv_vv_mu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vdiv_vv_mu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vdiv_vv_mu-3.c: New test.
+ * gcc.target/riscv/rvv/base/vdiv_vv_tu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vdiv_vv_tu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vdiv_vv_tu-3.c: New test.
+ * gcc.target/riscv/rvv/base/vdiv_vv_tum-1.c: New test.
+ * gcc.target/riscv/rvv/base/vdiv_vv_tum-2.c: New test.
+ * gcc.target/riscv/rvv/base/vdiv_vv_tum-3.c: New test.
+ * gcc.target/riscv/rvv/base/vdiv_vv_tumu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vdiv_vv_tumu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vdiv_vv_tumu-3.c: New test.
+ * gcc.target/riscv/rvv/base/vdivu_vv-1.c: New test.
+ * gcc.target/riscv/rvv/base/vdivu_vv-2.c: New test.
+ * gcc.target/riscv/rvv/base/vdivu_vv-3.c: New test.
+ * gcc.target/riscv/rvv/base/vdivu_vv_m-1.c: New test.
+ * gcc.target/riscv/rvv/base/vdivu_vv_m-2.c: New test.
+ * gcc.target/riscv/rvv/base/vdivu_vv_m-3.c: New test.
+ * gcc.target/riscv/rvv/base/vdivu_vv_mu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vdivu_vv_mu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vdivu_vv_mu-3.c: New test.
+ * gcc.target/riscv/rvv/base/vdivu_vv_tu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vdivu_vv_tu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vdivu_vv_tu-3.c: New test.
+ * gcc.target/riscv/rvv/base/vdivu_vv_tum-1.c: New test.
+ * gcc.target/riscv/rvv/base/vdivu_vv_tum-2.c: New test.
+ * gcc.target/riscv/rvv/base/vdivu_vv_tum-3.c: New test.
+ * gcc.target/riscv/rvv/base/vdivu_vv_tumu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vdivu_vv_tumu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vdivu_vv_tumu-3.c: New test.
+
+2023-01-31 Ju-Zhe Zhong <juzhe.zhong@rivai.ai>
+
+ * gcc.target/riscv/rvv/base/vmax_vv-1.c: New test.
+ * gcc.target/riscv/rvv/base/vmax_vv-2.c: New test.
+ * gcc.target/riscv/rvv/base/vmax_vv-3.c: New test.
+ * gcc.target/riscv/rvv/base/vmax_vv_m-1.c: New test.
+ * gcc.target/riscv/rvv/base/vmax_vv_m-2.c: New test.
+ * gcc.target/riscv/rvv/base/vmax_vv_m-3.c: New test.
+ * gcc.target/riscv/rvv/base/vmax_vv_mu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vmax_vv_mu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vmax_vv_mu-3.c: New test.
+ * gcc.target/riscv/rvv/base/vmax_vv_tu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vmax_vv_tu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vmax_vv_tu-3.c: New test.
+ * gcc.target/riscv/rvv/base/vmax_vv_tum-1.c: New test.
+ * gcc.target/riscv/rvv/base/vmax_vv_tum-2.c: New test.
+ * gcc.target/riscv/rvv/base/vmax_vv_tum-3.c: New test.
+ * gcc.target/riscv/rvv/base/vmax_vv_tumu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vmax_vv_tumu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vmax_vv_tumu-3.c: New test.
+ * gcc.target/riscv/rvv/base/vmaxu_vv-1.c: New test.
+ * gcc.target/riscv/rvv/base/vmaxu_vv-2.c: New test.
+ * gcc.target/riscv/rvv/base/vmaxu_vv-3.c: New test.
+ * gcc.target/riscv/rvv/base/vmaxu_vv_m-1.c: New test.
+ * gcc.target/riscv/rvv/base/vmaxu_vv_m-2.c: New test.
+ * gcc.target/riscv/rvv/base/vmaxu_vv_m-3.c: New test.
+ * gcc.target/riscv/rvv/base/vmaxu_vv_mu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vmaxu_vv_mu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vmaxu_vv_mu-3.c: New test.
+ * gcc.target/riscv/rvv/base/vmaxu_vv_tu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vmaxu_vv_tu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vmaxu_vv_tu-3.c: New test.
+ * gcc.target/riscv/rvv/base/vmaxu_vv_tum-1.c: New test.
+ * gcc.target/riscv/rvv/base/vmaxu_vv_tum-2.c: New test.
+ * gcc.target/riscv/rvv/base/vmaxu_vv_tum-3.c: New test.
+ * gcc.target/riscv/rvv/base/vmaxu_vv_tumu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vmaxu_vv_tumu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vmaxu_vv_tumu-3.c: New test.
+
+2023-01-31 Ju-Zhe Zhong <juzhe.zhong@rivai.ai>
+
+ * gcc.target/riscv/rvv/base/vmin_vv-1.c: New test.
+ * gcc.target/riscv/rvv/base/vmin_vv-2.c: New test.
+ * gcc.target/riscv/rvv/base/vmin_vv-3.c: New test.
+ * gcc.target/riscv/rvv/base/vmin_vv_m-1.c: New test.
+ * gcc.target/riscv/rvv/base/vmin_vv_m-2.c: New test.
+ * gcc.target/riscv/rvv/base/vmin_vv_m-3.c: New test.
+ * gcc.target/riscv/rvv/base/vmin_vv_mu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vmin_vv_mu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vmin_vv_mu-3.c: New test.
+ * gcc.target/riscv/rvv/base/vmin_vv_tu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vmin_vv_tu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vmin_vv_tu-3.c: New test.
+ * gcc.target/riscv/rvv/base/vmin_vv_tum-1.c: New test.
+ * gcc.target/riscv/rvv/base/vmin_vv_tum-2.c: New test.
+ * gcc.target/riscv/rvv/base/vmin_vv_tum-3.c: New test.
+ * gcc.target/riscv/rvv/base/vmin_vv_tumu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vmin_vv_tumu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vmin_vv_tumu-3.c: New test.
+ * gcc.target/riscv/rvv/base/vminu_vv-1.c: New test.
+ * gcc.target/riscv/rvv/base/vminu_vv-2.c: New test.
+ * gcc.target/riscv/rvv/base/vminu_vv-3.c: New test.
+ * gcc.target/riscv/rvv/base/vminu_vv_m-1.c: New test.
+ * gcc.target/riscv/rvv/base/vminu_vv_m-2.c: New test.
+ * gcc.target/riscv/rvv/base/vminu_vv_m-3.c: New test.
+ * gcc.target/riscv/rvv/base/vminu_vv_mu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vminu_vv_mu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vminu_vv_mu-3.c: New test.
+ * gcc.target/riscv/rvv/base/vminu_vv_tu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vminu_vv_tu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vminu_vv_tu-3.c: New test.
+ * gcc.target/riscv/rvv/base/vminu_vv_tum-1.c: New test.
+ * gcc.target/riscv/rvv/base/vminu_vv_tum-2.c: New test.
+ * gcc.target/riscv/rvv/base/vminu_vv_tum-3.c: New test.
+ * gcc.target/riscv/rvv/base/vminu_vv_tumu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vminu_vv_tumu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vminu_vv_tumu-3.c: New test.
+
+2023-01-31 Ju-Zhe Zhong <juzhe.zhong@rivai.ai>
+
+ * gcc.target/riscv/rvv/base/vor_vv-1.c: New test.
+ * gcc.target/riscv/rvv/base/vor_vv-2.c: New test.
+ * gcc.target/riscv/rvv/base/vor_vv-3.c: New test.
+ * gcc.target/riscv/rvv/base/vor_vv_m-1.c: New test.
+ * gcc.target/riscv/rvv/base/vor_vv_m-2.c: New test.
+ * gcc.target/riscv/rvv/base/vor_vv_m-3.c: New test.
+ * gcc.target/riscv/rvv/base/vor_vv_mu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vor_vv_mu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vor_vv_mu-3.c: New test.
+ * gcc.target/riscv/rvv/base/vor_vv_tu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vor_vv_tu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vor_vv_tu-3.c: New test.
+ * gcc.target/riscv/rvv/base/vor_vv_tum-1.c: New test.
+ * gcc.target/riscv/rvv/base/vor_vv_tum-2.c: New test.
+ * gcc.target/riscv/rvv/base/vor_vv_tum-3.c: New test.
+ * gcc.target/riscv/rvv/base/vor_vv_tumu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vor_vv_tumu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vor_vv_tumu-3.c: New test.
+
+2023-01-31 Ju-Zhe Zhong <juzhe.zhong@rivai.ai>
+
+ * gcc.target/riscv/rvv/base/vrem_vv-1.c: New test.
+ * gcc.target/riscv/rvv/base/vrem_vv-2.c: New test.
+ * gcc.target/riscv/rvv/base/vrem_vv-3.c: New test.
+ * gcc.target/riscv/rvv/base/vrem_vv_m-1.c: New test.
+ * gcc.target/riscv/rvv/base/vrem_vv_m-2.c: New test.
+ * gcc.target/riscv/rvv/base/vrem_vv_m-3.c: New test.
+ * gcc.target/riscv/rvv/base/vrem_vv_mu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vrem_vv_mu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vrem_vv_mu-3.c: New test.
+ * gcc.target/riscv/rvv/base/vrem_vv_tu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vrem_vv_tu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vrem_vv_tu-3.c: New test.
+ * gcc.target/riscv/rvv/base/vrem_vv_tum-1.c: New test.
+ * gcc.target/riscv/rvv/base/vrem_vv_tum-2.c: New test.
+ * gcc.target/riscv/rvv/base/vrem_vv_tum-3.c: New test.
+ * gcc.target/riscv/rvv/base/vrem_vv_tumu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vrem_vv_tumu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vrem_vv_tumu-3.c: New test.
+ * gcc.target/riscv/rvv/base/vremu_vv-1.c: New test.
+ * gcc.target/riscv/rvv/base/vremu_vv-2.c: New test.
+ * gcc.target/riscv/rvv/base/vremu_vv-3.c: New test.
+ * gcc.target/riscv/rvv/base/vremu_vv_m-1.c: New test.
+ * gcc.target/riscv/rvv/base/vremu_vv_m-2.c: New test.
+ * gcc.target/riscv/rvv/base/vremu_vv_m-3.c: New test.
+ * gcc.target/riscv/rvv/base/vremu_vv_mu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vremu_vv_mu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vremu_vv_mu-3.c: New test.
+ * gcc.target/riscv/rvv/base/vremu_vv_tu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vremu_vv_tu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vremu_vv_tu-3.c: New test.
+ * gcc.target/riscv/rvv/base/vremu_vv_tum-1.c: New test.
+ * gcc.target/riscv/rvv/base/vremu_vv_tum-2.c: New test.
+ * gcc.target/riscv/rvv/base/vremu_vv_tum-3.c: New test.
+ * gcc.target/riscv/rvv/base/vremu_vv_tumu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vremu_vv_tumu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vremu_vv_tumu-3.c: New test.
+
+2023-01-31 Ju-Zhe Zhong <juzhe.zhong@rivai.ai>
+
+ * gcc.target/riscv/rvv/base/vsll_vv-1.c: New test.
+ * gcc.target/riscv/rvv/base/vsll_vv-2.c: New test.
+ * gcc.target/riscv/rvv/base/vsll_vv-3.c: New test.
+ * gcc.target/riscv/rvv/base/vsll_vv_m-1.c: New test.
+ * gcc.target/riscv/rvv/base/vsll_vv_m-2.c: New test.
+ * gcc.target/riscv/rvv/base/vsll_vv_m-3.c: New test.
+ * gcc.target/riscv/rvv/base/vsll_vv_mu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vsll_vv_mu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vsll_vv_mu-3.c: New test.
+ * gcc.target/riscv/rvv/base/vsll_vv_tu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vsll_vv_tu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vsll_vv_tu-3.c: New test.
+ * gcc.target/riscv/rvv/base/vsll_vv_tum-1.c: New test.
+ * gcc.target/riscv/rvv/base/vsll_vv_tum-2.c: New test.
+ * gcc.target/riscv/rvv/base/vsll_vv_tum-3.c: New test.
+ * gcc.target/riscv/rvv/base/vsll_vv_tumu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vsll_vv_tumu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vsll_vv_tumu-3.c: New test.
+
+2023-01-31 Ju-Zhe Zhong <juzhe.zhong@rivai.ai>
+
+ * gcc.target/riscv/rvv/base/vsra_vv-1.c: New test.
+ * gcc.target/riscv/rvv/base/vsra_vv-2.c: New test.
+ * gcc.target/riscv/rvv/base/vsra_vv-3.c: New test.
+ * gcc.target/riscv/rvv/base/vsra_vv_m-1.c: New test.
+ * gcc.target/riscv/rvv/base/vsra_vv_m-2.c: New test.
+ * gcc.target/riscv/rvv/base/vsra_vv_m-3.c: New test.
+ * gcc.target/riscv/rvv/base/vsra_vv_mu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vsra_vv_mu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vsra_vv_mu-3.c: New test.
+ * gcc.target/riscv/rvv/base/vsra_vv_tu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vsra_vv_tu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vsra_vv_tu-3.c: New test.
+ * gcc.target/riscv/rvv/base/vsra_vv_tum-1.c: New test.
+ * gcc.target/riscv/rvv/base/vsra_vv_tum-2.c: New test.
+ * gcc.target/riscv/rvv/base/vsra_vv_tum-3.c: New test.
+ * gcc.target/riscv/rvv/base/vsra_vv_tumu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vsra_vv_tumu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vsra_vv_tumu-3.c: New test.
+
+2023-01-31 Ju-Zhe Zhong <juzhe.zhong@rivai.ai>
+
+ * gcc.target/riscv/rvv/base/vsrl_vv-1.c: New test.
+ * gcc.target/riscv/rvv/base/vsrl_vv-2.c: New test.
+ * gcc.target/riscv/rvv/base/vsrl_vv-3.c: New test.
+ * gcc.target/riscv/rvv/base/vsrl_vv_m-1.c: New test.
+ * gcc.target/riscv/rvv/base/vsrl_vv_m-2.c: New test.
+ * gcc.target/riscv/rvv/base/vsrl_vv_m-3.c: New test.
+ * gcc.target/riscv/rvv/base/vsrl_vv_mu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vsrl_vv_mu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vsrl_vv_mu-3.c: New test.
+ * gcc.target/riscv/rvv/base/vsrl_vv_tu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vsrl_vv_tu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vsrl_vv_tu-3.c: New test.
+ * gcc.target/riscv/rvv/base/vsrl_vv_tum-1.c: New test.
+ * gcc.target/riscv/rvv/base/vsrl_vv_tum-2.c: New test.
+ * gcc.target/riscv/rvv/base/vsrl_vv_tum-3.c: New test.
+ * gcc.target/riscv/rvv/base/vsrl_vv_tumu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vsrl_vv_tumu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vsrl_vv_tumu-3.c: New test.
+
+2023-01-31 Ju-Zhe Zhong <juzhe.zhong@rivai.ai>
+
+ * gcc.target/riscv/rvv/base/vsub_vv-1.c: New test.
+ * gcc.target/riscv/rvv/base/vsub_vv-2.c: New test.
+ * gcc.target/riscv/rvv/base/vsub_vv-3.c: New test.
+ * gcc.target/riscv/rvv/base/vsub_vv_m-1.c: New test.
+ * gcc.target/riscv/rvv/base/vsub_vv_m-2.c: New test.
+ * gcc.target/riscv/rvv/base/vsub_vv_m-3.c: New test.
+ * gcc.target/riscv/rvv/base/vsub_vv_mu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vsub_vv_mu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vsub_vv_mu-3.c: New test.
+ * gcc.target/riscv/rvv/base/vsub_vv_tu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vsub_vv_tu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vsub_vv_tu-3.c: New test.
+ * gcc.target/riscv/rvv/base/vsub_vv_tum-1.c: New test.
+ * gcc.target/riscv/rvv/base/vsub_vv_tum-2.c: New test.
+ * gcc.target/riscv/rvv/base/vsub_vv_tum-3.c: New test.
+ * gcc.target/riscv/rvv/base/vsub_vv_tumu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vsub_vv_tumu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vsub_vv_tumu-3.c: New test.
+
+2023-01-31 Ju-Zhe Zhong <juzhe.zhong@rivai.ai>
+
+ * gcc.target/riscv/rvv/base/vxor_vv-1.c: New test.
+ * gcc.target/riscv/rvv/base/vxor_vv-2.c: New test.
+ * gcc.target/riscv/rvv/base/vxor_vv-3.c: New test.
+ * gcc.target/riscv/rvv/base/vxor_vv_m-1.c: New test.
+ * gcc.target/riscv/rvv/base/vxor_vv_m-2.c: New test.
+ * gcc.target/riscv/rvv/base/vxor_vv_m-3.c: New test.
+ * gcc.target/riscv/rvv/base/vxor_vv_mu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vxor_vv_mu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vxor_vv_mu-3.c: New test.
+ * gcc.target/riscv/rvv/base/vxor_vv_tu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vxor_vv_tu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vxor_vv_tu-3.c: New test.
+ * gcc.target/riscv/rvv/base/vxor_vv_tum-1.c: New test.
+ * gcc.target/riscv/rvv/base/vxor_vv_tum-2.c: New test.
+ * gcc.target/riscv/rvv/base/vxor_vv_tum-3.c: New test.
+ * gcc.target/riscv/rvv/base/vxor_vv_tumu-1.c: New test.
+ * gcc.target/riscv/rvv/base/vxor_vv_tumu-2.c: New test.
+ * gcc.target/riscv/rvv/base/vxor_vv_tumu-3.c: New test.
+
+2023-01-31 Marek Polacek <polacek@redhat.com>
+
+ PR c++/107593
+ PR c++/108597
+ * g++.dg/warn/Wduplicated-cond3.C: New test.
+ * g++.dg/warn/Wduplicated-cond4.C: New test.
+ * g++.dg/warn/Wduplicated-cond5.C: New test.
+
+2023-01-31 Philipp Tomsich <philipp.tomsich@vrull.eu>
+
+ PR target/108589
+ * gcc.target/aarch64/pr108589.c: New test.
+
+2023-01-31 Richard Sandiford <richard.sandiford@arm.com>
+
+ PR tree-optimization/108608
+ * gcc.dg/vect/pr108608.c: New test.
+ * gcc.target/aarch64/sve/pr108608-1.c: Likewise.
+
+2023-01-31 Andrew MacLeod <amacleod@redhat.com>
+
+ PR tree-optimization/108385
+ * gcc.dg/pr108385.c: New.
+
+2023-01-31 Andrew MacLeod <amacleod@redhat.com>
+
+ PR tree-optimization/108359
+ * gcc.dg/pr108359.c: New.
+
+2023-01-31 Philip Herron <philip.herron@embecosm.com>
+
+ * rust/compile/issue-1073.rs: New test.
+
+2023-01-31 Philip Herron <philip.herron@embecosm.com>
+
+ * rust/compile/issue-1006.rs: New test.
+
+2023-01-31 Philip Herron <philip.herron@embecosm.com>
+
+ * rust/compile/const_generics_5.rs: Fix assertions.
+ * rust/compile/unconstrained_type_param.rs: Add more assertions.
+
+2023-01-31 liushuyu <liushuyu011@gmail.com>
+
+ * rust/compile/builtin_macro_recurse.rs: New test.
+
+2023-01-31 liushuyu <liushuyu011@gmail.com>
+
+ * rust/compile/builtin_macro_concat.rs: Fix test error messages.
+ * rust/compile/builtin_macro_env.rs: Likewise.
+
+2023-01-31 Arthur Cohen <arthur.cohen@embecosm.com>
+
+ * rust/compile/frust-compile-until.rs: New test.
+
+2023-01-31 Philip Herron <philip.herron@embecosm.com>
+
+ * rust/compile/rust-const-blog-issue.rs: New test.
+
+2023-01-31 Arthur Cohen <arthur.cohen@embecosm.com>
+
+ * rust/compile/macro44.rs: New test.
+
+2023-01-31 Arthur Cohen <arthur.cohen@embecosm.com>
+
+ * rust/compile/macro_export_1.rs: New test.
+
+2023-01-31 Arthur Cohen <arthur.cohen@embecosm.com>
+
+ * rust/compile/const_generics_8.rs: New test.
+
+2023-01-31 Arthur Cohen <arthur.cohen@embecosm.com>
+
+ * rust/compile/const_generics_7.rs: New test.
+
+2023-01-31 liushuyu <liushuyu011@gmail.com>
+
+ * rust/execute/torture/loop-condition-eval.rs: New test.
+
+2023-01-31 Faisal Abbas <90.abbasfaisal@gmail.com>
+
+ * rust/compile/const8.rs: New test.
+
+2023-01-31 Faisal Abbas <90.abbasfaisal@gmail.com>
+
+ * rust/compile/const7.rs: New test.
+
+2023-01-31 Faisal Abbas <90.abbasfaisal@gmail.com>
+
+ * rust/compile/const6.rs: New test.
+
+2023-01-31 Philip Herron <philip.herron@embecosm.com>
+
+ * rust/compile/issue-1152.rs: Fix dejagnu assertion.
+ * rust/compile/tuple1.rs: Likewise.
+ * rust/compile/type-alias1.rs: Likewise.
+ * rust/execute/torture/operator_overload_9.rs: Likewise.
+ * rust/execute/torture/slice1.rs: Rework test to use new parsing
+ capability and stick to the original implementation.
+
+2023-01-31 Arthur Cohen <arthur.cohen@embecosm.com>
+
+ * rust/compile/macro43.rs: New test.
+
+2023-01-31 Arthur Cohen <arthur.cohen@embecosm.com>
+
+ * rust/compile/parse_range.rs: New test.
+
+2023-01-31 Arthur Cohen <arthur.cohen@embecosm.com>
+
+ * rust/compile/issue-1031.rs: Remove extraneous dead code warnings.
+ * rust/compile/issue-1289.rs: Likewise.
+ * rust/compile/test_mod.rs: Likewise.
+ * rust/compile/torture/raw_identifiers.rs: Likewise.
+ * rust/compile/torture/raw_identifiers_keywords.rs: Likewise.
+ * rust/compile/privacy7.rs: New test.
+
+2023-01-31 Arthur Cohen <arthur.cohen@embecosm.com>
+
+ * rust/compile/rustc_attr1.rs: New test.
+
+2023-01-31 Arthur Cohen <arthur.cohen@embecosm.com>
+
+ * rust/debug/win64-abi.rs: Fix assertion to take into account
+ overflow builtins
+ * rust/compile/torture/macro-issue1426.rs: Moved to...
+ * rust/execute/torture/macro-issue1426.rs: ...here.
+ * rust/execute/torture/overflow1.rs: New test.
+
+2023-01-31 Philip Herron <philip.herron@embecosm.com>
+
+ * rust/compile/torture/issue-1506.rs: New test.
+
+2023-01-31 Faisal Abbas <90.abbasfaisal@gmail.com>
+
+ * rust/compile/const4.rs: New.
+ * rust/compile/const5.rs: New.
+
+2023-01-31 Gaius Mulley <gaiusmod2@gmail.com>
+
+ * lib/gm2.exp (gm2_init_pimx): Replace gm2-libs-pim with
+ gm2-libs-log.
+ (gm2_init_iso): Replace gm2-libs-pim with gm2-libs-log.
+ (gm2_init_ulm): Replace gm2-libs-pim with gm2-libs-log.
+ (gm2_init_log): Replace gm2-libs-pim with gm2-libs-log.
+ (gm2_init_cor): Replace gm2-libs-pim with gm2-libs-log.
+
+2023-01-31 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/108599
+ * gcc.target/i386/avx2-pr108599.c: New test.
+
+2023-01-31 Xianmiao Qu <cooper.qu@linux.alibaba.com>
+
+ PR testsuite/108604
+ * gcc.dg/torture/pr108574-3.c (b, f): Change type from char to
+ signed char.
+
+2023-01-31 Jakub Jelinek <jakub@redhat.com>
+
+ PR rtl-optimization/108596
+ * gcc.c-torture/compile/pr108596.c: New test.
+
+2023-01-31 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/105593
+ * gcc.target/i386/sse-23.c: Add -Wuninitialized to dg-options.
+
+2023-01-31 Kito Cheng <kito.cheng@sifive.com>
+
+ * gcc.target/riscv/rvv/vsetvl/vlmax_phi-10.c: Refine the scan
+ condition.
+ * gcc.target/riscv/rvv/vsetvl/vlmax_phi-11.c: Ditto.
+ * gcc.target/riscv/rvv/vsetvl/vlmax_phi-12.c: Ditto.
+ * gcc.target/riscv/rvv/vsetvl/vlmax_phi-13.c: Ditto.
+ * gcc.target/riscv/rvv/vsetvl/vlmax_phi-14.c: Ditto.
+ * gcc.target/riscv/rvv/vsetvl/vlmax_phi-15.c: Ditto.
+ * gcc.target/riscv/rvv/vsetvl/vlmax_phi-16.c: Ditto.
+ * gcc.target/riscv/rvv/vsetvl/vlmax_phi-17.c: Ditto.
+ * gcc.target/riscv/rvv/vsetvl/vlmax_phi-18.c: Ditto.
+ * gcc.target/riscv/rvv/vsetvl/vlmax_phi-19.c: Ditto.
+ * gcc.target/riscv/rvv/vsetvl/vlmax_phi-20.c: Ditto.
+ * gcc.target/riscv/rvv/vsetvl/vlmax_phi-21.c: Ditto.
+ * gcc.target/riscv/rvv/vsetvl/vlmax_phi-22.c: Ditto.
+ * gcc.target/riscv/rvv/vsetvl/vlmax_phi-23.c: Ditto.
+ * gcc.target/riscv/rvv/vsetvl/vlmax_phi-24.c: Ditto.
+ * gcc.target/riscv/rvv/vsetvl/vlmax_phi-25.c: Ditto.
+ * gcc.target/riscv/rvv/vsetvl/vlmax_phi-26.c: Ditto.
+ * gcc.target/riscv/rvv/vsetvl/vlmax_phi-27.c: Ditto.
+ * gcc.target/riscv/rvv/vsetvl/vlmax_phi-28.c: Ditto.
+ * gcc.target/riscv/rvv/vsetvl/vlmax_phi-1.c: Ditto.
+ * gcc.target/riscv/rvv/vsetvl/vlmax_phi-2.c: Ditto.
+ * gcc.target/riscv/rvv/vsetvl/vlmax_phi-3.c: Ditto.
+ * gcc.target/riscv/rvv/vsetvl/vlmax_phi-4.c: Ditto.
+ * gcc.target/riscv/rvv/vsetvl/vlmax_phi-5.c: Ditto.
+ * gcc.target/riscv/rvv/vsetvl/vlmax_phi-6.c: Ditto.
+ * gcc.target/riscv/rvv/vsetvl/vlmax_phi-7.c: Ditto.
+ * gcc.target/riscv/rvv/vsetvl/vlmax_phi-8.c: Ditto.
+ * gcc.target/riscv/rvv/vsetvl/vlmax_phi-9.c: Ditto.
+
2023-01-30 Ju-Zhe Zhong <juzhe.zhong@rivai.ai>
* g++.target/riscv/rvv/base/vloxei64-1.C: New test.
diff --git a/libgm2/ChangeLog b/libgm2/ChangeLog
index 56e22132126..5d2535f4f88 100644
--- a/libgm2/ChangeLog
+++ b/libgm2/ChangeLog
@@ -1,3 +1,28 @@
+2023-01-31 Richard Biener <rguenther@suse.de>
+
+ PR modula2/108462
+ * libm2cor/Makefile.am: Remove static lib install from
+ install-data-local.
+ * libm2iso/Makefile.am: Likewise.
+ * libm2log/Makefile.am: Likewise.
+ * libm2min/Makefile.am: Likewise.
+ * libm2pim/Makefile.am: Likewise.
+ * libm2cor/Makefile.in: Regenerate.
+ * libm2iso/Makefile.in: Likewise.
+ * libm2log/Makefile.in: Likewise.
+ * libm2min/Makefile.in: Likewise.
+ * libm2pim/Makefile.in: Likewise.
+
+2023-01-31 Gaius Mulley <gaiusmod2@gmail.com>
+
+ * libm2log/Makefile.am (VPATH): Replace gm2-libs-pim
+ with gm2-libs-log.
+ (libm2log_la_M2FLAGS): Replace gm2-libs-pim with
+ gm2-libs-log.
+ (install-data-local): Replace gm2-libs-pim with
+ gm2-libs-log.
+ * libm2log/Makefile.in: Rebuilt.
+
2023-01-26 Gaius Mulley <gaiusmod2@gmail.com>
* configure.ac (AM_INIT_AUTOMAKE): Specify 1.15.1.
diff --git a/libsanitizer/ChangeLog b/libsanitizer/ChangeLog
index aa849bfc02e..8a9e51fb1bc 100644
--- a/libsanitizer/ChangeLog
+++ b/libsanitizer/ChangeLog
@@ -1,3 +1,21 @@
+2023-01-31 H.J. Lu <hjl.tools@gmail.com>
+
+ PR sanitizer/108106
+ * hwasan/hwasan_setjmp_x86_64.S (__interceptor_setjmp): Jump
+ to .Linterceptor_sigsetjmp instead of __interceptor_sigsetjmp.
+ (__interceptor_sigsetjmp): Add a local alias,
+ .Linterceptor_sigsetjmp.
+
+2023-01-31 Martin Liska <mliska@suse.cz>
+
+ * configure: Regenerate.
+
+2023-01-31 YunQiang Su <yunqiang.su@cipunited.com>
+
+ * configure.ac: set -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
+ always for mips*.
+ * configure: Regenerate.
+
2023-01-17 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* sanitizer_common/sanitizer_platform_interceptors.h: Cherry-pick