+2021-11-30 Iain Buclaw <ibuclaw@gdcproject.org>
+
+ * Makefile.def: Add bootstrap to libbacktrace, libphobos, zlib, and
+ libatomic.
+ * Makefile.in: Regenerate.
+ * Makefile.tpl (POSTSTAGE1_HOST_EXPORTS): Fix command for GDC.
+ (STAGE1_CONFIGURE_FLAGS): Add --with-libphobos-druntime-only if
+ target-libphobos-bootstrap.
+ (STAGE2_CONFIGURE_FLAGS): Likewise.
+ * configure: Regenerate.
+ * configure.ac: Add support for bootstrapping D front-end.
+
2021-11-16 Martin Uecker <uecker@gcc.gnu.org>
* MAINTAINERS: Add myself to DCO section and update email address.
+2021-11-30 Iain Buclaw <ibuclaw@gdcproject.org>
+
+ * acx.m4 (ACX_PROG_GDC): New m4 function.
+
2021-09-19 Andrew Pinski <apinski@marvell.com>
PR bootstrap/102389
+2021-11-30 liuhongt <hongtao.liu@intel.com>
+
+ PR target/103463
+ PR target/103484
+ * config/i386/i386.md (*x86_64_shld_1): Set_attr
+ length_immediate to 1.
+ (*x86_shld_1): Ditto.
+ (*x86_64_shrd_1): Ditto.
+ (*x86_shrd_1): Ditto.
+
+2021-11-30 Bill Schmidt <wschmidt@linux.ibm.com>
+
+ * config/rs6000/rs6000-c.c (altivec_resolve_overloaded_builtin):
+ Clarify diagnostic.
+ (altivec_resolve_new_overloaded_builtin): Likewise.
+
+2021-11-30 Martin Jambor <mjambor@suse.cz>
+
+ PR ipa/103267
+ * ipa-sra.c (scan_function): Also check ECF_LOOPING_CONST_OR_PURE flag.
+
+2021-11-30 Richard Sandiford <richard.sandiford@arm.com>
+
+ PR tree-optimization/103494
+ * tree-vect-stmts.c (vect_get_gather_scatter_ops): Remove ncopies
+ argument and calculate ncopies from gs_info->offset_vectype
+ where necessary.
+ (vectorizable_store, vectorizable_load): Update accordingly.
+
+2021-11-30 Iain Buclaw <ibuclaw@gdcproject.org>
+
+ * Makefile.in (GDC): New variable.
+ (GDCFLAGS): New variable.
+ * configure: Regenerate.
+ * configure.ac: Add call to ACX_PROG_GDC. Substitute GDCFLAGS.
+
+2021-11-30 Martin Liska <mliska@suse.cz>
+ Martin Jambor <mjambor@suse.cz>
+
+ PR ipa/103449
+ * ipa-param-manipulation.c
+ (ipa_param_body_adjustments::prepare_debug_expressions): Be
+ careful about hash_map reallocating itself. Simpify a return
+ which always returns true.
+
+2021-11-30 Andrew MacLeod <amacleod@redhat.com>
+
+ PR tree-optimization/103440
+ * gimple-range-fold.cc (fold_using_range::range_of_phi): Continue
+ normal param processing for equiv params.
+
+2021-11-30 Richard Biener <rguenther@suse.de>
+
+ * config/i386/i386.c (ix86_shift_rotate_cost): Remove
+ unreachable return.
+ * tree-chrec.c (evolution_function_is_invariant_rec_p):
+ Likewise.
+ * tree-if-conv.c (if_convertible_stmt_p): Likewise.
+ * tree-ssa-pre.c (fully_constant_expression): Likewise.
+ * tree-vrp.c (operand_less_p): Likewise.
+ * reload.c (reg_overlap_mentioned_for_reload_p): Remove
+ unreachable gcc_unreachable ().
+ * sel-sched-ir.h (bb_next_bb): Likewise.
+ * varasm.c (compare_constant): Likewise.
+
+2021-11-30 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/103489
+ * tree-vect-loop.c (vectorizable_phi): Verify argument
+ vector type compatibility to mitigate bool pattern recog
+ bug.
+
+2021-11-30 Thomas Schwinge <thomas@codesourcery.com>
+
+ * omp-offload.c (oacc_loop_auto_partitions): Remove erroneous
+ "Orphan reductions cannot have gang partitioning" handling.
+
+2021-11-30 Thomas Schwinge <thomas@codesourcery.com>
+
+ * omp-offload.c (oacc_loop_process): Implement "gang reduction on
+ an orphan loop" checking.
+
+2021-11-30 Cesar Philippidis <cesar@codesourcery.com>
+ Thomas Schwinge <thomas@codesourcery.com>
+
+ * omp-general.h (enum oacc_loop_flags): Add OLF_REDUCTION enum.
+ * omp-low.c (lower_oacc_head_mark): Use it to mark OpenACC
+ reductions.
+ * omp-offload.c (oacc_loop_auto_partitions): Don't assign gang
+ level parallelism to orphan reductions.
+
+2021-11-30 Aldy Hernandez <aldyh@redhat.com>
+
+ PR tree-optimization/103451
+ * range-op.cc (operator_div::wi_fold): Remove
+ can_throw_non_call_exceptions special case.
+ * tree-ssa-sink.c (sink_code_in_bb): Same.
+
+2021-11-30 Richard Sandiford <richard.sandiford@arm.com>
+
+ * tree-vect-slp.c (arg1_arg4_map): New variable.
+ (vect_get_operand_map): Handle IFN_MASK_GATHER_LOAD.
+ (vect_build_slp_tree_1): Likewise.
+ (vect_build_slp_tree_2): Likewise.
+ * tree-vect-stmts.c (vectorizable_load): Expect the mask to be
+ the last SLP child node rather than the first.
+
+2021-11-30 Richard Sandiford <richard.sandiford@arm.com>
+
+ * tree-if-conv.c: Include tree-eh.h.
+ (predicate_statements): Remove pe argument. Don't hoist
+ statements here.
+ (combine_blocks): Remove pe argument.
+ (ifcvt_available_on_edge_p, ifcvt_can_hoist): New functions.
+ (ifcvt_hoist_invariants): Likewise.
+ (tree_if_conversion): Update call to combine_blocks. Call
+ ifcvt_hoist_invariants after VN.
+
+2021-11-30 Richard Sandiford <richard.sandiford@arm.com>
+
+ PR tree-optimization/102467
+ * doc/sourcebuild.texi (vect_gather_load_ifn): Document.
+ * tree-vect-data-refs.c (vect_analyze_data_ref_dependence):
+ Commonize safelen handling. Punt for anything involving
+ gathers and scatters unless safelen says otherwise.
+ * tree-vect-slp.c (arg1_map): New variable.
+ (vect_get_operand_map): Handle IFN_GATHER_LOAD.
+ (vect_build_slp_tree_1): Likewise.
+ (vect_build_slp_tree_2): Likewise.
+ (compatible_calls_p): If vect_get_operand_map returns nonnull,
+ check that any skipped arguments are equal.
+ (vect_slp_analyze_node_operations_1): Tighten reduction check.
+ * tree-vect-stmts.c (check_load_store_for_partial_vectors): Take
+ an ncopies argument.
+ (vect_get_gather_scatter_ops): Take slp_node and ncopies arguments.
+ Handle SLP nodes.
+ (vectorizable_store, vectorizable_load): Adjust accordingly.
+
+2021-11-30 Richard Sandiford <richard.sandiford@arm.com>
+
+ * gimple.h (gimple_num_args, gimple_arg, gimple_arg_ptr): New
+ functions.
+ * tree-vect-slp.c (cond_expr_maps, arg2_map): New variables.
+ (vect_get_operand_map): New function.
+ (vect_get_and_check_slp_defs): Fix outdated comment.
+ Use vect_get_operand_map and new gimple argument accessors.
+ (vect_build_slp_tree_2): Likewise.
+
+2021-11-30 Richard Sandiford <richard.sandiford@arm.com>
+
+ * tree-vect-slp.c (vect_build_slp_tree_1): Use code_helper
+ to record the operations performed by statements, only using
+ CALL_EXPR for things that don't map to built-in or internal
+ functions. For shifts, require all shift amounts to be equal
+ if optab_vector is not supported but optab_scalar is.
+
+2021-11-30 Richard Sandiford <richard.sandiford@arm.com>
+
+ * tree-vect-data-refs.c (vect_check_gather_scatter): Continue
+ processing conversions if the current offset is a pointer.
+
+2021-11-30 Richard Sandiford <richard.sandiford@arm.com>
+
+ * tree-vectorizer.h (vect_is_reduction): Use STMT_VINFO_REDUC_IDX.
+
+2021-11-30 Richard Sandiford <richard.sandiford@arm.com>
+
+ * genopinit.c (main): Turn supports_vec_gather_load and
+ supports_vec_scatter_store into signed char arrays and remove
+ supports_vec_gather_load_cached and supports_vec_scatter_store_cached.
+ * optabs-query.c (supports_vec_convert_optab_p): Add a mode parameter.
+ If the mode is not VOIDmode, test only for that mode.
+ (supports_vec_gather_load_p): Likewise.
+ (supports_vec_scatter_store_p): Likewise.
+ * optabs-query.h (supports_vec_gather_load_p): Likewise.
+ (supports_vec_scatter_store_p): Likewise.
+ * tree-vect-data-refs.c (vect_check_gather_scatter): Pass the
+ vector mode to supports_vec_gather_load_p and
+ supports_vec_scatter_store_p.
+
+2021-11-30 Richard Sandiford <richard.sandiford@arm.com>
+
+ * internal-fn.c (commutative_binary_fn_p): Handle IFN_ADD_OVERFLOW
+ and IFN_MUL_OVERFLOW.
+
+2021-11-30 Richard Sandiford <richard.sandiford@arm.com>
+
+ * internal-fn.c (commutative_binary_fn_p): Handle IFN_UBSAN_CHECK_ADD
+ and IFN_UBSAN_CHECK_MUL.
+
+2021-11-30 Richard Sandiford <richard.sandiford@arm.com>
+
+ * internal-fn.c (commutative_binary_fn_p): Handle IFN_COMPLEX_MUL.
+
+2021-11-30 Richard Sandiford <richard.sandiford@arm.com>
+
+ * gimple-fold.c: Include internal-fn.h.
+ (fold_stmt_1): If a function maps to an internal one, use
+ first_commutative_argument to canonicalize the order of
+ commutative arguments.
+ * gimple-match-head.c (gimple_resimplify2, gimple_resimplify3)
+ (gimple_resimplify4, gimple_resimplify5): Extend commutativity
+ checks to functions.
+
+2021-11-30 Richard Sandiford <richard.sandiford@arm.com>
+
+ * doc/md.texi (reduc_fmin_scal_@var{m}): Document.
+ (reduc_fmax_scal_@var{m}): Likewise.
+ * optabs.def (reduc_fmax_scal_optab): New optab.
+ (reduc_fmin_scal_optab): Likewise
+ * internal-fn.def (REDUC_FMAX, REDUC_FMIN): New functions.
+ * tree-vect-loop.c (reduction_fn_for_scalar_code): Handle
+ CASE_CFN_FMAX and CASE_CFN_FMIN.
+ (neutral_op_for_reduction): Likewise.
+ (needs_fold_left_reduction_p): Likewise.
+ * config/aarch64/iterators.md (FMAXMINV): New iterator.
+ (fmaxmin): Handle UNSPEC_FMAXNMV and UNSPEC_FMINNMV.
+ * config/aarch64/aarch64-simd.md (reduc_<optab>_scal_<mode>): Fix
+ unspec mode.
+ (reduc_<fmaxmin>_scal_<mode>): New pattern.
+ * config/aarch64/aarch64-sve.md (reduc_<fmaxmin>_scal_<mode>):
+ Likewise.
+
+2021-11-30 Richard Sandiford <richard.sandiford@arm.com>
+
+ * builtins.h (associated_internal_fn): Declare overload that
+ takes a (combined_cfn, return type) pair.
+ * builtins.c (associated_internal_fn): Split new overload out
+ of original fndecl version. Also provide an overload that takes
+ a (combined_cfn, return type) pair.
+ * internal-fn.h (commutative_binary_fn_p): Declare.
+ (commutative_ternary_fn_p): Likewise.
+ (associative_binary_fn_p): Likewise.
+ * internal-fn.c (commutative_binary_fn_p, commutative_ternary_fn_p):
+ New functions, split out from...
+ (first_commutative_argument): ...here.
+ (associative_binary_fn_p): New function.
+ * gimple-match.h (code_helper): Add a constructor that takes
+ internal functions.
+ (commutative_binary_op_p): Declare.
+ (commutative_ternary_op_p): Likewise.
+ (first_commutative_argument): Likewise.
+ (associative_binary_op_p): Likewise.
+ (canonicalize_code): Likewise.
+ (directly_supported_p): Likewise.
+ (get_conditional_internal_fn): Likewise.
+ (gimple_build): New overloads that takes a code_helper.
+ * gimple-fold.c (gimple_build): Likewise.
+ * gimple-match-head.c (commutative_binary_op_p): New function.
+ (commutative_ternary_op_p): Likewise.
+ (first_commutative_argument): Likewise.
+ (associative_binary_op_p): Likewise.
+ (canonicalize_code): Likewise.
+ (directly_supported_p): Likewise.
+ (get_conditional_internal_fn): Likewise.
+ * tree-vectorizer.h: Include gimple-match.h.
+ (neutral_op_for_reduction): Take a code_helper instead of a tree_code.
+ (needs_fold_left_reduction_p): Likewise.
+ (reduction_fn_for_scalar_code): Likewise.
+ (vect_can_vectorize_without_simd_p): Declare a nNew overload that takes
+ a code_helper.
+ * tree-vect-loop.c: Include case-cfn-macros.h.
+ (fold_left_reduction_fn): Take a code_helper instead of a tree_code.
+ (reduction_fn_for_scalar_code): Likewise.
+ (neutral_op_for_reduction): Likewise.
+ (needs_fold_left_reduction_p): Likewise.
+ (use_mask_by_cond_expr_p): Likewise.
+ (build_vect_cond_expr): Likewise.
+ (vect_create_partial_epilog): Likewise. Use gimple_build rather
+ than gimple_build_assign.
+ (check_reduction_path): Handle calls and operate on code_helpers
+ rather than tree_codes.
+ (vect_is_simple_reduction): Likewise.
+ (vect_model_reduction_cost): Likewise.
+ (vect_find_reusable_accumulator): Likewise.
+ (vect_create_epilog_for_reduction): Likewise.
+ (vect_transform_cycle_phi): Likewise.
+ (vectorizable_reduction): Likewise. Make more use of
+ lane_reduc_code_p.
+ (vect_transform_reduction): Use gimple_extract_op but expect
+ a tree_code for now.
+ (vect_can_vectorize_without_simd_p): New overload that takes
+ a code_helper.
+ * tree-vect-stmts.c (vectorizable_call): Handle reductions in
+ fully-masked loops.
+ * tree-vect-patterns.c (vect_mark_pattern_stmts): Use
+ gimple_extract_op when updating STMT_VINFO_REDUC_IDX.
+
+2021-11-30 Richard Sandiford <richard.sandiford@arm.com>
+
+ * gimple-match.h (code_helper): Provide == and != overloads.
+ (code_helper::operator tree_code): Make explicit.
+ (code_helper::operator combined_fn): Likewise.
+ * gimple-match-head.c (convert_conditional_op): Use explicit
+ conversions where necessary.
+ (gimple_resimplify1, gimple_resimplify2, gimple_resimplify3): Likewise.
+ (maybe_push_res_to_seq, gimple_simplify): Likewise.
+ * gimple-fold.c (replace_stmt_with_simplification): Likewise.
+
+2021-11-30 Richard Sandiford <richard.sandiford@arm.com>
+
+ * gimple-match.h (code_helper): Add functions for querying whether
+ the code represents an internal_fn or a built_in_function.
+ Provide explicit conversion operators for both cases.
+ (gimple_extract_op): Declare.
+ * gimple-match-head.c (gimple_extract): New function, extracted from...
+ (gimple_simplify): ...here.
+ (gimple_extract_op): New function.
+
+2021-11-30 Eric Botcazou <ebotcazou@adacore.com>
+
+ PR target/103274
+ * config/i386/i386.c (ix86_output_call_insn): Beef up comment about
+ nops emitted with SEH.
+ * config/i386/winnt.c (i386_pe_seh_unwind_emit): When switching to
+ the cold section, emit a nop before the directive if the previous
+ active instruction is a call.
+
+2021-11-30 Roger Sayle <roger@nextmovesoftware.com>
+ Uroš Bizjak <ubizjak@gmail.com>
+
+ PR target/100711
+ * config/i386/sse.md (define_split): New splitters to simplify
+ not;vec_duplicate;and as vec_duplicate;andn.
+
+2021-11-30 Richard Biener <rguenther@suse.de>
+
+ PR middle-end/103485
+ * match.pd (-((int)x >> (prec - 1)) to (unsigned)x >> (prec - 1)):
+ Use VIEW_CONVERT_EXPR for vectors.
+
+2021-11-30 Richard Biener <rguenther@suse.de>
+
+ * cfgrtl.c (skip_insns_after_block): Refactor code to
+ be more easily readable.
+ * expr.c (op_by_pieces_d::run): Remove unreachable
+ assert.
+ * sched-deps.c (sched_analyze): Remove unreachable
+ gcc_unreachable.
+ * sel-sched-ir.c (in_same_ebb_p): Likewise.
+ * tree-ssa-alias.c (nonoverlapping_refs_since_match_p):
+ Remove unreachable code.
+ * tree-vect-slp.c (vectorize_slp_instance_root_stmt):
+ Refactor to avoid unreachable loop iteration.
+ * tree.c (walk_tree_1): Remove unreachable break.
+ * vec-perm-indices.c (vec_perm_indices::series_p): Remove
+ unreachable return.
+
+2021-11-30 Kewen Lin <linkw@linux.ibm.com>
+
+ PR target/102347
+ * config/rs6000/rs6000-call.c (rs6000_builtin_decl): Remove builtin mask
+ check.
+
+2021-11-30 Kewen Lin <linkw@linux.ibm.com>
+
+ * config/rs6000/rs6000.c
+ (rs6000_cost_data::update_target_cost_per_stmt): Adjust the way to
+ compute extra penalized cost. Remove useless parameter.
+ (rs6000_cost_data::rs6000_add_stmt_cost): Adjust the call to function
+ update_target_cost_per_stmt.
+
+2021-11-30 Kewen Lin <linkw@linux.ibm.com>
+
+ Revert:
+ 2021-11-17 Kewen Lin <linkw@linux.ibm.com>
+
+ * config/visium/visium.md (*add<mode>3_insn, *addsi3_insn, *addi3_insn,
+ *sub<mode>3_insn, *subsi3_insn, *subdi3_insn, *neg<mode>2_insn,
+ *negdi2_insn, *and<mode>3_insn, *ior<mode>3_insn, *xor<mode>3_insn,
+ *one_cmpl<mode>2_insn, *ashl<mode>3_insn, *ashr<mode>3_insn,
+ *lshr<mode>3_insn, *trunchiqi2_insn, *truncsihi2_insn,
+ *truncdisi2_insn, *extendqihi2_insn, *extendqisi2_insn,
+ *extendhisi2_insn, *extendsidi2_insn, *zero_extendqihi2_insn,
+ *zero_extendqisi2_insn, *zero_extendsidi2_insn): Fix split condition.
+
+2021-11-30 Andrew MacLeod <amacleod@redhat.com>
+
+ PR tree-optimization/103467
+ * gimple-range-gori.cc (range_def_chain::register_dependency): Don't
+ use an object reference after a potential resize.
+
2021-11-29 Uroš Bizjak <ubizjak@gmail.com>
PR target/102811
+2021-11-30 Thomas Schwinge <thomas@codesourcery.com>
+
+ * c-typeck.c (c_finish_omp_clauses): Remove "gang reduction on an
+ orphan loop" checking.
+
+2021-11-30 Cesar Philippidis <cesar@codesourcery.com>
+ Thomas Schwinge <thomas@codesourcery.com>
+
+ * c-typeck.c (c_finish_omp_clauses): Emit an error on orphan
+ OpenACC gang reductions.
+
+2021-11-30 Richard Biener <rguenther@suse.de>
+
+ * gimple-parser.c (c_parser_gimple_postfix_expression):
+ avoid unreachable code after break.
+
2021-11-29 Eric Gallager <egallager@gcc.gnu.org>
PR other/103021
+2021-11-30 Jason Merrill <jason@redhat.com>
+
+ * cp-gimplify.c (genericize_if_stmt): Always build a COND_EXPR.
+
+2021-11-30 Richard Biener <rguenther@suse.de>
+
+ * logic.cc (cnf_size_r): Remove unreachable and inconsistently
+ placed gcc_unreachable ()s.
+ * pt.c (iterative_hash_template_arg): Remove unreachable
+ gcc_unreachable and return.
+
+2021-11-30 Thomas Schwinge <thomas@codesourcery.com>
+
+ * semantics.c (finish_omp_clauses): Remove "gang reduction on an
+ orphan loop" checking.
+
+2021-11-30 Cesar Philippidis <cesar@codesourcery.com>
+ Thomas Schwinge <thomas@codesourcery.com>
+
+ * semantics.c (finish_omp_clauses): Emit an error on orphan
+ OpenACC gang reductions.
+
+2021-11-30 Jakub Jelinek <jakub@redhat.com>
+
+ * cp-gimplify.c (cp_fold_r): Perform folding of
+ std::source_location::current() calls here...
+ (cp_fold): ... rather than here.
+
+2021-11-30 Richard Biener <rguenther@suse.de>
+
+ * parser.c (cp_parser_postfix_expression): Remove
+ unreachable code.
+ * pt.c (tsubst_expr): Remove unreachable breaks.
+
2021-11-29 Eric Gallager <egallager@gcc.gnu.org>
PR other/103021
+2021-11-30 Iain Buclaw <ibuclaw@gdcproject.org>
+
+ * dmd/MERGE: Merge upstream dmd b8384668f.
+ * Make-lang.in (d-warn): Use strict warnings.
+ (DMD_WARN_CXXFLAGS): Remove.
+ (DMD_COMPILE): Remove.
+ (CHECKING_DFLAGS): Define.
+ (WARN_DFLAGS): Define.
+ (ALL_DFLAGS): Define.
+ (DCOMPILE.base): Define.
+ (DCOMPILE): Define.
+ (DPOSTCOMPILE): Define.
+ (DLINKER): Define.
+ (DLLINKER): Define.
+ (D_FRONTEND_OBJS): Add new dmd front-end objects.
+ (D_GENERATED_SRCS): Remove.
+ (D_GENERATED_OBJS): Remove.
+ (D_ALL_OBJS): Remove D_GENERATED_OBJS.
+ (d21$(exeext)): Build using DLLINKER and -static-libphobos.
+ (d.tags): Remove dmd/*.c and dmd/root/*.c.
+ (d.mostlyclean): Remove D_GENERATED_SRCS, d/idgen$(build_exeext),
+ d/impcnvgen$(build_exeext).
+ (D_INCLUDES): Include $(srcdir)/d/dmd/res.
+ (CFLAGS-d/id.o): Remove.
+ (CFLAGS-d/impcnvtab.o): Remove.
+ (d/%.o): Build using DCOMPILE and DPOSTCOMPILE. Update dependencies
+ from d/dmd/%.c to d/dmd/%.d.
+ (d/idgen$(build_exeext)): Remove.
+ (d/impcnvgen$(build_exeext)): Remove.
+ (d/id.c): Remove.
+ (d/id.h): Remove.
+ (d/impcnvtab.c): Remove.
+ (d/%.dmdgen.o): Remove.
+ (D_SYSTEM_H): Remove.
+ (d/idgen.dmdgen.o): Remove.
+ (d/impcnvgen.dmdgen.o): Remove.
+ * config-lang.in (boot_language): New variable.
+ * d-attribs.cc: Include dmd/expression.h.
+ * d-builtins.cc: Include d-frontend.h.
+ (build_frontend_type): Update for new front-end interface.
+ (d_eval_constant_expression): Likewise.
+ (d_build_builtins_module): Likewise.
+ (maybe_set_builtin_1): Likewise.
+ (d_build_d_type_nodes): Likewise.
+ * d-codegen.cc (d_decl_context): Likewise.
+ (declaration_reference_p): Likewise.
+ (declaration_type): Likewise.
+ (parameter_reference_p): Likewise.
+ (parameter_type): Likewise.
+ (get_array_length): Likewise.
+ (build_delegate_cst): Likewise.
+ (build_typeof_null_value): Likewise.
+ (identity_compare_p): Likewise.
+ (lower_struct_comparison): Likewise.
+ (build_filename_from_loc): Likewise.
+ (build_assert_call): Remove LIBCALL_SWITCH_ERROR.
+ (build_bounds_index_condition): Call LIBCALL_ARRAYBOUNDS_INDEXP on
+ bounds error.
+ (build_bounds_slice_condition): Call LIBCALL_ARRAYBOUNDS_SLICEP on
+ bounds error.
+ (array_bounds_check): Update for new front-end interface.
+ (checkaction_trap_p): Handle CHECKACTION_context.
+ (get_function_type): Update for new front-end interface.
+ (d_build_call): Likewise.
+ * d-compiler.cc: Remove include of dmd/scope.h.
+ (Compiler::genCmain): Remove.
+ (Compiler::paintAsType): Update for new front-end interface.
+ (Compiler::onParseModule): Likewise.
+ * d-convert.cc (convert_expr): Remove call to LIBCALL_ARRAYCAST.
+ (convert_for_rvalue): Update for new front-end interface.
+ (convert_for_assignment): Likewise.
+ (convert_for_condition): Likewise.
+ (d_array_convert): Likewise.
+ * d-diagnostic.cc (error): Remove.
+ (errorSupplemental): Remove.
+ (warning): Remove.
+ (warningSupplemental): Remove.
+ (deprecation): Remove.
+ (deprecationSupplemental): Remove.
+ (message): Remove.
+ (vtip): New.
+ * d-frontend.cc (global): Remove.
+ (Global::_init): Remove.
+ (Global::startGagging): Remove.
+ (Global::endGagging): Remove.
+ (Global::increaseErrorCount): Remove.
+ (Loc::Loc): Remove.
+ (Loc::toChars): Remove.
+ (Loc::equals): Remove.
+ (isBuiltin): Update for new front-end interface.
+ (eval_builtin): Likewise.
+ (getTypeInfoType): Likewise.
+ (inlineCopy): Remove.
+ * d-incpath.cc: Include d-frontend.h.
+ (add_globalpaths): Call d_gc_malloc to allocate Strings.
+ (add_filepaths): Likewise.
+ * d-lang.cc: Include dmd/id.h, dmd/root/file.h, d-frontend.h. Remove
+ include of dmd/mars.h, id.h.
+ (entrypoint_module): Remove.
+ (entrypoint_root_module): Remove.
+ (deps_write_string): Update for new front-end interface.
+ (deps_write): Likewise.
+ (d_init_options): Call rt_init. Remove setting global params that are
+ default initialized by the front-end.
+ (d_handle_option): Handle OPT_fcheckaction_, OPT_fdump_c___spec_,
+ OPT_fdump_c___spec_verbose, OPT_fextern_std_, OPT_fpreview,
+ OPT_revert, OPT_fsave_mixins_, and OPT_ftransition.
+ (d_post_options): Propagate dip1021 and dip1000 preview flags to
+ dip25, and flag_diagnostics_show_caret to printErrorContext.
+ (d_add_entrypoint_module): Remove.
+ (d_parse_file): Update for new front-end interface.
+ (d_type_promotes_to): Likewise.
+ (d_types_compatible_p): Likewise.
+ * d-longdouble.cc (CTFloat::zero): Remove.
+ (CTFloat::one): Remove.
+ (CTFloat::minusone): Remove.
+ (CTFloat::half): Remove.
+ * d-system.h (POSIX): Remove.
+ (realpath): Remove.
+ (isalpha): Remove.
+ (isalnum): Remove.
+ (isdigit): Remove.
+ (islower): Remove.
+ (isprint): Remove.
+ (isspace): Remove.
+ (isupper): Remove.
+ (isxdigit): Remove.
+ (tolower): Remove.
+ (_mkdir): Remove.
+ (INT32_MAX): Remove.
+ (INT32_MIN): Remove.
+ (INT64_MIN): Remove.
+ (UINT32_MAX): Remove.
+ (UINT64_MAX): Remove.
+ * d-target.cc: Include calls.h.
+ (target): Remove.
+ (define_float_constants): Remove initialization of snan.
+ (Target::_init): Update for new front-end interface.
+ (Target::isVectorTypeSupported): Likewise.
+ (Target::isVectorOpSupported): Remove cases for unordered operators.
+ (TargetCPP::typeMangle): Update for new front-end interface.
+ (TargetCPP::parameterType): Likewise.
+ (Target::systemLinkage): Likewise.
+ (Target::isReturnOnStack): Likewise.
+ (Target::isCalleeDestroyingArgs): Define.
+ (Target::preferPassByRef): Define.
+ * d-tree.h (d_add_entrypoint_module): Remove.
+ * decl.cc (gcc_attribute_p): Update for new front-end interface.
+ (apply_pragma_crt): Define.
+ (DeclVisitor::visit(PragmaDeclaration *)): Handle pragmas
+ crt_constructor and crt_destructor.
+ (DeclVisitor::visit(TemplateDeclaration *)): Update for new front-end
+ interface.
+ (DeclVisitor::visit): Likewise.
+ (DeclVisitor::finish_vtable): Likewise.
+ (get_symbol_decl): Error if template has more than one nesting
+ context. Update for new front-end interface.
+ (make_thunk): Update for new front-end interface.
+ (get_vtable_decl): Likewise.
+ * expr.cc (ExprVisitor::visit): Likewise.
+ (build_return_dtor): Likewise.
+ * imports.cc (ImportVisitor::visit): Likewise.
+ * intrinsics.cc: Include dmd/expression.h. Remove include of
+ dmd/mangle.h.
+ (maybe_set_intrinsic): Update for new front-end interface.
+ * intrinsics.def (INTRINSIC_ROL): Update intrinsic signature.
+ (INTRINSIC_ROR): Likewise.
+ (INTRINSIC_ROR_TIARG): Likewise.
+ (INTRINSIC_TOPREC): Likewise.
+ (INTRINSIC_TOPRECL): Likewise.
+ (INTRINSIC_TAN): Update intrinsic module and signature.
+ (INTRINSIC_ISNAN): Likewise.
+ (INTRINSIC_ISFINITE): Likewise.
+ (INTRINSIC_COPYSIGN): Define intrinsic.
+ (INTRINSIC_COPYSIGNI): Define intrinsic.
+ (INTRINSIC_EXP): Update intrinsic module.
+ (INTRINSIC_EXPM1): Likewise.
+ (INTRINSIC_EXP2): Likewise.
+ (INTRINSIC_LOG): Likewise.
+ (INTRINSIC_LOG2): Likewise.
+ (INTRINSIC_LOG10): Likewise.
+ (INTRINSIC_POW): Likewise.
+ (INTRINSIC_ROUND): Likewise.
+ (INTRINSIC_FLOORF): Likewise.
+ (INTRINSIC_FLOOR): Likewise.
+ (INTRINSIC_FLOORL): Likewise.
+ (INTRINSIC_CEILF): Likewise.
+ (INTRINSIC_CEIL): Likewise.
+ (INTRINSIC_CEILL): Likewise.
+ (INTRINSIC_TRUNC): Likewise.
+ (INTRINSIC_FMIN): Likewise.
+ (INTRINSIC_FMAX): Likewise.
+ (INTRINSIC_FMA): Likewise.
+ (INTRINSIC_VA_ARG): Update intrinsic signature.
+ (INTRINSIC_VASTART): Likewise.
+ * lang.opt (fcheck=): Add alternate aliases for contract switches.
+ (fcheckaction=): New option.
+ (check_action): New Enum and EnumValue entries.
+ (fdump-c++-spec-verbose): New option.
+ (fdump-c++-spec=): New option.
+ (fextern-std=): New option.
+ (extern_stdcpp): New Enum and EnumValue entries
+ (fpreview=): New options.
+ (frevert=): New options.
+ (fsave-mixins): New option.
+ (ftransition=): Update options.
+ * modules.cc (get_internal_fn): Replace Prot with Visibility.
+ (build_internal_fn): Likewise.
+ (build_dso_cdtor_fn): Likewise.
+ (build_module_tree): Remove check for __entrypoint module.
+ * runtime.def (P5): Define.
+ (ARRAYBOUNDS_SLICEP): Define.
+ (ARRAYBOUNDS_INDEXP): Define.
+ (NEWTHROW): Define.
+ (ADCMP2): Remove.
+ (ARRAYCAST): Remove.
+ (SWITCH_STRING): Remove.
+ (SWITCH_USTRING): Remove.
+ (SWITCH_DSTRING): Remove.
+ (SWITCH_ERROR): Remove.
+ * toir.cc (IRVisitor::visit): Update for new front-end interface.
+ (IRVisitor::check_previous_goto): Remove checks for case and default
+ statements.
+ (IRVisitor::visit(SwitchStatement *)): Remove handling of string
+ switch conditions.
+ * typeinfo.cc: Include d-frontend.h.
+ (get_typeinfo_kind): Update for new front-end interface.
+ (make_frontend_typeinfo): Likewise.
+ (TypeInfoVisitor::visit): Likewise.
+ (builtin_typeinfo_p): Likewise.
+ (get_typeinfo_decl): Likewise.
+ (build_typeinfo): Likewise.
+ * types.cc (valist_array_p): Likewise.
+ (make_array_type): Likewise.
+ (merge_aggregate_types): Likewise.
+ (TypeVisitor::visit(TypeBasic *)): Likewise.
+ (TypeVisitor::visit(TypeFunction *)): Likewise.
+ (TypeVisitor::visit(TypeStruct *)): Update comment.
+ * verstr.h: Removed.
+ * d-frontend.h: New file.
+
2021-11-29 Eric Gallager <egallager@gcc.gnu.org>
PR other/103021
+2021-11-30 Harald Anlauf <anlauf@gmx.de>
+
+ PR fortran/102787
+ * array.c (expand_constructor): When encountering a constant array
+ expression or array section within a constructor, simplify it to
+ enable better expansion.
+
+2021-11-30 Harald Anlauf <anlauf@gmx.de>
+
+ PR fortran/103473
+ * simplify.c (simplify_minmaxloc_nodim): Avoid NULL pointer
+ dereference when shape is not set.
+
+2021-11-30 Harald Anlauf <anlauf@gmx.de>
+ Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/101565
+ * check.c (gfc_check_image_index): Verify that SUB argument to
+ IMAGE_INDEX is of type integer.
+
+2021-11-30 Richard Biener <rguenther@suse.de>
+
+ * frontend-passes.c (gfc_expr_walker): Add comment to
+ indicate tail recursion.
+
+2021-11-30 Richard Biener <rguenther@suse.de>
+
+ * target-memory.c (gfc_element_size): Remove unreachable return.
+
+2021-11-30 Thomas Schwinge <thomas@codesourcery.com>
+
+ * openmp.c (resolve_oacc_loop_blocks): Remove "gang reduction on
+ an orphan loop" checking.
+ (oacc_is_parallel, oacc_is_kernels, oacc_is_serial)
+ (oacc_is_compute_construct): Remove.
+
+2021-11-30 Frederik Harwath <frederik@codesourcery.com>
+ Thomas Schwinge <thomas@codesourcery.com>
+
+ * openmp.c (oacc_is_parallel_or_serial): Evolve into...
+ (oacc_is_compute_construct): ... this function.
+ (resolve_oacc_loop_blocks): Use "oacc_is_compute_construct"
+ instead of "oacc_is_parallel_or_serial" for checking that a
+ loop is not orphaned.
+
+2021-11-30 Kwok Cheung Yeung <kcy@codesourcery.com>
+ Thomas Schwinge <thomas@codesourcery.com>
+
+ * openmp.c (oacc_is_serial, oacc_is_parallel_or_serial): New.
+ (resolve_oacc_loop_blocks): Use oacc_is_parallel_or_serial instead of
+ oacc_is_parallel.
+
+2021-11-30 Cesar Philippidis <cesar@codesourcery.com>
+ Thomas Schwinge <thomas@codesourcery.com>
+
+ * openmp.c (oacc_is_parallel, oacc_is_kernels): New 'static'
+ functions.
+ (resolve_oacc_loop_blocks): Emit an error on orphan OpenACC gang
+ reductions.
+
+2021-11-30 Richard Biener <rguenther@suse.de>
+
+ * decl.c (gfc_insert_parameter_exprs): Only return after
+ resetting type_param_spec_list.
+
+2021-11-30 Richard Biener <rguenther@suse.de>
+
+ * frontend-passes.c (gfc_expr_walker): Remove unreachable
+ break.
+ * scanner.c (skip_fixed_comments): Remove unreachable
+ gcc_unreachable.
+ * trans-expr.c (gfc_expr_is_variable): Refactor to make
+ control flow more obvious.
+
2021-11-29 Eric Gallager <egallager@gcc.gnu.org>
PR other/103021
+2021-11-30 Richard Biener <rguenther@suse.de>
+
+ * objc-act.c (objc_build_setter_call): Remove unreachable
+ return.
+
2021-11-29 Eric Gallager <egallager@gcc.gnu.org>
PR other/103021
+2021-11-30 Iain Buclaw <ibuclaw@gdcproject.org>
+
+ * EXCLUDES: Remove d/dmd sources from list.
+
2021-08-30 Joseph Myers <joseph@codesourcery.com>
* sv.po: Update.
+2021-11-30 liuhongt <hongtao.liu@intel.com>
+
+ * gcc.target/i386/pr103463.c: New test.
+ * gcc.target/i386/pr103463-2.c: New test.
+
+2021-11-30 David Malcolm <dmalcolm@redhat.com>
+
+ PR analyzer/94579
+ * gcc.dg/analyzer/pr94579.c: New test.
+
+2021-11-30 David Malcolm <dmalcolm@redhat.com>
+
+ PR analyzer/99269
+ * gcc.dg/analyzer/pr99269.c: New test.
+
+2021-11-30 David Malcolm <dmalcolm@redhat.com>
+
+ PR analyzer/100524
+ * gcc.dg/analyzer/pragma-2.c: New test.
+
+2021-11-30 Harald Anlauf <anlauf@gmx.de>
+
+ * gfortran.dg/array_constructor_54.f90: New test.
+
+2021-11-30 Harald Anlauf <anlauf@gmx.de>
+
+ PR fortran/103473
+ * gfortran.dg/minmaxloc_15.f90: New test.
+
+2021-11-30 Harald Anlauf <anlauf@gmx.de>
+ Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/101565
+ * gfortran.dg/coarray_49.f90: New test.
+
+2021-11-30 Richard Sandiford <richard.sandiford@arm.com>
+
+ PR tree-optimization/103494
+ * gcc.dg/vect/pr103494.c: New test.
+ * g++.dg/vect/pr103494.cc: Likewise.
+
+2021-11-30 Iain Buclaw <ibuclaw@gdcproject.org>
+
+ * gdc.dg/Wcastresult2.d: Update test.
+ * gdc.dg/asm1.d: Likewise.
+ * gdc.dg/asm2.d: Likewise.
+ * gdc.dg/asm3.d: Likewise.
+ * gdc.dg/gdc282.d: Likewise.
+ * gdc.dg/imports/gdc170.d: Likewise.
+ * gdc.dg/intrinsics.d: Likewise.
+ * gdc.dg/pr101672.d: Likewise.
+ * gdc.dg/pr90650a.d: Likewise.
+ * gdc.dg/pr90650b.d: Likewise.
+ * gdc.dg/pr94777a.d: Likewise.
+ * gdc.dg/pr95250.d: Likewise.
+ * gdc.dg/pr96869.d: Likewise.
+ * gdc.dg/pr98277.d: Likewise.
+ * gdc.dg/pr98457.d: Likewise.
+ * gdc.dg/simd1.d: Likewise.
+ * gdc.dg/simd2a.d: Likewise.
+ * gdc.dg/simd2b.d: Likewise.
+ * gdc.dg/simd2c.d: Likewise.
+ * gdc.dg/simd2d.d: Likewise.
+ * gdc.dg/simd2e.d: Likewise.
+ * gdc.dg/simd2f.d: Likewise.
+ * gdc.dg/simd2g.d: Likewise.
+ * gdc.dg/simd2h.d: Likewise.
+ * gdc.dg/simd2i.d: Likewise.
+ * gdc.dg/simd2j.d: Likewise.
+ * gdc.dg/simd7951.d: Likewise.
+ * gdc.dg/torture/gdc309.d: Likewise.
+ * gdc.dg/torture/pr94424.d: Likewise.
+ * gdc.dg/torture/pr94777b.d: Likewise.
+ * lib/gdc-utils.exp (gdc-convert-args): Handle new compiler options.
+ (gdc-convert-test): Handle CXXFLAGS, EXTRA_OBJC_SOURCES, and ARG_SETS
+ test directives.
+ (gdc-do-test): Only import modules in the test run directory.
+ * gdc.dg/pr94777c.d: New test.
+ * gdc.dg/pr96156b.d: New test.
+ * gdc.dg/pr96157c.d: New test.
+ * gdc.dg/simd_ctfe.d: New test.
+ * gdc.dg/torture/simd17344.d: New test.
+ * gdc.dg/torture/simd20052.d: New test.
+ * gdc.dg/torture/simd6.d: New test.
+ * gdc.dg/torture/simd7.d: New test.
+
+2021-11-30 Andrew MacLeod <amacleod@redhat.com>
+
+ * gcc.dg/pr103440.c: New.
+
+2021-11-30 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/103489
+ * gcc.dg/torture/pr103489.c: New testcase.
+
+2021-11-30 Martin Liska <mliska@suse.cz>
+
+ PR tree-optimization/103278
+ * gcc.dg/tree-ssa/if-to-switch-5.c: Make the test acceptable by
+ targets with no jump-tables.
+
+2021-11-30 Thomas Schwinge <thomas@codesourcery.com>
+
+ * c-c++-common/goacc/nested-reductions-1-routine.c: Adjust.
+ * c-c++-common/goacc/nested-reductions-2-routine.c: Adjust.
+ * c-c++-common/goacc/orphan-reductions-2.c: Adjust.
+ * gfortran.dg/goacc/nested-reductions-1-routine.f90: Adjust.
+ * gfortran.dg/goacc/nested-reductions-2-routine.f90: Adjust.
+ * gfortran.dg/goacc/orphan-reductions-1.f90: Adjust.
+ * gfortran.dg/goacc/orphan-reductions-2.f90: Adjust.
+
+2021-11-30 Thomas Schwinge <thomas@codesourcery.com>
+
+ * gfortran.dg/goacc/orphan-reductions-1.f90: Adjust.
+
+2021-11-30 Frederik Harwath <frederik@codesourcery.com>
+ Thomas Schwinge <thomas@codesourcery.com>
+
+ * gfortran.dg/goacc/orphan-reductions-3.f90: New test
+ verifying that the "gang reduction on an orphan loop" error message
+ is not emitted for non-orphaned loops.
+ * c-c++-common/goacc/orphan-reductions-3.c: Likewise for C and C++.
+
+2021-11-30 Cesar Philippidis <cesar@codesourcery.com>
+ Thomas Schwinge <thomas@codesourcery.com>
+
+ * c-c++-common/goacc/nested-reductions-1-routine.c: Adjust.
+ * c-c++-common/goacc/nested-reductions-2-routine.c: Likewise.
+ * gcc.dg/goacc/loop-processing-1.c: Likewise.
+ * gfortran.dg/goacc/nested-reductions-1-routine.f90: Likewise.
+ * gfortran.dg/goacc/nested-reductions-2-routine.f90: Likewise.
+ * c-c++-common/goacc/orphan-reductions-1.c: New test.
+ * c-c++-common/goacc/orphan-reductions-2.c: New test.
+ * gfortran.dg/goacc/orphan-reductions-1.f90: New test.
+ * gfortran.dg/goacc/orphan-reductions-2.f90: New test.
+
+2021-11-30 Kwok Cheung Yeung <kcy@codesourcery.com>
+ Thomas Schwinge <thomas@codesourcery.com>
+
+ * c-c++-common/goacc/routine-4.c (seq, vector, worker, gang):
+ Remove loop reductions.
+ * c-c++-common/goacc/routine-4-extern.c (seq, vector, worker, gang):
+ Likewise.
+
+2021-11-30 Roger Sayle <roger@nextmovesoftware.com>
+
+ PR testsuite/103477
+ * gcc.dg/tree-ssa/pr103345.c: Correct xor test for big-endian.
+
+2021-11-30 Aldy Hernandez <aldyh@redhat.com>
+
+ PR tree-optimization/103451
+ * gcc.dg/pr103451.c: New test.
+
+2021-11-30 Richard Sandiford <richard.sandiford@arm.com>
+
+ * gcc.dg/vect/vect-gather-3.c: New test.
+ * gcc.dg/vect/vect-gather-4.c: Likewise.
+ * gcc.target/aarch64/sve/mask_gather_load_8.c: Likewise.
+
+2021-11-30 Richard Sandiford <richard.sandiford@arm.com>
+
+ * gcc.dg/vect/pr99102.c: Add -fno-vect-cost-model.
+ Revert:
+ 2020-09-09 Richard Biener [rguenther@suse.de]
+ * gcc.target/i386/pr87007-4.c: Adjust.
+ * gcc.target/i386/pr87007-5.c: Likewise.
+
+2021-11-30 Richard Sandiford <richard.sandiford@arm.com>
+
+ * lib/target-supports.exp
+ (check_effective_target_vect_gather_load_ifn): New target test.
+ * gcc.dg/vect/vect-gather-1.c: New test.
+ * gcc.dg/vect/vect-gather-2.c: Likewise.
+ * gcc.target/aarch64/sve/gather_load_11.c: Likewise.
+
+2021-11-30 Richard Sandiford <richard.sandiford@arm.com>
+
+ * gcc.target/aarch64/sve/cost_model_13.c: New test.
+
+2021-11-30 Richard Sandiford <richard.sandiford@arm.com>
+
+ * gfortran.dg/vect/vect-8.f90: Bump number of vectorized loops
+ to 25 for SVE.
+ * gcc.target/aarch64/sve/gather_load_10.c: New test.
+
+2021-11-30 Richard Sandiford <richard.sandiford@arm.com>
+
+ * gcc.dg/add-mul-overflow-1.c: New test.
+
+2021-11-30 Richard Sandiford <richard.sandiford@arm.com>
+
+ * gcc.dg/ubsan/commutative-1.c: New test.
+
+2021-11-30 Richard Sandiford <richard.sandiford@arm.com>
+
+ * gcc.target/aarch64/sve/complex_mul_1.c: New test.
+
+2021-11-30 Richard Sandiford <richard.sandiford@arm.com>
+
+ * gcc.dg/fmax-fmin-1.c: New test.
+
+2021-11-30 Richard Sandiford <richard.sandiford@arm.com>
+
+ * gcc.dg/vect/vect-fmax-1.c: New test.
+ * gcc.dg/vect/vect-fmax-2.c: Likewise.
+ * gcc.dg/vect/vect-fmax-3.c: Likewise.
+ * gcc.dg/vect/vect-fmin-1.c: New test.
+ * gcc.dg/vect/vect-fmin-2.c: Likewise.
+ * gcc.dg/vect/vect-fmin-3.c: Likewise.
+ * gcc.target/aarch64/fmaxnm_1.c: Likewise.
+ * gcc.target/aarch64/fmaxnm_2.c: Likewise.
+ * gcc.target/aarch64/fminnm_1.c: Likewise.
+ * gcc.target/aarch64/fminnm_2.c: Likewise.
+ * gcc.target/aarch64/sve/fmaxnm_2.c: Likewise.
+ * gcc.target/aarch64/sve/fmaxnm_3.c: Likewise.
+ * gcc.target/aarch64/sve/fminnm_2.c: Likewise.
+ * gcc.target/aarch64/sve/fminnm_3.c: Likewise.
+
+2021-11-30 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/100977
+ * c-c++-common/cpp/ucnid-2011-1-utf8.c: Expect errors in C++.
+ * c-c++-common/cpp/ucnid-2011-1.c: Likewise.
+ * g++.dg/cpp/ucnid-4-utf8.C: Add missing space to dg-options.
+ * g++.dg/cpp23/normalize3.C: Enable for c++11 rather than just c++23.
+ * g++.dg/cpp23/normalize4.C: Likewise.
+ * g++.dg/cpp23/normalize5.C: Likewise.
+ * g++.dg/cpp23/normalize7.C: Expect errors rather than just warnings
+ for c++11 and up rather than just c++23.
+ * g++.dg/cpp23/ucnid-2-utf8.C: Expect errors even for c++11 .. c++20.
+
+2021-11-30 Roger Sayle <roger@nextmovesoftware.com>
+ Uroš Bizjak <ubizjak@gmail.com>
+
+ PR target/100711
+ * gcc.target/i386/pr100711-1.c: New test case.
+ * gcc.target/i386/pr100711-2.c: New test case.
+
+2021-11-30 Richard Biener <rguenther@suse.de>
+
+ PR middle-end/103485
+ * gcc.dg/pr103485.c: New testcase.
+
+2021-11-30 Kewen Lin <linkw@linux.ibm.com>
+
+ PR target/102347
+ * gcc.target/powerpc/pr102347.c: New test.
+
2021-11-29 David Malcolm <dmalcolm@redhat.com>
PR analyzer/103217
+2021-11-30 Richard Biener <rguenther@suse.de>
+
+ * charset.c (convert_escape): Remove unreachable break.
+
+2021-11-30 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/100977
+ * init.c (lang_defaults): Enable cxx23_identifiers for
+ -std={gnu,c}++{11,14,17,20} too.
+
2021-11-29 Eric Gallager <egallager@gcc.gnu.org>
PR other/103021
+2021-11-30 Rasmus Villemoes <rasmus.villemoes@prevas.dk>
+
+ * config/vxcrtstuff.c: Undefine caddr_t, pid_t, rlim_t,
+ ssize_t and vfork after including auto-host.h.
+
2021-11-29 Rasmus Villemoes <rasmus.villemoes@prevas.dk>
* config.host (powerpc-wrs-vxworks): Do not add crtbegin.o and
+2021-11-30 Kwok Cheung Yeung <kcy@codesourcery.com>
+ Thomas Schwinge <thomas@codesourcery.com>
+
+ * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Remove
+ temporary skip.
+
+2021-11-30 Cesar Philippidis <cesar@codesourcery.com>
+ Thomas Schwinge <thomas@codesourcery.com>
+
+ * testsuite/libgomp.oacc-fortran/parallel-dims.f90: Temporarily
+ skip.
+
2021-11-29 Richard Biener <rguenther@suse.de>
* oacc-plugin.c (GOMP_PLUGIN_acc_default_dim): Remove unreachable
+2021-11-30 Iain Buclaw <ibuclaw@gdcproject.org>
+
+ * libdruntime/MERGE: Merge upstream druntime e6caaab9.
+ * libdruntime/Makefile.am (D_EXTRA_FLAGS): Build libdruntime with
+ -fpreview=dip1000, -fpreview=fieldwise, and -fpreview=dtorfields.
+ (ALL_DRUNTIME_SOURCES): Add DRUNTIME_DSOURCES_STDCXX.
+ (DRUNTIME_DSOURCES): Update list of C binding modules.
+ (DRUNTIME_DSOURCES_STDCXX): Likewise.
+ (DRUNTIME_DSOURCES_LINUX): Likewise.
+ (DRUNTIME_DSOURCES_OPENBSD): Likewise.
+ (DRUNTIME_DISOURCES): Remove __entrypoint.di.
+ * libdruntime/Makefile.in: Regenerated.
+ * libdruntime/__entrypoint.di: Removed.
+ * libdruntime/gcc/deh.d (_d_isbaseof): Update signature.
+ (_d_createTrace): Likewise.
+ (__gdc_begin_catch): Remove reference to the exception.
+ (_d_throw): Increment reference count of thrown object before unwind.
+ (__gdc_personality): Chain exceptions with Throwable.chainTogether.
+ * libdruntime/gcc/emutls.d: Update imports.
+ * libdruntime/gcc/sections/elf.d: Update imports.
+ (DSO.moduleGroup): Update signature.
+ * libdruntime/gcc/sections/macho.d: Update imports.
+ (DSO.moduleGroup): Update signature.
+ * libdruntime/gcc/sections/pecoff.d: Update imports.
+ (DSO.moduleGroup): Update signature.
+ * src/MERGE: Merge upstream phobos 5ab9ad256.
+ * src/Makefile.am (D_EXTRA_DFLAGS): Add -fpreview=dip1000 and
+ -fpreview=dtorfields flags.
+ (PHOBOS_DSOURCES): Update list of std modules.
+ * src/Makefile.in: Regenerate.
+ * testsuite/lib/libphobos.exp (libphobos-dg-test): Handle assembly
+ compile types.
+ (dg-test): Override.
+ (additional_prunes): Define.
+ (libphobos-dg-prune): Filter any additional_prunes set by tests.
+ * testsuite/libphobos.aa/test_aa.d: Update test.
+ * testsuite/libphobos.druntime/druntime.exp (version_flags): Add
+ -fversion=CoreUnittest.
+ * testsuite/libphobos.druntime_shared/druntime_shared.exp
+ (version_flags): Add -fversion=CoreUnittest -fversion=Shared.
+ * testsuite/libphobos.exceptions/unknown_gc.d: Update test.
+ * testsuite/libphobos.hash/test_hash.d: Update test.
+ * testsuite/libphobos.phobos/phobos.exp (version_flags): Add
+ -fversion=StdUnittest
+ * testsuite/libphobos.phobos_shared/phobos_shared.exp (version_flags):
+ Likewise.
+ * testsuite/libphobos.shared/host.c: Update test.
+ * testsuite/libphobos.shared/load.d: Update test.
+ * testsuite/libphobos.shared/load_13414.d: Update test.
+ * testsuite/libphobos.thread/fiber_guard_page.d: Update test.
+ * testsuite/libphobos.thread/tlsgc_sections.d: Update test.
+ * testsuite/testsuite_flags.in: Add -fpreview=dip1000 to --gdcflags.
+ * testsuite/libphobos.shared/link_mod_collision.d: Removed.
+ * testsuite/libphobos.shared/load_mod_collision.d: Removed.
+ * testsuite/libphobos.betterc/betterc.exp: New test.
+ * testsuite/libphobos.config/config.exp: New test.
+ * testsuite/libphobos.gc/gc.exp: New test.
+ * testsuite/libphobos.imports/imports.exp: New test.
+ * testsuite/libphobos.lifetime/lifetime.exp: New test.
+ * testsuite/libphobos.unittest/unittest.exp: New test.
+ * testsuite/libphobos.allocations/alloc_from_assert.d: New file.
+ * testsuite/libphobos.betterc/test18828.d: New file.
+ * testsuite/libphobos.betterc/test19416.d: New file.
+ * testsuite/libphobos.betterc/test19421.d: New file.
+ * testsuite/libphobos.betterc/test19561.d: New file.
+ * testsuite/libphobos.betterc/test19924.d: New file.
+ * testsuite/libphobos.betterc/test20088.d: New file.
+ * testsuite/libphobos.betterc/test20613.d: New file.
+ * testsuite/libphobos.config/test19433.d: New file.
+ * testsuite/libphobos.config/test20459.d: New file.
+ * testsuite/libphobos.exceptions/assert_fail.d: New file.
+ * testsuite/libphobos.exceptions/catch_in_finally.d: New file.
+ * testsuite/libphobos.exceptions/future_message.d: New file.
+ * testsuite/libphobos.exceptions/long_backtrace_trunc.d: New file.
+ * testsuite/libphobos.exceptions/refcounted.d: New file.
+ * testsuite/libphobos.exceptions/rt_trap_exceptions.d: New file.
+ * testsuite/libphobos.exceptions/rt_trap_exceptions_drt.d: New file.
+ * testsuite/libphobos.gc/attributes.d: New file.
+ * testsuite/libphobos.gc/forkgc.d: New file.
+ * testsuite/libphobos.gc/forkgc2.d: New file.
+ * testsuite/libphobos.gc/nocollect.d: New file.
+ * testsuite/libphobos.gc/precisegc.d: New file.
+ * testsuite/libphobos.gc/recoverfree.d: New file.
+ * testsuite/libphobos.gc/sigmaskgc.d: New file.
+ * testsuite/libphobos.gc/startbackgc.d: New file.
+ * testsuite/libphobos.imports/bug18193.d: New file.
+ * testsuite/libphobos.init_fini/custom_gc.d: New file.
+ * testsuite/libphobos.init_fini/test18996.d: New file.
+ * testsuite/libphobos.lifetime/large_aggregate_destroy_21097.d: New file.
+ * testsuite/libphobos.thread/external_threads.d: New file.
+ * testsuite/libphobos.thread/join_detach.d: New file.
+ * testsuite/libphobos.thread/test_import.d: New file.
+ * testsuite/libphobos.thread/tlsstack.d: New file.
+ * testsuite/libphobos.typeinfo/enum_.d: New file.
+ * testsuite/libphobos.typeinfo/isbaseof.d: New file.
+ * testsuite/libphobos.unittest/customhandler.d: New file.
+
2021-11-19 Iain Sandoe <iain@sandoe.co.uk>
* testsuite/lib/libphobos.exp: Prune warnings from external
+2021-11-30 Jonathan Wakely <jwakely@redhat.com>
+
+ * testsuite/21_strings/basic_string/cons/char/moveable.cc: Allow
+ moved-from string to be non-empty.
+ * testsuite/21_strings/basic_string/cons/char/moveable2.cc:
+ Likewise.
+ * testsuite/21_strings/basic_string/cons/char/moveable2_c++17.cc:
+ Likewise.
+ * testsuite/21_strings/basic_string/cons/wchar_t/moveable.cc:
+ Likewise.
+ * testsuite/21_strings/basic_string/cons/wchar_t/moveable2.cc:
+ Likewise.
+ * testsuite/21_strings/basic_string/cons/wchar_t/moveable2_c++17.cc:
+ Likewise.
+ * testsuite/21_strings/basic_string/modifiers/assign/char/87749.cc:
+ Construct empty string before setting oom flag.
+ * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/87749.cc:
+ Likewise.
+
+2021-11-30 Jonathan Wakely <jwakely@redhat.com>
+
+ * include/bits/cow_string.h (basic_string(basic_string&&)): Fix
+ mem-initializer for _GLIBCXX_FULLY_DYNAMIC_STRING==0 case.
+ * testsuite/21_strings/basic_string/cons/char/noexcept_move_construct.cc:
+ Remove outdated comment.
+ * testsuite/21_strings/basic_string/cons/wchar_t/noexcept_move_construct.cc:
+ Likewise.
+
+2021-11-30 Jonathan Wakely <jwakely@redhat.com>
+
+ * src/c++20/sstream-inst.cc (_GLIBCXX_USE_CXX11_ABI): Define to
+ select new ABI.
+
+2021-11-30 Jonathan Wakely <jwakely@redhat.com>
+
+ * include/bits/stl_vector.h (vector::_S_do_relocate): Remove
+ C++20 constexpr specifier.
+ (vector::_S_relocate) [__cpp_if_constexpr]: Call __relocate_a
+ directly without tag dispatching.
+
+2021-11-30 Jonathan Wakely <jwakely@redhat.com>
+
+ PR libstdc++/103453
+ * config/allocator/malloc_allocator_base.h
+ (_GLIBCXX_SANITIZE_STD_ALLOCATOR): Define for Clang.
+ * config/allocator/new_allocator_base.h
+ (_GLIBCXX_SANITIZE_STD_ALLOCATOR): Likewise.
+
+2021-11-30 Jonathan Wakely <jwakely@redhat.com>
+
+ * doc/xml/manual/debug_mode.xml: Replace "his or her" with "they".
+ * doc/html/manual/debug_mode_design.html: Regenerate.
+
+2021-11-30 Jakub Jelinek <jakub@redhat.com>
+
+ * include/std/bit (byteswap): Add [[nodiscard]].
+
2021-11-28 Jakub Jelinek <jakub@redhat.com>
* include/std/bit (__cpp_lib_byteswap, byteswap): Define.