2022-12-31  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
	    Iain Sandoe  <iain@sandoe.co.uk>

	PR modula2/107612
	* Makefile.in: Make the configured libintl includes avaiable in INCINTL.
	(BUILD_CPPFLAGS): Use INCINTL.

2022-12-30  Alexandre Oliva  <oliva@adacore.com>

	* hash-table.h (check_complete_insertion, check_insert_slot):
	New hash_table methods.
	(m_inserting_slot): New hash_table field.
	(begin, hash_table ctors, ~hash_table): Check previous insert.
	(expand, empty_slow, clear_slot, find_with_hash): Likewise.
	(remote_elt_with_hash, traverse_noresize): Likewise.
	(gt_pch_nx): Likewise.
	(find_slot_with_hash): Likewise.  Record requested insert.

2022-12-30  Stam Markianos-Wright  <stam.markianos-wright@arm.com>

	PR target/107714
	* config/arm/arm-protos.h (mve_struct_mem_operand): New protoype.
	* config/arm/arm.cc (mve_struct_mem_operand): New function.
	* config/arm/constraints.md (Ug): New constraint.
	* config/arm/mve.md (mve_vst4q<mode>): Change constraint.
	(mve_vst2q<mode>): Likewise.
	(mve_vld4q<mode>): Likewise.
	(mve_vld2q<mode>): Likewise.
	* config/arm/predicates.md (mve_struct_operand): New predicate.

2022-12-29  Alexandre Oliva  <oliva@adacore.com>

	* hash-map.h (put, get_or_insert): Check that added entry
	doesn't look deleted either.
	* hash-set.h (add): Likewise.

2022-12-29  Alexandre Oliva  <oliva@adacore.com>

	* tree-parloops.cc (take_address_of): Skip INSERT if !gsi.

2022-12-29  Alexandre Oliva  <oliva@adacore.com>

	* hash-map.h (put, get_or_insert): Check that entry does not
	look empty after insertion.

2022-12-29  Alexandre Oliva  <oliva@adacore.com>

	* hash-set.h (add): Check that the inserted entry does not
	look empty.

2022-12-29  Alexandre Oliva  <oliva@adacore.com>

	* trans-mem.cc (split_bb_make_tm_edge): Record new node in
	tm_restart.

2022-12-29  Alexandre Oliva  <oliva@adacore.com>

	* postreload-gcse.cc (lookup_expr_in_table): Use NO_INSERT.

2022-12-29  Alexandre Oliva  <oliva@adacore.com>

	* tree-inline.cc (declare_return_variable): Don't remap NULL
	default def of result.

2022-12-29  Alexandre Oliva  <oliva@adacore.com>

	* tree-ssa-loop-niter.cc (expand_simple_operands): Refrain
	from caching NULL TREE_OPERANDs.

2022-12-29  Alexandre Oliva  <oliva@adacore.com>

	* tree-inline.cc (insert_decl_map): Skip mapping a NULL decl
	as value to itself.

2022-12-29  Alexandre Oliva  <oliva@adacore.com>

	* varpool.cc (symbol_table::remove_unreferenced_decls): Do not
	add NULL vnodes to referenced table.

2022-12-29  Alexandre Oliva  <oliva@adacore.com>

	* tree-ssa-scopedtables.cc
	(avail_exprs_stack::lookup_avail_expr): Finish hash table
	insertion before further lookups.

2022-12-29  Max Filippov  <jcmvbkbc@gmail.com>

	* config/xtensa/xtensa.cc (xtensa_return_in_memory): Use
	GP_RETURN_* instead of magic constant.

2022-12-29  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/xtensa.cc (xtensa_expand_prologue): Fix to check
	DF availability before use of DF_* macros.

2022-12-28  Roger Sayle  <roger@nextmovesoftware.com>

	* config/i386/i386.md (*clzsi2_lzcnt_zext_2): define_insn_and_split
	to match ZERO_EXTEND form of *clzsi2_lzcnt_zext.
	(*clzsi2_lzcnt_zext_2_falsedep): Likewise, new define_insn to match
	ZERO_EXTEND form of *clzsi2_lzcnt_zext_falsedep.
	(*bmi2_bzhi_zero_extendsidi_5): Likewise, new define_insn to match
	ZERO_EXTEND form of *bmi2_bzhi_zero_extendsidi.
	(*popcountsi2_zext_2): Likewise, new define_insn_and_split to match
	ZERO_EXTEND form of *popcountsi2_zext.
	(*popcountsi2_zext_2_falsedep): Likewise, new define_insn to match
	ZERO_EXTEND form of *popcountsi2_zext_falsedep.
	(*popcounthi2_2): Likewise, new define_insn_and_split to match
	ZERO_EXTEND form of *popcounthi2.
	(define_peephole2): ZERO_EXTEND variant of HImode popcount&1 using
	parity flag peephole2.

2022-12-28  Roger Sayle  <roger@nextmovesoftware.com>

	* config/i386/i386-expand.cc (ix86_split_ashl): Call
	ix86_expand_clear to generate an xor instruction.

2022-12-28  Martin Liska  <mliska@suse.cz>

	PR tree-optimization/108137
	* tree-ssa-strlen.cc (get_range_strlen_phi): Reject anything
	different from INTEGER_CST.

2022-12-28  Kito Cheng  <kito.cheng@sifive.com>

	* config/riscv/riscv-vsetvl.h (vl_vtype_info::get_avl_info):
	Return const reference rather than value.

2022-12-27  Jeff Law  <jlaw@ventanamicro.com>

	* config/riscv/riscv.md: Add missing modes to last patch.t

2022-12-27  Raphael Moreira Zinsly  <rzinsly@ventanamicro.com>

	PR target/95632
	PR target/106602
	* config/riscv/riscv.md: New pattern to simulate complex
	const_int loads.

2022-12-27  Christoph Müllner  <christoph.muellner@vrull.eu>

	* config/riscv/riscv.cc (riscv_next_saved_reg): New function.
	(riscv_is_eh_return_data_register): New function.
	(riscv_for_each_saved_reg): Restructure loop.

2022-12-27  Christoph Müllner  <christoph.muellner@vrull.eu>

	* config/riscv/riscv.md: Sync comments with code.

2022-12-27  jinma  <jinma@linux.alibaba.com>

	* common/config/riscv/riscv-common.cc:

2022-12-27  Jonathan Yong  <10walls@gmail.com>

	* configure.ac: use grep -i for case insensitive test.
	* configure: Regenerate.

2022-12-27  Max Filippov  <jcmvbkbc@gmail.com>

	* config/xtensa/xtensa.md (unspec): Extract UNSPEC_* constants
	into this enum.
	(unspecv): Extract UNSPECV_* constants into this enum.

2022-12-27  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/xtensa.md (set_frame_ptr): Fix to reflect
	TARGET_DENSITY.

2022-12-27  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/xtensa.h (GP_RETURN, GP_RETURN_REG_COUNT):
	Change to GP_RETURN_FIRST and GP_RETURN_LAST, respectively.
	* config/xtensa/xtensa.cc (xtensa_function_value,
	xtensa_libcall_value, xtensa_function_value_regno_p): Ditto.

2022-12-27  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/xtensa.cc (xtensa_expand_prologue): Modify to
	exit the inspection loops as soon as the necessity of stack
	pointer is found.

2022-12-27  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/elf.h: Tabify, and trim trailing spaces.
	* config/xtensa/linux.h: Likewise.
	* config/xtensa/uclinux.h: Likewise.
	* config/xtensa/xtensa-dynconfig.c: Likewise.
	* config/xtensa/xtensa.cc: Likewise.
	* config/xtensa/xtensa.h: Likewise.
	* config/xtensa/xtensa.md: Likewise.

2022-12-27  Ju-Zhe Zhong  <juzhe.zhong@rivai.ai>

	* config/riscv/riscv-vsetvl.cc
	(pass_vsetvl::compute_global_backward_infos): Change to visit CFG.
	(pass_vsetvl::prune_expressions): Ditto.

2022-12-27  Ju-Zhe Zhong  <juzhe.zhong@rivai.ai>

	* config/riscv/riscv-vsetvl.cc (change_insn): Remove pp_print.
	(avl_info::avl_info): Add copy function.
	(vector_insn_info::dump): Remove pp_print.
	* config/riscv/riscv-vsetvl.h: Add copy function.

2022-12-27  Kewen Lin  <linkw@linux.ibm.com>

	PR target/106680
	* common/config/rs6000/rs6000-common.cc (rs6000_handle_option): Remove
	the adjustment for option powerpc64 in -m64 handling, and remove the
	whole -m32 handling.
	* config/rs6000/rs6000.cc (rs6000_option_override_internal): When no
	explicit powerpc64 option is provided, enable it for -m64.  For 32 bit
	and OS_MISSING_POWERPC64, disable powerpc64 if it's enabled but not
	specified explicitly.

2022-12-26  liuhongt  <hongtao.liu@intel.com>

	PR target/55522
	PR target/36821
	* config/i386/gnu-user-common.h (GNU_USER_TARGET_MATHFILE_SPEC):
	Link crtfastmath.o whenever -mdaz-ftz is specified. Don't link
	crtfastmath.o when -share or -mno-daz-ftz is specified.
	* config/i386/i386.opt (mdaz-ftz): New option.
	* doc/invoke.texi (x86 options): Document mftz-daz.

2022-12-25  Roger Sayle  <roger@nextmovesoftware.com>
	    Uroš Bizjak  <ubizjak@gmail.com>

	* config/i386/i386-builtin.def (__builtin_ia32_movss): Update
	CODE_FOR_sse_movss to CODE_FOR_sse_movss_v4sf.
	(__builtin_ia32_movsd): Likewise, update CODE_FOR_sse2_movsd to
	CODE_FOR_sse2_movsd_v2df.
	* config/i386/i386-expand.cc (split_convert_uns_si_sse): Update
	gen_sse_movss call to gen_sse_movss_v4sf, and gen_sse2_movsd call
	to gen_sse2_movsd_v2df.
	(expand_vec_perm_movs): Also allow V4SImode with TARGET_SSE and
	V2DImode with TARGET_SSE2.
	* config/i386/sse.md
	(avx512fp16_fcmaddcsh_v8hf_mask3<round_expand_name>): Update
	gen_sse_movss call to gen_sse_movss_v4sf.
	(avx512fp16_fmaddcsh_v8hf_mask3<round_expand_name>): Likewise.
	(sse_movss_<mode>): Renamed from sse_movss using VI4F_128 mode
	iterator to handle both V4SF and V4SI.
	(sse2_movsd_<mode>): Likewise, renamed from sse2_movsd using
	VI8F_128 mode iterator to handle both V2DF and V2DI.

2022-12-23  Jakub Jelinek  <jakub@redhat.com>
	    Aldy Hernandez  <aldyh@redhat.com>

	* tree-ssa-phiopt.cc (value_replacement): Instead of resetting
	phires range info, union it with carg.

2022-12-23  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/108068
	* tree.h (real_maybe_zerop): Declare.
	* tree.cc (real_maybe_zerop): Define.
	* tree-ssa-dom.cc (record_edge_info): Use it instead of
	real_zerop or TREE_CODE (op1) == SSA_NAME || real_zerop.  Always set
	can_infer_simple_equiv to false for decimal floating point types.

2022-12-23  Roger Sayle  <roger@nextmovesoftware.com>

	PR target/107548
	* config/i386/i386-features.cc (scalar_chain::add_insn): The
	operands of a VEC_SELECT don't need to added to the scalar chain.
	(general_scalar_chain::compute_convert_gain) <case VEC_SELECT>:
	Provide gains for performing STV on a VEC_SELECT.
	(general_scalar_chain::convert_insn): Convert VEC_SELECT to pshufd,
	psrldq or no-op.
	(general_scalar_to_vector_candidate_p): Handle VEC_SELECT of a
	single element from a vector register to a scalar register.

2022-12-23  H.J. Lu  <hjl.tools@gmail.com>
	    Roger Sayle  <roger@nextmovesoftware.com>

	PR target/106933
	PR target/106959
	* config/i386/i386-features.cc (single_def_chain_p): New predicate
	function to check that a pseudo's use-def chain is in SSA form.
	(timode_scalar_to_vector_candidate_p): Check that TImode regs that
	are SET_DEST or SET_SRC of an insn match/are single_def_chain_p.

2022-12-23  Ju-Zhe Zhong  <juzhe.zhong@rivai.ai>

	* config/riscv/vector.md: Fix contraints.

2022-12-23  Ju-Zhe Zhong  <juzhe.zhong@rivai.ai>

	* config/riscv/riscv-protos.h (get_avl_type_rtx): New function.
	* config/riscv/riscv-v.cc (get_avl_type_rtx): Ditto.
	* config/riscv/riscv-vector-builtins-bases.cc (class loadstore): New
	class.
	(BASE): Ditto.
	* config/riscv/riscv-vector-builtins-bases.h: Ditto.
	* config/riscv/riscv-vector-builtins-functions.def (vle): Ditto.
	(vse): Ditto.
	* config/riscv/riscv-vector-builtins-shapes.cc (build_one): Ditto.
	(struct loadstore_def): Ditto.
	(SHAPE): Ditto.
	* config/riscv/riscv-vector-builtins-shapes.h: Ditto.
	* config/riscv/riscv-vector-builtins-types.def (DEF_RVV_U_OPS): New
	macro.
	(DEF_RVV_F_OPS): Ditto.
	(vuint8mf8_t): Add corresponding mask type.
	(vuint8mf4_t): Ditto.
	(vuint8mf2_t): Ditto.
	(vuint8m1_t): Ditto.
	(vuint8m2_t): Ditto.
	(vuint8m4_t): Ditto.
	(vuint8m8_t): Ditto.
	(vuint16mf4_t): Ditto.
	(vuint16mf2_t): Ditto.
	(vuint16m1_t): Ditto.
	(vuint16m2_t): Ditto.
	(vuint16m4_t): Ditto.
	(vuint16m8_t): Ditto.
	(vuint32mf2_t): Ditto.
	(vuint32m1_t): Ditto.
	(vuint32m2_t): Ditto.
	(vuint32m4_t): Ditto.
	(vuint32m8_t): Ditto.
	(vuint64m1_t): Ditto.
	(vuint64m2_t): Ditto.
	(vuint64m4_t): Ditto.
	(vuint64m8_t): Ditto.
	(vfloat32mf2_t): Ditto.
	(vfloat32m1_t): Ditto.
	(vfloat32m2_t): Ditto.
	(vfloat32m4_t): Ditto.
	(vfloat32m8_t): Ditto.
	(vfloat64m1_t): Ditto.
	(vfloat64m2_t): Ditto.
	(vfloat64m4_t): Ditto.
	(vfloat64m8_t): Ditto.
	* config/riscv/riscv-vector-builtins.cc (DEF_RVV_TYPE): Adjust for new
	macro.
	(DEF_RVV_I_OPS): Ditto.
	(DEF_RVV_U_OPS): New macro.
	(DEF_RVV_F_OPS): New macro.
	(use_real_mask_p): New function.
	(use_real_merge_p): Ditto.
	(get_tail_policy_for_pred): Ditto.
	(get_mask_policy_for_pred): Ditto.
	(function_builder::apply_predication): Ditto.
	(function_builder::append_base_name): Ditto.
	(function_builder::append_sew): Ditto.
	(function_expander::add_vundef_operand): Ditto.
	(function_expander::add_mem_operand): Ditto.
	(function_expander::use_contiguous_load_insn): Ditto.
	(function_expander::use_contiguous_store_insn): Ditto.
	* config/riscv/riscv-vector-builtins.def (DEF_RVV_TYPE): Adjust for
	adding mask type.
	(vbool64_t): Ditto.
	(vbool32_t): Ditto.
	(vbool16_t): Ditto.
	(vbool8_t): Ditto.
	(vbool4_t): Ditto.
	(vbool2_t): Ditto.
	(vbool1_t): Ditto.
	(vint8mf8_t): Ditto.
	(vint8mf4_t): Ditto.
	(vint8mf2_t): Ditto.
	(vint8m1_t): Ditto.
	(vint8m2_t): Ditto.
	(vint8m4_t): Ditto.
	(vint8m8_t): Ditto.
	(vint16mf4_t): Ditto.
	(vint16mf2_t): Ditto.
	(vint16m1_t): Ditto.
	(vint16m2_t): Ditto.
	(vint16m4_t): Ditto.
	(vint16m8_t): Ditto.
	(vint32mf2_t): Ditto.
	(vint32m1_t): Ditto.
	(vint32m2_t): Ditto.
	(vint32m4_t): Ditto.
	(vint32m8_t): Ditto.
	(vint64m1_t): Ditto.
	(vint64m2_t): Ditto.
	(vint64m4_t): Ditto.
	(vint64m8_t): Ditto.
	(vfloat32mf2_t): Ditto.
	(vfloat32m1_t): Ditto.
	(vfloat32m2_t): Ditto.
	(vfloat32m4_t): Ditto.
	(vfloat32m8_t): Ditto.
	(vfloat64m1_t): Ditto.
	(vfloat64m4_t): Ditto.
	* config/riscv/riscv-vector-builtins.h
	(function_expander::add_output_operand): New function.
	(function_expander::add_all_one_mask_operand): Ditto.
	(function_expander::add_fixed_operand): Ditto.
	(function_expander::vector_mode): Ditto.
	(function_base::apply_vl_p): Ditto.
	(function_base::can_be_overloaded_p): Ditto.
	* config/riscv/riscv-vsetvl.cc (get_vl): Remove restrict of supporting
	AVL is not VLMAX.
	* config/riscv/t-riscv: Add include file.

2022-12-23  Ju-Zhe Zhong  <juzhe.zhong@rivai.ai>

	* config/riscv/riscv-vector-builtins-shapes.cc (struct vsetvl_def): Add
	"__riscv_" prefix.

2022-12-23  Ju-Zhe Zhong  <juzhe.zhong@rivai.ai>

	* config/riscv/riscv-vector-builtins-bases.cc: Change it to no side effects.
	* config/riscv/vector.md (@vsetvl<mode>_no_side_effects): New pattern.

2022-12-23  Ju-Zhe Zhong  <juzhe.zhong@rivai.ai>

	* config/riscv/riscv-vector-builtins-bases.cc: Remove side effects.

2022-12-23  Ju-Zhe Zhong  <juzhe.zhong@rivai.ai>

	* config/riscv/riscv-vsetvl.cc (anticipatable_occurrence_p): Fix
	incorrect annotations.
	(available_occurrence_p): Ditto.
	(backward_propagate_worthwhile_p): Ditto.
	(can_backward_propagate_p): Ditto.

2022-12-23  Ju-Zhe Zhong  <juzhe.zhong@rivai.ai>

	* config/riscv/riscv-vsetvl.cc (vlmax_avl_insn_p): Fix multi-line
	conditional.
	(vsetvl_insn_p): Ditto.
	(same_bb_and_before_p): Ditto.
	(same_bb_and_after_or_equal_p): Ditto.

2022-12-22  Andrew Carlotti  <andrew.carlotti@arm.com>

	* doc/md.texi: Move example code remark next to it's code block.

2022-12-22  Andrew Carlotti  <andrew.carlotti@arm.com>

	* doc/md.texi: Fix inconsistent example name.

2022-12-22  Andrew Carlotti  <andrew.carlotti@arm.com>

	* doc/md.texi: Fix incorrect pxref.

2022-12-22  Richard Biener  <rguenther@suse.de>

	PR bootstrap/106482
	* doc/install.texi (ISO C++11 Compiler): Document GCC version
	known to work.

2022-12-22  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/108166
	* tree-ssa-phiopt.cc (value_replacement): For the maybe_equal_p
	case turned into equal_p reset SSA_NAME_RANGE_INFO of phi result.

2022-12-22  Jakub Jelinek  <jakub@redhat.com>

	PR rtl-optimization/108193
	* cse.cc (compute_const_anchors): Change n type to
	unsigned HOST_WIDE_INT, adjust comparison against it to avoid
	warnings.  Formatting fix.
	(insert_const_anchor): Use gen_int_mode instead of GEN_INT.

2022-12-22  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/107451
	* tree-vect-stmts.cc (vectorizable_load): Avoid loading
	SLP group members from group numbers in excess of the
	vectorization factor.

2022-12-22  Jakub Jelinek  <jakub@redhat.com>

	* config/aarch64/t-aarch64 (TM_H): Don't add aarch64-cores.def,
	add aarch64-fusion-pairs.def, aarch64-tuning-flags.def and
	aarch64-option-extensions.def.
	(OPTIONS_H_EXTRA): Don't add aarch64-fusion-pairs.def nor
	aarch64-tuning-flags.def.

2022-12-22  Jan Hubicka  <hubicka@ucw.cz>

	* config/i386/i386-expand.cc (ix86_expand_set_or_cpymem): Add
	TARGET_AVX512_SPLIT_REGS
	* config/i386/i386-options.cc (ix86_option_override_internal):
	Honor x86_TONE_AVOID_256FMA_CHAINS.
	* config/i386/i386.cc (ix86_vec_cost): Honor TARGET_AVX512_SPLIT_REGS.
	(ix86_reassociation_width): Likewise.
	* config/i386/i386.h (TARGET_AVX512_SPLIT_REGS): New tune.
	* config/i386/x86-tune.def (X86_TUNE_USE_GATHER_2PARTS): Disable
	for znver4.
	(X86_TUNE_USE_GATHER_4PARTS): Likewise.
	(X86_TUNE_AVOID_256FMA_CHAINS): Set for znver4.
	(X86_TUNE_AVOID_512FMA_CHAINS): New utne; set for znver4.
	(X86_TUNE_AVX256_OPTIMAL): Add znver4.
	(X86_TUNE_AVX512_SPLIT_REGS): New tune.
	(X86_TUNE_AVX256_MOVE_BY_PIECES): Add znver1-3.
	(X86_TUNE_AVX256_STORE_BY_PIECES): Add znver1-3.
	(X86_TUNE_AVX512_MOVE_BY_PIECES): Add znver4.
	(X86_TUNE_AVX512_STORE_BY_PIECES): Add znver4.

2022-12-22  Jan Hubicka  <hubicka@ucw.cz>

	* config/i386/x86-tune-costs.h (znver4_cost): Upate costs of FP and SSE
	moves, division multiplication, gathers, L2 cache size, and more
	complex FP instrutions.

2022-12-21  Andrew Pinski  <apinski@marvell.com>

	PR tree-optimization/105532
	* match.pd (~(X >> Y) -> ~X >> Y): Check if it is an integral
	type before calling tree_nonzero_bits.
	(popcount(X) + popcount(Y)): Likewise.
	(popcount(X&C1)): Likewise.

2022-12-21  Chung-Lin Tang  <cltang@codesourcery.com>

	* config/nvptx/nvptx.cc (nvptx_print_operand): Add 'p' case, adjust
	comments.
	(enum nvptx_builtins): Add NVPTX_BUILTIN_BAR_RED_AND,
	NVPTX_BUILTIN_BAR_RED_OR, and NVPTX_BUILTIN_BAR_RED_POPC.
	(nvptx_expand_bar_red): New function.
	(nvptx_init_builtins):
	Add DEFs of __builtin_nvptx_bar_red_[and/or/popc].
	(nvptx_expand_builtin): Use nvptx_expand_bar_red to expand
	NVPTX_BUILTIN_BAR_RED_[AND/OR/POPC] cases.
	* config/nvptx/nvptx.md (define_c_enum "unspecv"): Add
	UNSPECV_BARRED_AND, UNSPECV_BARRED_OR, and UNSPECV_BARRED_POPC.
	(BARRED): New int iterator.
	(barred_op,barred_mode,barred_ptxtype): New int attrs.
	(nvptx_barred_<barred_op>): New define_insn.

2022-12-21  Richard Biener  <rguenther@suse.de>

	PR middle-end/107994
	* gimplify.cc (gimplify_expr): Catch errorneous comparison
	operand.

2022-12-21  Jan Hubicka  <hubicka@ucw.cz>

	* lto-opts.cc (lto_write_options): Also skip -fwhole-program.

2022-12-21  Jan Hubicka  <jh@suse.cz>

	* lto-cgraph.cc (lto_output_node): When doing WPA in incremental link
	pass down resolution info.

2022-12-21  Jan Hubicka  <hubicka@ucw.cz>

	* doc/invoke.texi: Fix documentation of -fwhole-program with LTO
	and document behaviour for incremental linking.

2022-12-21  Kewen Lin  <linkw@linux.ibm.com>

	* config/rs6000/rs6000.cc (rs6000_option_override_internal): Fix the
	location for OPTION_MASK_P10_FUSION flag setting.

2022-12-21  Kewen Lin  <linkw@linux.ibm.com>

	* fold-const.cc (fold_convert_const_real_from_real): Treat floating
	point conversion to a type with same mode as copy instead of normal
	convertFormat.

2022-12-21  Kewen Lin  <linkw@linux.ibm.com>

	PR target/106736
	* config/rs6000/mma.md (define_expand movoo): Call function
	rs6000_opaque_type_invalid_use_p to check and emit error message for
	the invalid use of opaque type.
	(define_expand movxo): Likewise.
	* config/rs6000/rs6000-protos.h
	(rs6000_opaque_type_invalid_use_p): New function declaration.
	(currently_expanding_gimple_stmt): New extern declaration.
	* config/rs6000/rs6000.cc (rs6000_opaque_type_invalid_use_p): New
	function.

2022-12-21  Jason Merrill  <jason@redhat.com>

	* fold-const.cc (fold_convert_loc): Check return value of
	protected_set_expr_location_unshare.

2022-12-21  Jason Merrill  <jason@redhat.com>

	PR c++/84471
	PR c++/107504
	* fold-const.cc (protected_set_expr_location_unshare): Not static.
	* tree.h: Declare it.
	* tree.cc (decl_value_expr_insert): Use it.

2022-12-20  Patrick Palka  <ppalka@redhat.com>

	PR c++/101886
	* tree.cc (walk_tree_1) <case TREE_VEC>: Walk the elements
	in forward instead of reverse order.
	<case VECTOR_CST>: Likewise.

2022-12-20  Andrew MacLeod  <amacleod@redhat.com>

	PR tree-optimization/108139
	* gimple-range-cache.cc (ranger_cache::fill_block_cache): Do not
	use equivalences originating from PHIS.

2022-12-20  Richard Biener  <rguenther@suse.de>

	PR d/104749
	* doc/install.texi (GDC): Document GDC 9.4 or later is required
	to build the D language frontend.

2022-12-20  Jiufu Guo  <guojiufu@linux.ibm.com>

	PR target/103743
	* config/rs6000/rs6000-protos.h (can_be_rotated_to_lowbits): New.
	(can_be_rotated_to_positive_16bits): New.
	(can_be_rotated_to_negative_15bits): New.
	* config/rs6000/rs6000.cc (can_be_rotated_to_lowbits): New definition.
	(can_be_rotated_to_positive_16bits): New definition.
	(can_be_rotated_to_negative_15bits): New definition.
	* config/rs6000/rs6000.md (*rotate_on_cmpdi): New define_insn_and_split.
	(eqne): Move earlier.

2022-12-19  Jason Merrill  <jason@redhat.com>

	* sort.cc: Disable -Wconditionally-supported in
	CHECKING_P code.

2022-12-19  Jason Merrill  <jason@redhat.com>

	PR c++/64867
	* configure.ac (strict_warn): Add -Wconditionally-supported.
	* configure: Regenerate.

2022-12-19  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/108164
	* tree-vect-loop-manip.cc (vect_update_ivs_after_vectorizer):
	Perform vect_step_op_add update in the appropriate type.

2022-12-19  Richard Earnshaw  <rearnsha@arm.com>

	* config/arm/arm-c.cc (__ARM_FEATURE_CLZ): Fix definition of
	preprocessor macro when target has CLZ in another ISA.

2022-12-19  Ju-Zhe Zhong  <juzhe.zhong@rivai.ai>

	* config/riscv/vector.md: Remove vste.

2022-12-19  Ju-Zhe Zhong  <juzhe.zhong@rivai.ai>

	* config.gcc: Add riscv-vsetvl.o.
	* config/riscv/riscv-passes.def (INSERT_PASS_BEFORE): Add VSETVL PASS
	location.
	* config/riscv/riscv-protos.h (make_pass_vsetvl): New function.
	(enum avl_type): New enum.
	(get_ta): New function.
	(get_ma): Ditto.
	(get_avl_type): Ditto.
	(calculate_ratio): Ditto.
	(enum tail_policy): New enum.
	(enum mask_policy): Ditto.
	* config/riscv/riscv-v.cc (calculate_ratio): New function.
	(emit_pred_op): change the VLMAX mov codgen.
	(get_ta): New function.
	(get_ma): Ditto.
	(enum tail_policy): Change enum.
	(get_prefer_tail_policy): New function.
	(enum mask_policy): Change enum.
	(get_prefer_mask_policy): New function.
	* config/riscv/t-riscv: Add riscv-vsetvl.o
	* config/riscv/vector.md: Adjust attribute and pattern for VSETVL
	PASS.
	(@vlmax_avl<mode>): Ditto.
	(@vsetvl<mode>_no_side_effects): Delete.
	(vsetvl_vtype_change_only): New MD pattern.
	(@vsetvl_discard_result<mode>): Ditto.
	* config/riscv/riscv-vsetvl.cc: New file.
	* config/riscv/riscv-vsetvl.h: New file.

2022-12-19  Ju-Zhe Zhong  <juzhe.zhong@rivai.ai>

	* config/riscv/riscv-vector-switch.def (ENTRY): Correct attributes.

2022-12-19  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	PR target/108140
	* config/aarch64/aarch64-builtins.cc
	(aarch64_expand_builtin_data_intrinsic): Handle NULL target.

2022-12-19  Jakub Jelinek  <jakub@redhat.com>

	* config/gnu-user.h (LIBHWASAN_EARLY_SPEC): Add libhwasan_preinit.o
	to link spec if not -shared.

2022-12-19  Ju-Zhe Zhong  <juzhe.zhong@rivai.ai>

	* config/riscv/riscv-v.cc (emit_vlmax_vsetvl): Pass through VLMUL enum
	instead of machine mode.
	* config/riscv/riscv-vector-builtins-bases.cc: Ditto.
	* config/riscv/riscv.cc (riscv_print_operand): Print LMUL by enum vlmul
	instead of machine mode.

2022-12-19  Jiufu Guo  <guojiufu@linux.ibm.com>

	PR target/106708
	* config/rs6000/rs6000.cc (rs6000_emit_set_long_const): Add using
	"li; x?oris" to build constant.

2022-12-19  liuhongt  <hongtao.liu@intel.com>

	PR target/55522
	* config/i386/gnu-user-common.h (GNU_USER_TARGET_MATHFILE_SPEC):
	Don't add crtfastmath.o for -shared.
	* doc/invoke.texi (-shared): Add related documentation.

2022-12-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

	* config.gcc: Determine Solaris minor version.
	Obsolete *-*-solaris2.11.[0-3]*.
	* doc/install.texi (Specific, *-*-solaris2*): Document it.

2022-12-17  Segher Boessenkool  <segher@kernel.crashing.org>

	* config/rs6000/rs6000-logue.cc (rs6000_output_function_epilogue):
	Handle GNU Rust for the tbtab lang field.

2022-12-16  John David Anglin  <danglin@gcc.gnu.org>

	* config/pa/pa.cc (pa_option_override): Disable -fstack-protector.

2022-12-16  Vladimir N. Makarov  <vmakarov@redhat.com>

	Revert:
	2022-12-15  Vladimir N. Makarov  <vmakarov@redhat.com>

	* ira-costs.cc: Include print-rtl.h.
	(record_reg_classes, scan_one_insn): Add code to print debug info.
	* ira.cc (ira_init_register_move_cost): Check that at least one hard
	reg of the mode are in the class contents to calculate the
	register move costs.

2022-12-16  Qing Zhao  <qing.zhao@oracle.com>

	* doc/invoke.texi: Document -Wstrict-flex-arrays option.
	* gimple-array-bounds.cc (check_out_of_bounds_and_warn): Add two more
	arguments.
	(array_bounds_checker::check_array_ref): Issue warnings for
	-Wstrict-flex-arrays.
	* opts.cc (finish_options): Issue warning for unsupported combination
	of -Wstrict_flex_arrays and -fstrict-flex-array.
	* tree-vrp.cc (execute_ranger_vrp): Enable the pass when
	warn_strict_flex_array is true.

2022-12-16  Palmer Dabbelt  <palmer@rivosinc.com>

	* config/riscv/riscv.cc (riscv_option_override): Fix comment
	wording.

2022-12-16  Palmer Dabbelt  <palmer@rivosinc.com>

	* doc/extend.texi (__builtin_riscv_pause): Imply
	Xgnuzihintpausestate.

2022-12-16  Richard Biener  <rguenther@suse.de>

	PR middle-end/108086
	* tree-inline.cc (remap_ssa_name): Do not unshare the
	result from the decl_map.

2022-12-16  Richard Biener  <rguenther@suse.de>

	PR middle-end/108086
	* tree-inline.cc (copy_bb): Remove handling of (foo *)&this->m
	substitution which is done in remap_gimple_op_r via
	re-gimplifying.

2022-12-16  Jakub Jelinek  <jakub@redhat.com>

	PR rtl-optimization/106751
	* loop-invariant.cc (move_invariant_reg): If preheader bb ends
	with a JUMP_INSN, split the preheader edge and emit invariants
	into the new preheader basic block.

2022-12-16  Richard Biener  <rguenther@suse.de>

	PR middle-end/108086
	* tree-inline.cc (remap_gimple_stmt): Add stmts to the
	sequence without updating them.  Simplify x == x detection.

2022-12-16  Haochen Jiang  <haochen.jiang@intel.com>

	* config/i386/cmpccxaddintrin.h
	(__cmpccxadd_epi32): Rename to _cmpccxadd_epi32.
	(__cmpccxadd_epi64): Rename to _cmpccxadd_epi64.

2022-12-15  Vladimir N. Makarov  <vmakarov@redhat.com>

	* ira-costs.cc: Include print-rtl.h.
	(record_reg_classes, scan_one_insn): Add code to print debug info.
	* ira.cc (ira_init_register_move_cost): Check that at least one hard
	reg of the mode are in the class contents to calculate the
	register move costs.

2022-12-15  Siddhesh Poyarekar  <siddhesh@gotplt.org>

	* doc/extend.texi (__builtin_dynamic_object_size): Document
	builtin.
	* doc/passes.texi
	(Optimize calls to @code{__builtin_object_size}): Also mention
	__builtin_dynamic_object_size.

2022-12-15  Siddhesh Poyarekar  <siddhesh@gotplt.org>

	PR middle-end/70090
	* doc/invoke.texi (-fsanitize=object-size): Use
	__builtin_dynamic_object_size instead of
	__builtin_object_size.

2022-12-15  Richard Biener  <rguenther@suse.de>

	PR middle-end/108086
	* tree-inline.cc (copy_edges_for_bb): Walk stmts backwards for
	splitting the block to avoid quadratic behavior with setting
	stmts BB on multliple splits.

2022-12-15  Spacetown  <michael.foerderer@gmx.de>

	PR gcov-profile/107537
	* gcov.cc (output_branch_count): Add annotation '(fallthrough)'
	or '(throw)' also to uncovered branches.

2022-12-15  Richard Biener  <rguenther@suse.de>

	PR middle-end/108086
	* tree-inline.cc (copy_edges_for_bb): Do not update all
	stmts again.

2022-12-15  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/108095
	* tree-into-ssa.cc (maybe_register_def): Insert debug stmt
	on all non-EH edges from asm goto if they have a single
	predecessor rather than asserting there is at most one such edge.
	Test whether there are no PHI nodes next to the single predecessor
	test.

2022-12-14  David Faust  <david.faust@oracle.com>

	PR target/106773
	* btfout.cc (get_section_name): New function.
	(btf_collect_datasec): Use it here. Process functions, marking them
	'extern' and generating DATASEC entries for them as appropriate. Move
	creation of BTF_KIND_FUNC records to here...
	(btf_dtd_emit_preprocess_cb): ... from here.

2022-12-14  David Faust  <david.faust@oracle.com>

	PR target/106773
	* btfout.cc (btf_collect_datasec): Correct size of void entries.
	(btf_dvd_emit_preprocess_cb): Do not skip emitting variables which
	refer to void types.
	(btf_init_postprocess): Create 'const void' type record if needed and
	adjust variables to refer to it as appropriate.

2022-12-14  David Faust  <david.faust@oracle.com>

	PR target/106773
	* btfout.cc (btf_collect_datasec): Mark extern variables as such.
	(btf_dvd_emit_preprocess_cb): Skip non-defining extern variable decl
	if there is a defining decl for the same variable.
	(btf_asm_varent): Accomodate 'extern' linkage.

2022-12-14  Martin Jambor  <mjambor@suse.cz>

	* ipa-sra.cc (create_parameter_descriptors): Consider the first
	parameter of a method safe to dereference.

2022-12-14  Martin Jambor  <mjambor@suse.cz>

	* ipa-sra.cc (loaded_decls): Adjust comment.
	(scan_expr_access): Also detect assignments of address of local
	variables to a variable.  Bail out early on SSA_NAMEs and
	constants as an optimization.

2022-12-14  Gaius Mulley  <gaiusmod2@gmail.com>

	* configure.ac (HAVE_PYTHON): Test for Python3 added.
	* dwarf2out.cc (gen_compile_unit_die): Check language_string
	and language to DW_LANG_Modula2.
	* doc/install.texi: Add m2 as a language.
	(--disable-libgm2): Documented.  Add make check-m2 to testing selected
	tests.
	* doc/sourcebuild.texi (GM2): New prerequisite item.
	(Python3 modules) New item.
	(libgm2) Added.
	(gcc/m2) Added.
	* configure: Rebuilt.
	* config.in: Rebuilt.
	* doc/gm2.texi: New file.

2022-12-14  Martin Jambor  <mjambor@suse.cz>

	* doc/invoke.texi (ipa-sra-ptrwrap-growth-factor): Fix the
	description.
	* params.opt (ipa-sra-ptrwrap-growth-factor): Likewise.

2022-12-14  Tamar Christina  <tamar.christina@arm.com>

	PR target/107988
	* config/aarch64/aarch64.cc
	(aarch64_vectorize_can_special_div_by_constant): Ensure input and output
	RTL are registers.

2022-12-14  Martin Liska  <mliska@suse.cz>

	* doc/invoke.texi: Document ipa-sra-ptrwrap-growth-factor.

2022-12-14  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/107617
	* tree-ssa-sccvn.cc (vn_walk_cb_data::push_partial_def):
	Handle negative pd.rhs_off.
	(vn_reference_lookup_3): Properly provide pd.rhs_off
	for .LEN_STORE on big-endian targets.

2022-12-13  Martin Jambor  <mjambor@suse.cz>

	* ipa-param-manipulation.cc
	(ipa_param_body_adjustments::modify_expression): Bail out early if
	there are no replacements.
	(ipa_param_body_adjustments::modify_assignment): Likewise.

2022-12-13  Martin Jambor  <mjambor@suse.cz>

	* ipa-sra.cc (isra_param_desc): New fields safe_size,
	conditionally_dereferenceable and safe_size_set.
	(struct gensum_param_desc): New field conditionally_dereferenceable.
	(struct isra_param_flow): Updated comment of field unit_size.
	(ipa_sra_function_summaries::duplicate): Copy the new fields.
	(isra_call_summary::dump): Dump unit_size when representing safe_size.
	(dump_gensum_param_descriptor): Dump new flag.
	(dump_isra_param_descriptor): Dump new fields.
	(isra_analyze_call): Fill unit_size when it represents known safe
	size.
	(check_gensum_access): Instead of disqualifying pointers which are not
	always dereference, mark them as conditionally dereferencable if loads
	are frequent enough.
	(process_scan_results): Copy the conditionally_dereferenceable flag.
	(isra_write_node_summary): Stream new fields, or assert they are not
	initialized yet.
	(isra_read_node_info): Stream new fields.
	(update_safe_size): New function.
	(propagate_param_hints_accross_call): Propagate safe_sizes.
	(propagate_hints_to_all_callees): New function.
	(adjust_parameter_descriptions): Check conditionally_dereferenceable
	candidates, rework dumping.
	(ipa_sra_analysis): Move most of hint propagation for one node to
	propagate_hints_to_all_callees.  Add another loop to stabilize within
	SCCs and another one to verify.

2022-12-13  Martin Jambor  <mjambor@suse.cz>

	* ipa-sra.cc (isra_param_desc): New field not_specially_constructed.
	(struct isra_param_flow): New field constructed_for_calls.
	(isra_call_summary::dump): Dump the new flag.
	(loaded_decls): New variable.
	(dump_isra_param_descriptor): New parameter hints, dump
	not_specially_constructed if it is true.
	(dump_isra_param_descriptors): New parameter hints, pass it to
	dump_isra_param_descriptor.
	(ipa_sra_function_summaries::duplicate): Duplicate new flag.
	(create_parameter_descriptors): Adjust comment.
	(get_gensum_param_desc): Bail out when decl2desc is NULL.
	(scan_expr_access): Add loaded local variables to loaded_decls.
	(scan_function): Survive if final_bbs is NULL.
	(isra_analyze_call): Compute constructed_for_calls flag.
	(process_scan_results): Be optimistic about size limits.  Do not dump
	computed param hints when dumpint IPA-SRA structures.
	(isra_write_edge_summary): Stream constructed_for_calls.
	(isra_read_edge_summary): Likewise.
	(ipa_sra_dump_all_summaries): New parameter hints, pass it to
	dump_isra_param_descriptor.
	(flip_all_hints_pessimistic): New function.
	(flip_all_param_hints_pessimistic): Likewise.
	(propagate_param_hints): Likewise.
	(disable_unavailable_parameters): Renamed to
	adjust_parameter_descriptions.  Expand size limits for parameters
	which are specially contstructed by all callers.  Check limits again.p
	(ipa_sra_analysis): Pass required hints to ipa_sra_dump_all_summaries.
	Add hint propagation.
	(ipa_sra_summarize_function): Initialize and destory loaded_decls,
	rearrange so that scan_function is called even when there are no
	candidates.
	* params.opt (ipa-sra-ptrwrap-growth-factor): New parameter.

2022-12-13  Martin Jambor  <mjambor@suse.cz>

	* ipa-sra.cc (ipa_sra_analysis): Move top-down analysis before
	bottom-up analysis.  Replace FOR_EACH_VEC_ELT with C++11 iteration.

2022-12-13  Martin Jambor  <mjambor@suse.cz>

	PR ipa/103585
	* params.opt (ipa-sra-deref-prob-threshold): New parameter.
	* doc/invoke.texi (ipa-sra-deref-prob-threshold): Document it.
	* ipa-sra.cc (struct gensum_param_access): New field load_count.
	(struct gensum_param_desc): New field safe_ref, adjusted comments.
	(by_ref_count): Renamed to unsafe_by_ref_count, adjusted all uses.
	(dump_gensum_access): Dump the new field.
	(dump_gensum_param_descriptor): Likewise.
	(create_parameter_descriptors): Set safe_ref field, move setting
	by_ref forward.  Only increment unsafe_by_ref_count for unsafe
	by_ref parameters.
	(allocate_access): Initialize new field.
	(mark_param_dereference): Adjust indentation.  Only add data to
	bb_dereferences for unsafe by_ref parameters.
	(scan_expr_access): For loads, accumulate BB counts.
	(dereference_probable_p): New function.
	(check_gensum_access): Fix leading comment, add parameter FUN.
	Check cumulative counts of loads for safe by_ref accesses instead
	of dereferences.
	(process_scan_results): Do not propagate dereference distances for
	safe by_ref parameters.  Pass fun to check_gensum_access.  Safe
	by_ref params do not need the postdominance check.

2022-12-13  Martin Jambor  <mjambor@suse.cz>

	* ipa-cp.cc (clone_for_param_removal_p): New function.
	(estimate_local_effects): Call it before considering cloning
	just to remove unused parameters.

2022-12-13  Martin Jambor  <mjambor@suse.cz>

	PR ipa/103227
	* ipa-param-manipulation.h (class ipa_param_adjustments): Removed
	member function get_updated_index_or_split.
	(class ipa_param_body_adjustments): New overload of
	register_replacement, new member function append_init_stmts, new
	member m_split_agg_csts_inits.
	* ipa-param-manipulation.cc: Include ipa-prop.h.
	(ipa_param_adjustments::get_updated_index_or_split): Removed.
	(ipa_param_body_adjustments::register_replacement): New overload, use
	it from the older one.
	(ipa_param_body_adjustments::common_initialization): Added the
	capability to create replacements for conflicting IPA-CP discovered
	constants.
	(ipa_param_body_adjustments::ipa_param_body_adjustments): Construct
	the new member.
	(ipa_param_body_adjustments::append_init_stmts): New function.
	* ipa-sra.cc: Include ipa-prop.h.
	(push_param_adjustments_for_index): Require IPA-CP transformation
	summary as a parameter, do not create replacements which are known to
	have constant values.
	(process_isra_node_results): Find and pass to the above function the
	IPA-CP transformation summary.
	* ipa-prop.cc (adjust_agg_replacement_values): Remove the
	functionality replacing IPA-SRA created scalar parameters with
	constants.  Simplify, do not require parameter descriptors, do not
	return anything.
	(ipcp_transform_function): Simplify now that
	adjust_agg_replacement_values does not change cfg.  Move definition
	and initialization of descriptors lower.
	* tree-inline.cc (tree_function_versioning): Call append_init_stmts of
	param_body_adjs, if there are any.

2022-12-13  Martin Jambor  <mjambor@suse.cz>

	* ipa-prop.cc (useful_ipcp_transformation_info_p): New function.
	(write_ipcp_transformation_info): Added a parameter, simplified
	given that is known not to be NULL.
	(ipcp_write_transformation_summaries): Write out all useful
	transformation summaries.
	(read_ipcp_transformation_info): Simplify given that some info
	will be read.
	(read_replacements_section): Remove assert.
	* lto-cgraph.cc (add_node_to): Also set encode_body for clones.
	* lto-streamer-out.cc (lto_output): Do not output virtual clones.

2022-12-13  Jakub Jelinek  <jakub@redhat.com>

	PR target/108044
	* config/i386/i386.md (*concat<half><mode>3_5, *concat<mode><dwi>3_6,
	*concat<mode><dwi>3_7): Split alternative with =ro output constraint
	into =r,o,o and use Wd input constraint for the last alternative which
	is enabled for TARGET_64BIT.  Reject ix86_endbr_immediate_operand
	in the input constant.

2022-12-13  Tamar Christina  <tamar.christina@arm.com>

	* config/aarch64/aarch64.md (tbranch_<code><mode>3): Use gen_int_mode.

2022-12-13  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/108064
	* tree-vect-patterns.cc (vect_recog_rotate_pattern): Pass uvectype
	as 4th argument to append_pattern_def_seq for statements with lhs
	with utype type.

2022-12-13  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/105801
	* tree-ssa-ccp.cc (likely_value): .DEFERRED_INIT produces
	UNDEFINED.
	* doc/invoke.texi (ftrivial-auto-var-init): Explicitely
	mention we treat variables without an initializer as
	undefined also for optimization purposes.

2022-12-13  Tom Tromey  <tom@tromey.com>
	    Mark Wielaard  <mark@klomp.org>
	    Marc Poulhiès  <dkm@kataplop.net>

	* dwarf2out.cc (is_rust): New.
	(base_type_die): Use DW_ATE_UTF for the Rust 'char' type.
	(gen_compile_unit_die): Handle "GNU Rust".

2022-12-13  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/108076
	* tree-if-conv.cc (if_convertible_loop_p_1): Reject blocks
	with non-local or forced labels that we later remove
	labels from.

2022-12-13  Haochen Gui  <guihaoc@gcc.gnu.org>

	* config/rs6000/rs6000.md (cbranchcc4): New expander.

2022-12-13  Haochen Gui  <guihaoc@gcc.gnu.org>

	* optabs.cc (prepare_cmp_insn): Return a NULL rtx other than
	assertion failure when targets don't have cbranch optab or
	predicate check fails.

2022-12-12  Wilco Dijkstra  <wilco.dijkstra@arm.com>

	* config/aarch64/aarch64.cc (aarch64_rtx_costs): Add correct costs
	for 24-bit and 12-bit shifted immediate add/sub.
	(TARGET_CONST_ANCHOR): Define.
	* config/aarch64/predicates.md (aarch64_pluslong_immediate):
	Fix range check.

2022-12-12  Tamar Christina  <tamar.christina@arm.com>

	* match.pd: Add new rule.

2022-12-12  Tamar Christina  <tamar.christina@arm.com>

	* config/aarch64/aarch64.cc (aarch64_can_change_mode_class): Restrict
	conversions between partial struct types properly.

2022-12-12  Tamar Christina  <tamar.christina@arm.com>

	* config/aarch64/aarch64.md (*tb<optab><mode>1): Rename to...
	(*tb<optab><ALLI:mode><GPI:mode>1): ... this.
	(tbranch_<code><mode>4): New.
	* config/aarch64/iterators.md(ZEROM, zerom): New.

2022-12-12  Tamar Christina  <tamar.christina@arm.com>

	* dojump.cc (do_jump): Pass along value.
	(do_jump_by_parts_greater_rtx): Likewise.
	(do_jump_by_parts_zero_rtx): Likewise.
	(do_jump_by_parts_equality_rtx): Likewise.
	(do_compare_rtx_and_jump): Likewise.
	(do_compare_and_jump): Likewise.
	* dojump.h (do_compare_rtx_and_jump): New.
	* optabs.cc (emit_cmp_and_jump_insn_1): Refactor to take optab to check.
	(validate_test_and_branch): New.
	(emit_cmp_and_jump_insns): Optiobally take a value, and when value is
	supplied then check if it's suitable for tbranch.
	* optabs.def (tbranch_eq$a4, tbranch_ne$a4): New.
	* doc/md.texi (tbranch_@var{op}@var{mode}4): Document it.
	* optabs.h (emit_cmp_and_jump_insns): New.
	* tree.h (tree_zero_one_valued_p): New.

2022-12-12  Tamar Christina  <tamar.christina@arm.com>

	* config/aarch64/aarch64-simd.md (*aarch64_simd_movv2hf): New.
	(mov<mode>, movmisalign<mode>, aarch64_dup_lane<mode>,
	aarch64_store_lane0<mode>, aarch64_simd_vec_set<mode>,
	@aarch64_simd_vec_copy_lane<mode>, vec_set<mode>,
	reduc_<optab>_scal_<mode>, reduc_<fmaxmin>_scal_<mode>,
	aarch64_reduc_<optab>_internal<mode>, aarch64_get_lane<mode>,
	vec_init<mode><Vel>, vec_extract<mode><Vel>): Support V2HF.
	(aarch64_simd_dupv2hf): New.
	* config/aarch64/aarch64.cc (aarch64_classify_vector_mode):
	Add E_V2HFmode.
	* config/aarch64/iterators.md (VHSDF_P): New.
	(V2F, VMOVE, nunits, Vtype, Vmtype, Vetype, stype, VEL,
	Vel, q, vp): Add V2HF.
	* config/arm/types.md (neon_fp_reduc_add_h): New.

2022-12-12  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* config/aarch64/aarch64-c.cc (aarch64_update_cpp_builtins): Define
	__ARM_FEATURE_PAUTH and __ARM_FEATURE_BTI when appropriate.
	* config/aarch64/aarch64.h (TARGET_BTI): Define.

2022-12-12  Richard Biener  <rguenther@suse.de>

	* genmatch.cc (dt_simplify::gen): Revert last change.
	* match.pd: Revert simplification of CONSTUCTOR leaf handling.
	(&x cmp SSA_NAME): Handle ADDR_EXPR in SSA defs.
	* fold-const.cc (split_address_to_core_and_offset): Handle
	ADDR_EXPRs in SSA defs.
	(address_compare): Likewise.

2022-12-12  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/89317
	* tree-ssa-ccp.cc (ccp_fold): Handle GIMPLE_COND via
	gimple_fold_stmt_to_constant_1.
	* match.pd (&a != &a + c): Apply to pointer_plus with non-ADDR_EXPR
	base as well.

2022-12-11  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/89317
	* match.pd ((p + b) - &p->c -> b - offsetof(c)): New patterns.

2022-12-11  Richard Biener  <rguenther@suse.de>

	* genmatch.cc (dt_node::gen_kids): Handle ADDR_EXPR in both
	the GENERIC and GIMPLE op position.
	(dt_simplify::gen): Capture both GENERIC and GIMPLE op
	position for ADDR_EXPR and CONSTRUCTOR.
	* match.pd: Simplify CONSTRUCTOR leaf handling.

2022-12-11  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106904
	* tree.h (strip_zero_offset_components): Declare.
	* tree.cc (strip_zero_offset_components): Define.
	* tree-vect-data-refs.cc (vect_create_addr_base_for_vector_ref):
	Strip zero offset components before building the address.

2022-12-10  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/107997
	* tree-ssa-loop-ivopts.cc: Include cfganal.h.
	(create_new_iv) <case IP_END>: If ip_end_pos bb is non-empty and ends
	with a stmt which ends bb, instead of adding iv update after it split
	the latch edge and insert iterator into the new latch bb.

2022-12-09  Jiufu Guo  <guojiufu@linux.ibm.com>

	* config/rs6000/rs6000.cc (rs6000_emit_set_const): Remove copy_rtx.
	(rs6000_emit_set_long_const): Likewise.

2022-12-09  Martin Liska  <mliska@suse.cz>

	* config/i386/i386-builtins.cc (fold_builtin_cpu): Use same path
	as for PR103661.
	* doc/extend.texi: Fix "x86-64" use.

2022-12-09  Sebastian Huber  <sebastian.huber@embedded-brains.de>

	* config/rtems.h (SUBTARGET_CC1_SPEC): Rename to...
	(OS_CC1_SPEC): ...this.
	* gcc.cc (SUBTARGET_CC1_SPEC): Rename to...
	(OS_CC1_SPEC): ...this.

2022-12-09  David Malcolm  <dmalcolm@redhat.com>

	* Makefile.in (ANALYZER_OBJS): Update for renaming of
	analyzer/region-model-impl-calls.cc to analyzer/kf.cc.

2022-12-09  liuhongt  <hongtao.liu@intel.com>

	* doc/invoke.texi (x86 options): Document
	-mlam={none,u48,u57}.
	* config/i386/i386-opts.h (enum lam_type): New enum.
	* config/i386/i386.cc (ix86_memtag_can_tag_addresses): New.
	(ix86_memtag_set_tag): Ditto.
	(ix86_memtag_extract_tag): Ditto.
	(ix86_memtag_add_tag): Ditto.
	(ix86_memtag_tag_size): Ditto.
	(ix86_memtag_untagged_pointer): Ditto.
	(TARGET_MEMTAG_CAN_TAG_ADDRESSES): New.
	(TARGET_MEMTAG_ADD_TAG): Ditto.
	(TARGET_MEMTAG_SET_TAG): Ditto.
	(TARGET_MEMTAG_EXTRACT_TAG): Ditto.
	(TARGET_MEMTAG_UNTAGGED_POINTER): Ditto.
	(TARGET_MEMTAG_TAG_SIZE): Ditto.
	(IX86_HWASAN_SHIFT): Ditto.
	(IX86_HWASAN_TAG_SIZE): Ditto.
	* config/i386/i386-expand.cc (ix86_expand_call): Untag code
	pointer.
	* config/i386/i386-options.cc (ix86_option_override_internal):
	Error when enable -mlam=[u48|u57] for 32-bit code.
	* config/i386/i386.opt: Add -mlam=[none|u48|u57].
	* config/i386/i386-protos.h (ix86_memtag_untagged_pointer):
	Declare.
	(ix86_memtag_can_tag_addresses): Ditto.

2022-12-08  Marek Polacek  <polacek@redhat.com>

	* doc/invoke.texi (-fsanitize=address): Suggest options to improve
	stack traces.

2022-12-08  Eugene Rozenfeld  <erozen@microsoft.com>

	PR ipa/108000
	* ipa-cp.cc (ipcp_propagate_stage): Fix profile count comparison

2022-12-08  David Faust  <david.faust@oracle.com>

	* config/bpf/bpf.md (bswap<mode>2): New define_insn.

2022-12-08  Sebastian Pop  <spop@amazon.com>

	PR target/98776
	* config/aarch64/aarch64-protos.h (aarch64_output_patchable_area):
	Declared.
	* config/aarch64/aarch64.cc (aarch64_print_patchable_function_entry):
	Emit an UNSPECV_PATCHABLE_AREA pseudo instruction.
	(aarch64_output_patchable_area): New.
	* config/aarch64/aarch64.md (UNSPECV_PATCHABLE_AREA): New.
	(patchable_area): Define.

2022-12-08  Jakub Jelinek  <jakub@redhat.com>

	PR debug/106719
	* cfgbuild.cc (find_bb_boundaries): If there are NOTEs in between
	debug_insn (seen after flow_transfer_insn) and insn, move NOTEs
	before all the DEBUG_INSNs and split after NOTEs.  If there are
	other insns like jump table data, clear debug_insn.

2022-12-08  Jakub Jelinek  <jakub@redhat.com>

	PR target/107627
	* config/i386/i386.md (HALF, half): New mode attributes.
	(*concat<half><mode>3_5, *concat<mode><dwi>3_6,
	*concat<mode><dwi>3_7): New define_insn_and_split patterns.

2022-12-08  Andrew MacLeod  <amacleod@redhat.com>

	PR tree-optimization/107985
	* gimple-range-op.cc
	(gimple_range_op_handler::gimple_range_op_handler): Check if type
	of the operands is supported.
	* gimple-range.cc (gimple_ranger::prefill_stmt_dependencies): Do
	not assert if here is no range-op handler.

2022-12-08  Jiufu Guo  <guojiufu@linux.ibm.com>

	* config/rs6000/predicates.md: Use sext_hwi.
	* config/rs6000/rs6000.cc (num_insns_constant_gpr): Likewise.
	(darwin_rs6000_legitimate_lo_sum_const_p): Likewise.
	(mem_operand_gpr): Likewise.
	(mem_operand_ds_form): Likewise.
	(rs6000_legitimize_address): Likewise.
	(rs6000_emit_set_const): Likewise.
	(rs6000_emit_set_long_const): Likewise.
	(print_operand): Likewise.
	(constant_generates_xxspltiw): Remove unnecessary expressions.
	* config/rs6000/rs6000.md: Use sext_hwi.

2022-12-08  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/107699
	* match.pd (&a !=/== &a.b + c -> (&a - &a.b) !=/== c): New
	pattern variant.

2022-12-08  Jakub Jelinek  <jakub@redhat.com>

	* range-op-float.cc (frange_nextafter): For MODE_COMPOSITE_P from
	denormal or zero, use real_nextafter on DFmode with conversions
	around it.
	(frange_arithmetic): For mode_composite, on top of rounding in the
	right direction accept extra 1ulp error for PLUS/MINUS_EXPR, extra
	2ulps error for MULT_EXPR and extra 3ulps error for RDIV_EXPR.

2022-12-08  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/107967
	* range-op-float.cc (frange_arithmetic): Fix a thinko - if
	inf is negative, use nextafter if !real_less (&result, &value)
	rather than if real_less (&result, &value).  If result is +-INF
	while value is finite and -fno-rounding-math, don't do rounding
	if !inexact or if result is significantly above max representable
	value or below min representable value.

2022-12-07  Max Filippov  <jcmvbkbc@gmail.com>

	* config.gcc (xtensa*-*-*): Add xtensa-dynconfig.o to extra_objs.
	* config/xtensa/t-xtensa (TM_H): Add xtensa-dynconfig.h.
	(xtensa-dynconfig.o): New rule.
	* config/xtensa/xtensa-dynconfig.c: New file.
	* config/xtensa/xtensa-protos.h (xtensa_get_config_strings): New
	declaration.
	* config/xtensa/xtensa.h (xtensa-config.h): Replace #include
	with xtensa-dynconfig.h
	(XCHAL_HAVE_MUL32_HIGH, XCHAL_HAVE_RELEASE_SYNC)
	(XCHAL_HAVE_S32C1I, XCHAL_HAVE_THREADPTR)
	(XCHAL_HAVE_FP_POSTINC): Drop definitions.
	(TARGET_DIV32): Replace with __XCHAL_HAVE_DIV32.
	(TARGET_CPU_CPP_BUILTINS): Add new 'builtin' variable and loop
	through string array returned by the xtensa_get_config_strings
	function call.

2022-12-07  Wilco Dijkstra  <wilco.dijkstra@arm.com>

	PR target/108006
	* config/aarch64/aarch64.cc (aarch64_expand_sve_const_vector):
	Fix call to aarch64_move_imm to use SI/DI.

2022-12-07  Richard Biener  <rguenther@suse.de>

	PR ipa/105676
	* ipa-pure-const.cc (ipa_make_function_pure): Skip also
	for functions already being const.

2022-12-07  Hongyu Wang  <hongyu.wang@intel.com>

	* config/i386/x86-tune.def (X86_TUNE_AVOID_256FMA_CHAINS): Add
	m_SAPPHIRERAPIDS, m_ALDERLAKE and m_CORE_ATOM.

2022-12-07  Prathamesh Kulkarni  <prathamesh.kulkarni@linaro.org>

	PR target/107920
	* config/aarch64/aarch64-sve-builtins-base.cc: Use
	gsi_replace_with_seq_vops to handle virtual operands, and gate
	the transform on !flag_non_call_exceptions.
	* gimple-fold.cc (gsi_replace_with_seq_vops): Make function non static.
	* gimple-fold.h (gsi_replace_with_seq_vops): Declare.

2022-12-07  liuhongt  <hongtao.liu@intel.com>

	PR target/107970
	* config/i386/mmx.md (btruncv2sf2): Add TARGET_MMX_WITH_SSE to
	the condition.

2022-12-06  Wilco Dijkstra  <wilco.dijkstra@arm.com>

	* config/aarch64/aarch64.cc (aarch64_bitmask_imm): Use unsigned type.
	(aarch64_is_mov_xn_imm): New function.
	(aarch64_move_imm): Refactor, assert mode is SImode or DImode.
	(aarch64_internal_mov_immediate): Assert mode is SImode or DImode.
	Simplify special cases.
	(aarch64_uimm12_shift): Simplify code.
	(aarch64_clamp_to_uimm12_shift): Likewise.
	(aarch64_movw_imm): Rename to aarch64_is_movz.
	(aarch64_float_const_rtx_p): Pass either SImode or DImode to
	aarch64_internal_mov_immediate.
	(aarch64_rtx_costs): Likewise.
	* config/aarch64/aarch64.md (movdi_aarch64): Merge 'N' and 'M'
	constraints into single 'O'.
	(mov<mode>_aarch64): Likewise.
	* config/aarch64/aarch64-protos.h (aarch64_move_imm): Use unsigned.
	(aarch64_bitmask_imm): Likewise.
	(aarch64_uimm12_shift): Likewise.
	(aarch64_is_mov_xn_imm): New prototype.
	* config/aarch64/constraints.md: Add 'O' for 32/64-bit immediates,
	limit 'N' to 64-bit only moves.

2022-12-06  Qing Zhao  <qing.zhao@oracle.com>

	* attribs.cc (strict_flex_array_level_of): New function.
	* attribs.h (strict_flex_array_level_of): Prototype for new function.
	* doc/invoke.texi: Update -Warray-bounds by specifying the impact from
	-fstrict-flex-arrays. Also update -Warray-bounds=2 by eliminating its
	impact on treating trailing arrays as flexible array members.
	* gimple-array-bounds.cc (get_up_bounds_for_array_ref): New function.
	(check_out_of_bounds_and_warn): New function.
	(array_bounds_checker::check_array_ref): Update with call to the above
	new functions.
	* tree.cc (array_ref_flexible_size_p): Add one new argument.
	(component_ref_sam_type): New function.
	(component_ref_size): Control with level of strict-flex-array.
	* tree.h (array_ref_flexible_size_p): Update prototype.
	(enum struct special_array_member): Add two new enum values.
	(component_ref_sam_type): New prototype.

2022-12-06  David Malcolm  <dmalcolm@redhat.com>

	* doc/analyzer.texi: Drop out-of-date ideas for other checkers.

2022-12-06  David Malcolm  <dmalcolm@redhat.com>

	* Makefile.in (ANALYZER_OBJS): Add analyzer/call-details.o,
	analyzer/kf-analyzer.o, and kf-lang-cp.o.

2022-12-06  Marcel Vollweiler  <marcel@codesourcery.com>

	* gimplify.cc (optimize_target_teams): Set initial num_teams_upper
	to "-2" instead of "1" for non-existing num_teams clause in order to
	disambiguate from the case of an existing num_teams clause with value 1.

2022-12-06  Andre Vieira  <andre.simoesdiasvieira@arm.com>

	PR target/107987
	* config/arm/mve.md (mve_vcmp<mve_cmp_op>q_n_<mode>,
	@mve_vcmp<mve_cmp_op>q_n_f<mode>): Apply vec_duplicate to scalar
	operand.

2022-12-06  Jakub Jelinek  <jakub@redhat.com>

	PR target/107969
	* config/i386/i386.md (cbranchbf4, cstorebf4): Guard expanders
	with the same condition as cbranchsf4 or cstoresf4 expanders.

2022-12-06  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/104475
	* pointer-query.h (access_ref::ref_nullptr_p): New flag.
	* pointer-query.cc (access_ref::access_ref): Initialize
	ref_nullptr_p.
	(compute_objsize_r): Set ref_nullptr_p if we treat it that way.
	(access_ref::inform_access): If ref was treated as nullptr
	based, indicate that.

2022-12-06  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/107972
	* range-op-float.cc (frange_drop_infs): New function.
	(float_binary_op_range_finish): Add DIV_OP2 argument.  If DIV_OP2 is
	false and lhs is finite or if DIV_OP2 is true and lhs is non-zero and
	not NAN, r must be finite too.
	(foperator_div::op2_range): Pass true to DIV_OP2 of
	float_binary_op_range_finish.

2022-12-06  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/107975
	* range-op-float.cc (foperator_mult::op1_range,
	foperator_div::op1_range, foperator_div::op2_range): Just
	return float_binary_op_range_finish result if lhs is known
	NAN, or the other operand is known NAN or UNDEFINED.

2022-12-06  Prathamesh Kulkarni  <prathamesh.kulkarni@linaro.org>

	* config/aarch64/aarch64.cc (aarch64_expand_vector_init): Use dup
	and zip1 for interleaving elements in vector initializer.

2022-12-05  Richard Biener  <rguenther@suse.de>

	PR middle-end/40635
	* tree-into-ssa.cc (rewrite_update_phi_arguments): Only
	update the argument when the reaching definition is different
	from the current argument.  Keep an existing argument
	location.

2022-12-05  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106868
	* gimple-ssa-warn-access.cc (pass_waccess::gimple_call_return_arg_ref):
	Inline into single user ...
	(pass_waccess::check_dangling_uses): ... here and adjust the
	call and the PHI case to require that ref.aref is the address
	of the decl.

2022-12-05  Jakub Jelinek  <jakub@redhat.com>

	PR middle-end/106805
	* match.pd (cmp @0 REAL_CST@1): Don't optimize x cmp NaN
	or NaN cmp x to false/true for cmp >/>=/</<= if -ftrapping-math.

2022-12-05  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/107879
	* range-op-float.cc (foperator_mult::op1_range): If both
	lhs and op2 ranges contain zero or both ranges contain
	some infinity, set r range to zero_to_inf_range depending on
	signbit_known_p.
	(foperator_div::op2_range): Similarly for lhs and op1 ranges.
	(foperator_div::op1_range): If lhs range contains zero and op2
	range contains some infinity or vice versa, set r range to
	zero_to_inf_range depending on signbit_known_p.
	(foperator_div::rv_fold): Fix up condition for returning known NAN.

2022-12-05  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/107833
	PR tree-optimization/107839
	* cfghooks.cc: Include tree.h.
	* tree-ssa-loop-im.cc (movement_possibility): Wrap and
	make stmts using any ssa_name_maybe_undef_p operand
	to preserve execution.
	(loop_invariant_motion_in_fun): Call mark_ssa_maybe_undefs
	to init maybe-undefined status.
	* tree-ssa-loop-ivopts.cc (ssa_name_maybe_undef_p,
	ssa_name_set_maybe_undef, ssa_name_any_use_dominates_bb_p,
	mark_ssa_maybe_undefs): Move ...
	* tree-ssa.cc: ... here.
	* tree-ssa.h (ssa_name_any_use_dominates_bb_p,
	mark_ssa_maybe_undefs): Declare.
	(ssa_name_maybe_undef_p, ssa_name_set_maybe_undef): Define.

2022-12-05  Andrew Pinski  <pinskia@gmail.com>

	PR tree-optimization/107956
	* tree-vect-patterns.cc (vect_recog_mask_conversion_pattern):
	Check for NULL LHS on masked loads.

2022-12-05  Kewen Lin  <linkw@linux.ibm.com>
	    Richard Sandiford   <richard.sandiford@arm.com>

	PR tree-optimization/107412
	* gimple-fold.cc (gimple_fold_partial_load_store_mem_ref): Use
	untruncated type for the length, and avoid to_constant and tree
	arithmetic for subtraction.

2022-12-02  Bernhard Reutner-Fischer  <rep.dot.nop@gmail.com>
	    Jason Merrill  <jason@redhat.com>

	* function.cc (init_function_start): Use DECL_RESULT location
	for -Waggregate-return warning.

2022-12-02  Andrew MacLeod  <amacleod@redhat.com>

	* fold-const.cc (fold_unary_loc): Check TREE_TYPE of node.
	(tree_invalid_nonnegative_warnv_p): Likewise.

2022-12-02  Jason Merrill  <jason@redhat.com>

	* gcc.cc (validate_switches): Reset suffix/starred on loop.

2022-12-02  Vladimir N. Makarov  <vmakarov@redhat.com>

	* lra-constraints.cc (curr_insn_transform): Check available hard
	regs for pseudo and its subreg to decide what to reload.

2022-12-02  liuhongt  <hongtao.liu@intel.com>

	* config/i386/i386-expand.cc
	(ix86_expand_fast_convert_bf_to_sf): Use extendbfsf2_1 for
	nonimmediate operand.

2022-12-02  Martin Liska  <mliska@suse.cz>

	* configure: Regenerate.

2022-12-02  Jakub Jelinek  <jakub@redhat.com>

	PR target/106577
	* config/i386/i386-expand.cc (ix86_vector_duplicate_value): Save/restore
	recog_data around recog_memoized calls.

2022-12-02  Michael Collison  <collison@rivosinc.com>

	* match.pd ((x & 0x1) == 0) ? y : z <op> y
	-> (-(typeof(y))(x & 0x1) & z) <op> y.

2022-12-02  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/107946
	* params.opt (-param=max-unswitch-depth=): New.
	* doc/invoke.texi (--param=max-unswitch-depth): Document.
	* tree-ssa-loop-unswitch.cc (init_loop_unswitch_info): Honor
	--param=max-unswitch-depth

2022-12-02  Eric Gallager  <egallager@gcc.gnu.org>

	PR bootstrap/59447
	* configure: Regenerate.
	* configure.ac: Document --with-dwarf2 flag as also
	applying to later DWARF standards.
	* doc/install.texi: Likewise.

2022-12-02  liuhongt  <hongtao.liu@intel.com>

	PR target/107934
	* config/i386/i386.md (extendbfsf2_1): Change type from
	sseishft to sseishft1.

2022-12-01  Alex Coplan  <alex.coplan@arm.com>

	* varasm.cc (assemble_variable): Fix type confusion bug when
	checking for ".vtable_map_vars" section.

2022-12-01  Ju-Zhe Zhong  <juzhe.zhong@rivai.ai>

	* config/riscv/riscv-v.cc (emit_pred_op): Adapt for mask mode.
	* config/riscv/vector.md: Remove Tail && make policy operand for mask mode mov.

2022-12-01  Ju-Zhe Zhong  <juzhe.zhong@rivai.ai>

	* config/riscv/riscv-protos.h (enum vlmul_type): New enum.
	(get_vlmul): New function.
	(get_ratio): Ditto.
	* config/riscv/riscv-v.cc (struct mode_vtype_group): New struct.
	(ENTRY): Adapt for attributes.
	(enum vlmul_type): New enum.
	(get_vlmul): New function.
	(get_ratio): New function.
	* config/riscv/riscv-vector-switch.def (ENTRY): Adapt for attributes.
	* config/riscv/riscv.cc (ENTRY): Ditto.
	* config/riscv/vector.md (false,true): Add attributes.

2022-12-01  Ju-Zhe Zhong  <juzhe.zhong@rivai.ai>

	* config/riscv/constraints.md (Wdm): New constraint.
	* config/riscv/predicates.md (direct_broadcast_operand): New predicate.
	* config/riscv/riscv-protos.h (RVV_VLMAX): New macro.
	(emit_pred_op): Refine function.
	* config/riscv/riscv-selftests.cc (run_const_vector_selftests): New function.
	(run_broadcast_selftests): Ditto.
	(BROADCAST_TEST): New tests.
	(riscv_run_selftests): More tests.
	* config/riscv/riscv-v.cc (emit_pred_move): Refine function.
	(emit_vlmax_vsetvl): Ditto.
	(emit_pred_op): Ditto.
	(expand_const_vector): New function.
	(legitimize_move): Add constant vector support.
	* config/riscv/riscv.cc (riscv_print_operand): New asm print rule for const vector.
	* config/riscv/riscv.h (X0_REGNUM): New macro.
	* config/riscv/vector-iterators.md: New attribute.
	* config/riscv/vector.md (vec_duplicate<mode>): New pattern.
	(@pred_broadcast<mode>): New pattern.

2022-12-01  Paul-Antoine Arras  <pa@codesourcery.com>

	* config/gcn/gcn-opts.h (TARGET_FIJI): -march=fiji.
	(TARGET_VEGA10): -march=gfx900.
	(TARGET_VEGA20): -march=gfx906.
	(TARGET_GFX908): -march=gfx908.
	(TARGET_GFX90a): -march=gfx90a.
	* config/gcn/gcn.h (TARGET_CPU_CPP_BUILTINS): Define a builtin that
	uniquely maps to '-march'.

2022-12-01  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/107937
	* gimple-predicate-analysis.h (predicate::is_true): New.
	(predicate::is_false): Likewise.
	(predicate::empty_val): Likewise.
	(uninit_analysis::uninit_analysis): Properly initialize
	def_preds.
	* gimple-predicate-analysis.cc (simplify_1b): Indicate
	whether the chain became empty.
	(predicate::simplify): Release emptied chain before removing it.
	(predicate::normalize): Replace temporary object with assertion.
	(uninit_analysis::is_use_guarded): Deal with predicates
	that simplify to true/false.

2022-12-01  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/107935
	* tree-ssa-sccvn.cc (visit_phi): Honor forced VARYING on
	backedges.

2022-12-01  Jakub Jelinek  <jakub@redhat.com>

	PR target/107627
	* config/i386/i386.md (*concat<mode><dwi>3_1, *concat<mode><dwi>3_2):
	For operands which are zero_extend arguments allow memory if
	output operand is a register.
	(*concat<mode><dwi>3_3, *concat<mode><dwi>3_4): Likewise.  If
	both input operands are memory, use early clobber on output operand.
	* config/i386/i386-expand.cc (split_double_concat): Deal with corner
	cases where one input is memory and the other is not and the address
	of the memory input uses a register we'd overwrite before loading
	the memory into a register.

2022-12-01  Haochen Gui  <guihaoc@gcc.gnu.org>

	* config/rs6000/rs6000-call.cc (swap_endian_selector_for_mode):
	Corrects comments of this function and make them clear.

2022-12-01  liuhongt  <hongtao.liu@intel.com>

	PR target/107863
	* config/i386/i386-expand.cc (ix86_expand_vec_set_builtin):
	Convert op1 to target mode whenever mode mismatch.

2022-12-01  David Malcolm  <dmalcolm@redhat.com>

	PR analyzer/106626
	* diagnostic-path.h
	(diagnostic_path::get_first_event_in_a_function): New decl.
	* diagnostic.cc (diagnostic_path::get_first_event_in_a_function):
	New.
	(diagnostic_path::interprocedural_p): Ignore leading events that
	are outside of any function.

2022-12-01  David Malcolm  <dmalcolm@redhat.com>

	* Makefile.in (ANALYZER_OBJS): Add analyzer/bounds-checking.o.

2022-12-01  Haochen Gui  <guihaoc@gcc.gnu.org>

	PR target/100866
	* config/rs6000/rs6000-call.cc (swap_endian_selector_for_mode):
	Generate permute index directly for little endian targets.
	* config/rs6000/vsx.md (revb_<mode>): Call vprem directly with
	corresponding permute indexes.

2022-11-30  John David Anglin  <danglin@gcc.gnu.org>

	* config/pa/pa.md (addvdi3): Force operand 2 to a register.
	Remove "addi,tsv,*" instruction from unamed pattern.
	(subvdi3): Force operand 1 to a register.
	Remove "subi,tsv" instruction from from unamed pattern.

2022-11-30  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* config/aarch64/aarch64.md (aarch64_cpymemdi): Specify clobber of CC reg.
	(*aarch64_cpymemdi): Likewise.
	(aarch64_movmemdi): Likewise.
	(aarch64_setmemdi): Likewise.
	(*aarch64_setmemdi): Likewise.

2022-11-30  Martin Liska  <mliska@suse.cz>

	* tree-switch-conversion.cc (bit_test_cluster::emit): Remove
	dead variable bt_range.

2022-11-30  Iskander Shakirzyanov  <iskander@ispras.ru>
	    Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>

	PR driver/107787
	* common.opt (Warray-bounds): Turn into alias of
	-Warray-bounds=1.
	* builtins.cc (c_strlen): Use OPT_Warray_bounds_
	instead of OPT_Warray_bounds.
	* diagnostic-spec.cc (nowarn_spec_t::nowarn_spec_t): Ditto.
	* gimple-array-bounds.cc (array_bounds_checker::check_array_ref,
	array_bounds_checker::check_mem_ref,
	array_bounds_checker::check_addr_expr,
	array_bounds_checker::check_array_bounds): Ditto.
	* gimple-ssa-warn-restrict.cc (maybe_diag_access_bounds): Ditto.

2022-11-30  Martin Liska  <mliska@suse.cz>

	PR tree-optimization/101301
	PR tree-optimization/103680
	* tree-switch-conversion.cc (bit_test_cluster::emit):
	Handle correctly remaining probability.
	(switch_decision_tree::try_switch_expansion): Fix BB's count
	where a cluster expansion happens.
	(switch_decision_tree::emit_cmp_and_jump_insns): Fill up also
	BB count.
	(switch_decision_tree::do_jump_if_equal): Likewise.
	(switch_decision_tree::emit_case_nodes): Handle special case
	for BT expansion which can also fallback to a default BB.
	* tree-switch-conversion.h (cluster::cluster): Add
	m_default_prob probability.

2022-11-30  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/107919
	* gimple-predicate-analysis.cc (simplify_1): Rename to ...
	(simplify_1a): .. this.
	(simplify_1b): New.
	(predicate::simplify): Call both simplify_1a and simplify_1b.

2022-11-30  Richard Biener  <rguenther@suse.de>

	* tree-ssa-uninit.cc (find_uninit_use): Dump the edge for a
	PHI node.

2022-11-30  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/107919
	* gimple-predicate-analysis.cc (predicate::simplify_2):
	Handle predicates of arbitrary length.

2022-11-30  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/107835
	* tree-chrec.cc (chrec_apply): Don't handle "{a, +, a} (x-1)"
	as "a*x" if type is a pointer type.

2022-11-30  Paul-Antoine Arras  <pa@codesourcery.com>

	* config/gcn/gcn.cc (gcn_omp_device_kind_arch_isa): Add gfx803.
	* config/gcn/t-omp-device: Add gfx803.

2022-11-30  Lulu Cheng  <chenglulu@loongson.cn>

	* config/loongarch/linux.h (STACK_CHECK_MOVING_SP):
	Define this macro to 1.
	* config/loongarch/loongarch.cc (STACK_CLASH_PROTECTION_GUARD_SIZE):
	Size of guard page.
	(loongarch_first_stack_step): Return the size of the first drop stack
	according to whether stack checking is performed.
	(loongarch_emit_probe_stack_range): Adjust the method of stack checking in prologue.
	(loongarch_output_probe_stack_range): Delete useless code.
	(loongarch_expand_prologue): Adjust the method of stack checking in prologue.
	(loongarch_option_override_internal): Enforce that interval is the same
	size as size so the mid-end does the right thing.
	* config/loongarch/loongarch.h (STACK_CLASH_MAX_UNROLL_PAGES):
	New macro decide whether to loop stack detection.

2022-11-30  David Malcolm  <dmalcolm@redhat.com>

	PR analyzer/103546
	* doc/invoke.texi (Static Analyzer Options): Add isatty, ferror,
	fileno, and getc to the list of functions known to the analyzer.

2022-11-29  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/107852
	* tree-ssa-sccvn.cc (visit_phi): Use equivalences recorded
	as predicated values to elide more redundant PHIs.

2022-11-29  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106995
	* tree-if-conv.cc (pass_if_conversion::execute): Also redirect the
	versioning condition to the original loop if this very loop
	vanished during CFG cleanup.

2022-11-29  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/107898
	* gimple-ssa-warn-alloca.cc (alloca_call_type): Check
	the type of the alloca argument is compatible with size_t
	before querying ranges.

2022-11-29  Richard Biener  <rguenther@suse.de>

	PR ipa/107897
	* multiple_target.cc (pass_target_clone::gate): Disable
	after errors.

2022-11-29  Martin Liska  <mliska@suse.cz>

	* configure: Regenerate.

2022-11-29  YunQiang Su  <yunqiang.su@cipunited.com>

	* configure.ac: add description for
	AC_DEFINE(ENABLE_MULTIARCH, 1)

2022-11-28  Andrew Pinski  <apinski@marvell.com>

	* match.pd ((A / (1 << B)) -> (A >> B).):
	Fix comment.

2022-11-28  Sinan  <sinan.lin@linux.alibaba.com>

	* config/riscv/riscv.cc (riscv_build_integer): Improve some cases
	of loading 64bit constants for rv32.

2022-11-28  Maciej W. Rozycki  <macro@embecosm.com>

	* config/riscv/riscv.cc (riscv_emit_int_order_test): Use EQ 0
	rather that XOR 1 for LE and LEU operations.

2022-11-28  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/107896
	* tree-vect-stmts.cc (supportable_widening_operation):
	Handle non-vector mode intermediate mode.

2022-11-28  Frolov Daniil  <frolov.da@phystech.edu>

	* gimple-ssa-sprintf.cc (fmtresult::type_max_digits): Handle
	base == 2.
	(tree_digits): Likewise.
	(format_integer): Likewise.
	(parse_directive): Add cases for %b and %B directives.

2022-11-28  Fei Gao  <gaofei@eswincomputing.com>

	* config/riscv/riscv.cc (riscv_first_stack_step): Fix computation
	of MIN_FIRST_STEP to cover FP save area too.

2022-11-28  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/107493
	* tree-scalar-evolution.cc (scev_dfs::follow_ssa_edge_expr):
	Only handle no-op and sign-changing conversions.

2022-11-28  Tobias Burnus  <tobias@codesourcery.com>

	* config/gcn/gcn.cc (gcn_expand_builtin_1): Work on s1 instead
	of s[0:1] and use USE to prevent removal of setting that register.
	* config/gcn/gcn.md (prologue_use_di): Remove.

2022-11-28  Yuri Gribov  <y.gribov@samsung.com>

	PR sanitizer/106558
	* sanopt.cc: Do not optimize out checks for non-SSA addresses.

2022-11-28  Jakub Jelinek  <jakub@redhat.com>

	PR target/106875
	* config/i386/i386.opt (x_ix86_abi): Remove TargetSave.
	(ix86_abi): Replace it with TargetVariable.
	* config/i386/i386-options.cc (ix86_function_specific_save,
	ix86_function_specific_restore): Don't save and restore x_ix86_abi.

2022-11-28  Andrea Corallo  <andrea.corallo@arm.com>

	* config/arm/mve.md (mve_vrmlaldavhq_<supf>v4si,
	mve_vrmlaldavhaq_<supf>v4si): Fix spacing vs tabs.

2022-11-28  Andrea Corallo  <andrea.corallo@arm.com>

	* config/arm/mve.md (mve_vmlaldavaq_<supf><mode>)
	(mve_vmlaldavaxq_s<mode>, mve_vmlaldavaxq_p_<supf><mode>): Fix
	spacing vs tabs.

2022-11-28  Andrea Corallo  <andrea.corallo@arm.com>

	* config/arm/mve.md (mve_vsubq_n_f<mode>): Fix spacing.

2022-11-28  Andrea Corallo  <andrea.corallo@arm.com>

	* config/arm/mve.md (mve_vaddlvq_p_<supf>v4si)
	(mve_vaddq_n_<supf><mode>, mve_vaddvaq_<supf><mode>)
	(mve_vaddlvaq_<supf>v4si, mve_vaddq_n_f<mode>)
	(mve_vaddlvaq_p_<supf>v4si, mve_vaddq<mode>, mve_vaddq_f<mode>):
	Fix spacing.

2022-11-28  Stam Markianos-Wright  <stam.markianos-wright@arm.com>

	* config/arm/arm_mve.h (__arm_vsubq_x FP): New overloads.
	(__arm_vsubq_x Integer): New.

2022-11-28  Stam Markianos-Wright  <stam.markianos-wright@arm.com>

	PR target/107515
	* config/arm/arm_mve.h (__ARM_mve_typeid): Add float types.

2022-11-28  Stam Markianos-Wright  <stam.markianos-wright@arm.com>

	PR target/96795
	* config/arm/arm_mve.h (__arm_vaddq): Fix Overloading.
	(__arm_vmulq): Likewise.
	(__arm_vcmpeqq): Likewise.
	(__arm_vcmpneq): Likewise.
	(__arm_vmaxnmavq): Likewise.
	(__arm_vmaxnmvq): Likewise.
	(__arm_vminnmavq): Likewise.
	(__arm_vsubq): Likewise.
	(__arm_vminnmvq): Likewise.
	(__arm_vrshlq): Likewise.
	(__arm_vqsubq): Likewise.
	(__arm_vqdmulltq): Likewise.
	(__arm_vqdmullbq): Likewise.
	(__arm_vqdmulhq): Likewise.
	(__arm_vqaddq): Likewise.
	(__arm_vhaddq): Likewise.
	(__arm_vhsubq): Likewise.
	(__arm_vqdmlashq): Likewise.
	(__arm_vqrdmlahq): Likewise.
	(__arm_vmlasq): Likewise.
	(__arm_vqdmlahq): Likewise.
	(__arm_vmaxnmavq_p): Likewise.
	(__arm_vmaxnmvq_p): Likewise.
	(__arm_vminnmavq_p): Likewise.
	(__arm_vminnmvq_p): Likewise.
	(__arm_vfmasq_m): Likewise.
	(__arm_vsetq_lane): Likewise.
	(__arm_vcmpneq_m): Likewise.
	(__arm_vhaddq_x): Likewise.
	(__arm_vhsubq_x): Likewise.
	(__arm_vqrdmlashq_m): Likewise.
	(__arm_vqdmlashq_m): Likewise.
	(__arm_vmlaldavaxq_p): Likewise.
	(__arm_vmlasq_m): Likewise.
	(__arm_vqdmulhq_m): Likewise.
	(__arm_vqdmulltq_m): Likewise.
	(__arm_viwdupq_m): Likewise.
	(__arm_viwdupq_u16): Likewise.
	(__arm_viwdupq_u32): Likewise.
	(__arm_viwdupq_u8): Likewise.
	(__arm_vdwdupq_m): Likewise.
	(__arm_vdwdupq_u16): Likewise.
	(__arm_vdwdupq_u32): Likewise.
	(__arm_vdwdupq_u8): Likewise.
	(__arm_vaddlvaq): Likewise.
	(__arm_vaddlvaq_p): Likewise.
	(__arm_vaddvaq): Likewise.
	(__arm_vaddvaq_p): Likewise.
	(__arm_vcmphiq_m): Likewise.
	(__arm_vmladavaq_p): Likewise.
	(__arm_vmladavaxq): Likewise.
	(__arm_vmlaldavaxq): Likewise.
	(__arm_vrmlaldavhaq_p): Likewise.

2022-11-28  Stam Markianos-Wright  <stam.markianos-wright@arm.com>

	PR target/96795
	* config/arm/arm_mve.h (__arm_vaddq_m_n_s8): Change types.
	(__arm_vaddq_m_n_s32): Likewise.
	(__arm_vaddq_m_n_s16): Likewise.
	(__arm_vaddq_m_n_u8): Likewise.
	(__arm_vaddq_m_n_u32): Likewise.
	(__arm_vaddq_m_n_u16): Likewise.
	(__arm_vaddq_m): Fix Overloading.
	(__ARM_mve_coerce3): New.

2022-11-28  Andrea Corallo  <andrea.corallo@arm.com>

	* config/arm/mve.md (mve_vabsq_f<mode>): Fix spacing.

2022-11-28  Andrea Corallo  <andrea.corallo@arm.com>

	* config/arm/mve.md (@mve_vcmp<mve_cmp_op>q_<mode>): Fix
	spacing.
	* config/arm/arm_mve.h (__arm_vcmpgtq_m, __arm_vcmpleq_m)
	(__arm_vcmpltq_m, __arm_vcmpneq_m): Add missing defines.

2022-11-28  Andrea Corallo  <andrea.corallo@arm.com>

	* config/arm/mve.md (mve_vdupq_n_f<mode>)
	(mve_vdupq_n_<supf><mode>, mve_vdupq_m_n_<supf><mode>)
	(mve_vdupq_m_n_f<mode>): Fix spacing.

2022-11-28  Andrea Corallo  <andrea.corallo@arm.com>

	* config/arm/mve.md (mve_vdwdupq_m_wb_u<mode>_insn): Fix spacing.

2022-11-28  Andrea Corallo  <andrea.corallo@arm.com>

	* config/arm/mve.md (mve_vddupq_u<mode>_insn): Fix 'vddup.u'
	spacing.
	(mve_vddupq_m_wb_u<mode>_insn): Likewise.

2022-11-28  Andrea Corallo  <andrea.corallo@arm.com>

	* config/arm/vfp.md (*thumb2_movhi_vfp, *thumb2_movhi_fp16): Fix
	'vmsr' spacing and reg capitalization.

2022-11-28  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/107876
	* tree-ssa-loop-unswitch.cc (clean_up_after_unswitching): Wipe
	dominator info if we removed an edge.

2022-11-28  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/107867
	* tree-ssa-forwprop.cc (pass_forwprop::execute): Handle
	abnormal cleanup after substitution.

2022-11-28  Lulu Cheng  <chenglulu@loongson.cn>

	* config/loongarch/loongarch.cc (enum loongarch_load_imm_method):
	Remove the member METHOD_INSV that is not currently used.
	(struct loongarch_integer_op): Define a new member curr_value,
	that records the value of the number stored in the destination
	register immediately after the current instruction has run.
	(loongarch_build_integer): Assign a value to the curr_value member variable.
	(loongarch_move_integer): Adds information for the immediate load instruction.
	* config/loongarch/loongarch.md (*movdi_32bit): Redefine as define_insn_and_split.
	(*movdi_64bit): Likewise.
	(*movsi_internal): Likewise.
	(*movhi_internal): Likewise.
	* config/loongarch/predicates.md: Return true as long as it is CONST_INT, ensure
	that the immediate number is not optimized by decomposition during expand
	optimization loop.

2022-11-28  liuhongt  <hongtao.liu@intel.com>

	PR target/107748
	* config/i386/avx512bf16intrin.h (_mm_cvtsbh_ss): Refined.
	* config/i386/i386-builtin-types.def (FLOAT_FTYPE_BFLOAT16):
	New function type.
	* config/i386/i386-builtin.def (BDESC): New builtin.
	* config/i386/i386-expand.cc (ix86_expand_args_builtin):
	Handle the builtin.
	* config/i386/i386.md (extendbfsf2): New expander.
	(extendbfsf2_1): New define_insn.
	(truncsfbf2): Ditto.

2022-11-26  Andrew Pinski  <apinski@marvell.com>

	PR tree-optimization/103356
	* match.pd: ((~a) == b -> a ^ b): New pattern.

2022-11-25  Sandra Loosemore  <sandra@codesourcery.com>

	* common.opt (fopenmp-target-simd-clone): New option.
	(target_simd_clone_device): New enum to go with it.
	* doc/invoke.texi (-fopenmp-target-simd-clone): Document.
	* flag-types.h (enum omp_target_simd_clone_device_kind): New.
	* omp-simd-clone.cc (auto_simd_fail): New function.
	(auto_simd_check_stmt): New function.
	(plausible_type_for_simd_clone): New function.
	(ok_for_auto_simd_clone): New function.
	(simd_clone_create): Add force_local argument, make the symbol
	have internal linkage if it is true.
	(expand_simd_clones): Also check for cloneable functions with
	"omp declare target".  Pass explicit_p argument to
	simd_clone.compute_vecsize_and_simdlen target hook.
	* opts.cc (default_options_table): Add -fopenmp-target-simd-clone.
	* target.def (TARGET_SIMD_CLONE_COMPUTE_VECSIZE_AND_SIMDLEN):
	Add bool explicit_p argument.
	* doc/tm.texi: Regenerated.
	* config/aarch64/aarch64.cc
	(aarch64_simd_clone_compute_vecsize_and_simdlen): Update.
	* config/gcn/gcn.cc
	(gcn_simd_clone_compute_vecsize_and_simdlen): Update.
	* config/i386/i386.cc
	(ix86_simd_clone_compute_vecsize_and_simdlen): Update.

2022-11-25  Tamar Christina  <tamar.christina@arm.com>

	PR target/107830
	* config/aarch64/aarch64.cc
	(aarch64_vectorize_can_special_div_by_constant): Check validity during
	codegen phase as well.

2022-11-25  Eric Botcazou  <ebotcazou@adacore.com>

	* range-op.cc (operator_bitwise_xor::op1_range): Fix thinko.

2022-11-25  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/107865
	* tree-cfg.cc (move_sese_region_to_fn): Free the number of
	iterations of moved loops.

2022-11-25  Kewen.Lin  <linkw@gcc.gnu.org>

	PR target/99889
	* config/rs6000/rs6000.cc (rs6000_print_patchable_function_entry):
	Adjust to call function default_print_patchable_function_entry.
	* targhooks.cc (default_print_patchable_function_entry_1): Remove and
	move the flags preparation ...
	(default_print_patchable_function_entry): ... here, adjust to use
	current_function_funcdef_no for label no.
	* targhooks.h (default_print_patchable_function_entry_1): Remove.
	* varasm.cc (default_elf_asm_named_section): Adjust code for
	__patchable_function_entries section support with LPFE label.

2022-11-24  Wilco Dijkstra  <wilco.dijkstra@arm.com>

	PR tree-optimization/107413
	* config/aarch64/aarch64.cc (struct tune_params): Add
	fma_reassoc_width to all CPU tuning structures.
	(aarch64_reassociation_width): Use fma_reassoc_width.
	* config/aarch64/aarch64-protos.h (struct tune_params): Add
	fma_reassoc_width.

2022-11-24  Jakub Jelinek  <jakub@redhat.com>

	PR middle-end/107317
	* asan.cc: Include diagnostic-core.h.
	(asan_emit_stack_protection): Return NULL early if seen_error ().

2022-11-24  Aldy Hernandez  <aldyh@redhat.com>

	* vr-values.cc (simplify_using_ranges::compare_names): Remove.
	(vrp_evaluate_conditional_warnv_with_ops): Remove call to
	compare_names.
	(simplify_using_ranges::vrp_visit_cond_stmt): Remove use_equiv_p
	argument to vrp_evaluate_conditional_warnv_with_ops.
	* vr-values.h (class simplify_using_ranges): Remove
	compare_names.
	Remove use_equiv_p to vrp_evaluate_conditional_warnv_with_ops.

2022-11-24  Aldy Hernandez  <aldyh@redhat.com>

	* tree-vrp.cc (overflow_comparison_p_1): Remove follow_assert_exprs.
	(overflow_comparison_p): Remove use_equiv_p.
	* tree-vrp.h (overflow_comparison_p): Same.
	* vr-values.cc (vrp_evaluate_conditional_warnv_with_ops): Remove
	use_equiv_p argument to overflow_comparison_p.

2022-11-24  Aldy Hernandez  <aldyh@redhat.com>

	* doc/gimple.texi: Remove ASSERT_EXPR references.
	* fold-const.cc (tree_expr_nonzero_warnv_p): Same.
	(fold_binary_loc): Same.
	(tree_expr_nonnegative_warnv_p): Same.
	* gimple-array-bounds.cc (get_base_decl): Same.
	* gimple-pretty-print.cc (dump_unary_rhs): Same.
	* gimple.cc (get_gimple_rhs_num_ops): Same.
	* pointer-query.cc (handle_ssa_name): Same.
	* tree-cfg.cc (verify_gimple_assign_single): Same.
	* tree-pretty-print.cc (dump_generic_node): Same.
	* tree-scalar-evolution.cc (scev_dfs::follow_ssa_edge_expr):Same.
	(interpret_rhs_expr): Same.
	* tree-ssa-operands.cc (operands_scanner::get_expr_operands): Same.
	* tree-ssa-propagate.cc
	(substitute_and_fold_dom_walker::before_dom_children): Same.
	* tree-ssa-threadedge.cc: Same.
	* tree-vrp.cc (overflow_comparison_p): Same.
	* tree.def (ASSERT_EXPR): Add note.
	* tree.h (ASSERT_EXPR_VAR): Remove.
	(ASSERT_EXPR_COND): Remove.
	* vr-values.cc (simplify_using_ranges::vrp_visit_cond_stmt):
	Remove comment.

2022-11-24  Aldy Hernandez  <aldyh@redhat.com>

	* Makefile.in: Remove value-range-equiv.o
	* gimple-array-bounds.cc
	(array_bounds_checker::array_bounds_checker): Remove comment.
	* tree-vrp.cc (supported_types_p): Remove use of value_range_equiv.
	* value-query.cc (class equiv_allocator): Same.
	(range_query::allocate_value_range_equiv): Remove.
	(range_query::free_value_range_equiv): Remove.
	(range_query::get_value_range): Remove.
	* value-query.h (class range_query): Remove get_value_range.
	Remove allocate_value_range_equiv.
	Remove free_value_range_equiv.
	* vr-values.cc (compare_ranges): Replace value_range_equiv with
	value_range.
	(simplify_using_ranges::get_vr_for_comparison): Same.
	(simplify_using_ranges::compare_names): Same.
	* vr-values.h: Remove value_range_equiv references.
	* value-range-equiv.cc: Removed.
	* value-range-equiv.h: Removed.

2022-11-24  Aldy Hernandez  <aldyh@redhat.com>

	* doc/invoke.texi: Remove docs for max-vrp-switch-assertions,
	vrp1-mode, and vrp2-mode.
	* params.opt: Same.
	* range-op.cc (masked_increment): Move from tree-vrp.cc.
	* tree-vrp.cc (class live_names): Remove.
	(live_names::init_bitmap_if_needed): Remove.
	(live_names::block_has_live_names_p): Remove.
	(live_names::clear_block): Remove.
	(live_names::merge): Remove.
	(live_names::set): Remove.
	(live_names::clear): Remove.
	(live_names::live_names): Remove.
	(live_names::~live_names): Remove.
	(live_names::live_on_block_p): Remove.
	(live_names::live_on_edge_p): Remove.
	(get_single_symbol): Make static.
	(build_symbolic_expr): Remove.
	(adjust_symbolic_bound): Remove.
	(combine_bound): Remove.
	(set_value_range_with_overflow): Remove.
	(extract_range_from_pointer_plus_expr): Remove.
	(extract_range_from_plus_minus_expr): Remove.
	(drop_undefines_to_varying): Remove.
	(range_fold_binary_symbolics_p): Remove.
	(range_fold_unary_symbolics_p): Remove.
	(range_fold_binary_expr): Remove.
	(infer_value_range): Remove.
	(dump_assert_info): Remove.
	(dump_asserts_info): Remove.
	(add_assert_info): Remove.
	(extract_code_and_val_from_cond_with_ops): Remove.
	(masked_increment): Move to range-op.cc.
	(register_edge_assert_for_2): Remove.
	(find_case_label_index): Remove.
	(find_case_label_range): Remove.
	(register_edge_assert_for_1): Remove.
	(is_masked_range_test): Remove.
	(register_edge_assert_for): Remove.
	(stmt_interesting_for_vrp): Remove.
	(struct case_info): Remove.
	(struct assert_locus): Remove.
	(class vrp_asserts): Remove.
	(vrp_asserts::build_assert_expr_for): Remove.
	(vrp_asserts::dump): Remove.
	(vrp_asserts::register_new_assert_for): Remove.
	(vrp_asserts::finish_register_edge_assert_for): Remove.
	(vrp_asserts::find_conditional_asserts): Remove.
	(vrp_asserts::compare_case_labels): Remove.
	(vrp_asserts::find_switch_asserts): Remove.
	(vrp_asserts::find_assert_locations_in_bb): Remove.
	(vrp_asserts::find_assert_locations): Remove.
	(vrp_asserts::process_assert_insertions_for): Remove.
	(vrp_asserts::compare_assert_loc): Remove.
	(vrp_asserts::process_assert_insertions): Remove.
	(vrp_asserts::insert_range_assertions): Remove.
	(vrp_asserts::all_imm_uses_in_stmt_or_feed_cond): Remove.
	(vrp_asserts::remove_range_assertions): Remove.
	(class vrp_prop): Remove.
	(vrp_prop::initialize): Remove.
	(enum ssa_prop_result): Remove.
	(vrp_prop::visit_stmt): Remove.
	(vrp_prop::visit_phi): Remove.
	(vrp_prop::finalize): Remove.
	(class vrp_folder): Remove.
	(vrp_folder::fold_predicate_in): Remove.
	(vrp_folder::fold_stmt): Remove.
	(vrp_folder::simplify_casted_conds): Remove.
	(execute_vrp): Remove.
	* tree-vrp.h (struct assert_info): Remove.
	(register_edge_assert_for): Remove.
	(stmt_interesting_for_vrp): Remove.
	(infer_value_range): Remove.
	(get_single_symbol): Remove.
	(masked_increment): Remove.
	(execute_ranger_vrp): Remove.
	* vr-values.cc (set_value_range_to_nonnegative): Remove.
	(set_value_range_to_truthvalue): Remove.
	(vr_values::get_lattice_entry): Remove.
	(vr_values::get_value_range): Remove.
	(vr_values::range_of_expr): Remove.
	(vr_values::value_of_expr): Remove.
	(vr_values::value_on_edge): Remove.
	(vr_values::value_of_stmt): Remove.
	(vr_values::set_def_to_varying): Remove.
	(vr_values::set_defs_to_varying): Remove.
	(vr_values::update_value_range): Remove.
	(symbolic_range_based_on_p): Remove.
	(gimple_assign_nonzero_p): Remove.
	(gimple_stmt_nonzero_p): Remove.
	(vr_values::vrp_stmt_computes_nonzero): Remove.
	(vr_values::op_with_constant_singleton_value_range): Remove.
	(vr_values::extract_range_for_var_from_comparison_expr): Remove.
	(vr_values::extract_range_from_assert): Remove.
	(vr_values::extract_range_from_ssa_name): Remove.
	(vr_values::extract_range_from_binary_expr): Remove.
	(vr_values::extract_range_from_unary_expr): Remove.
	(vr_values::extract_range_from_cond_expr): Remove.
	(vr_values::extract_range_from_comparison): Remove.
	(vr_values::extract_range_from_ubsan_builtin): Remove.
	(vr_values::extract_range_basic): Remove.
	(vr_values::extract_range_from_assignment): Remove.
	(vr_values::adjust_range_with_scev): Remove.
	(vr_values::dump): Remove.
	(vr_values::vr_values): Remove.
	(vr_values::~vr_values): Remove.
	(vrp_valueize): Remove.
	(vrp_valueize_1): Remove.
	(get_output_for_vrp): Remove.
	(vr_values::vrp_visit_assignment_or_call): Remove.
	(simplify_using_ranges::vrp_evaluate_conditional): Remove.
	(vr_values::vrp_visit_switch_stmt): Remove.
	(vr_values::extract_range_from_stmt): Remove.
	(vr_values::extract_range_from_phi_node): Remove.
	(simplify_using_ranges::fold_cond): Add FIXME note.
	(vr_values::set_vr_value): Remove.
	(vr_values::swap_vr_value): Remove.
	* vr-values.h (class vr_values): Remove.
	(get_output_for_vrp): Remove.

2022-11-24  Hongyu Wang  <hongyu.wang@intel.com>

	PR target/107692
	* common/config/i386/i386-common.cc (ix86_optimization_table):
	Enable loop unroll O2, disable -fweb and -frename-registers
	by default.
	* config/i386/i386-options.cc
	(ix86_override_options_after_change):
	Disable small loop unroll when funroll-loops enabled, reset
	cunroll_grow_size when it is not explicitly enabled.
	(ix86_option_override_internal): Call
	ix86_override_options_after_change instead of calling
	ix86_recompute_optlev_based_flags and ix86_default_align
	separately.
	* config/i386/i386.cc (ix86_loop_unroll_adjust): Adjust unroll
	factor if -munroll-only-small-loops enabled.
	* loop-init.cc (pass_rtl_unroll_loops::gate): Do not enable
	loop unrolling for -O2-speed.
	(pass_rtl_unroll_loops::execute): Rmove
	targetm.loop_unroll_adjust check.

2022-11-23  Ramana Radhakrishnan  <ramana.gcc@gmail.com>

	* config/arm/types.md: Update comment.
	(is_neon_type): Add neon_fcmla, neon_fcadd.

2022-11-23  Jonathan Wakely  <jwakely@redhat.com>

	* doc/invoke.texi (C++ Dialect Options): Recommend using
	-Wdelete-non-virtual-dtor instead of -Wnon-virtual-dtor.

2022-11-23  Jakub Jelinek  <jakub@redhat.com>

	PR bootstrap/107722
	* diagnostic.cc (test_diagnostic_get_location_text): Test
	special_fname_builtin () rather than "<built-in>" and expect
	special_fname_builtin () concatenated with ":" for it.

2022-11-23  Martin Liska  <mliska@suse.cz>

	* Makefile.in: Set DO_LINK_MUTEX.

2022-11-23  Lulu Cheng  <chenglulu@loongson.cn>
	    xujiahao  <xujiahao@loongson.cn>

	* config/loongarch/constraints.md (ZD): New constraint.
	* config/loongarch/loongarch-def.c: Initial number of parallel prefetch.
	* config/loongarch/loongarch-tune.h (struct loongarch_cache):
	Define number of parallel prefetch.
	* config/loongarch/loongarch.cc (loongarch_option_override_internal):
	Set up parameters to be used in prefetching algorithm.
	* config/loongarch/loongarch.md (prefetch): New template.

2022-11-23  Marek Polacek  <polacek@redhat.com>

	Revert:
	2022-11-23  Marek Polacek  <polacek@redhat.com>

	* Makefile.in: Set LD_PICFLAG.  Use it.  Set enable_host_pie.
	Remove NO_PIE_CFLAGS and NO_PIE_FLAG.  Pass LD_PICFLAG to
	ALL_LINKERFLAGS.  Use the "pic" build of libiberty if --enable-host-pie.
	* configure.ac (--enable-host-shared): Don't set PICFLAG here.
	(--enable-host-pie): New check.  Set PICFLAG and LD_PICFLAG after this
	check.
	* configure: Regenerate.
	* doc/install.texi: Document --enable-host-pie.

2022-11-23  Marek Polacek  <polacek@redhat.com>

	Revert:
	2022-11-23  Marek Polacek  <polacek@redhat.com>

	* configure.ac (--enable-host-bind-now): New check.  Add
	-Wl,-z,now to LD_PICFLAG if --enable-host-bind-now.
	* configure: Regenerate.
	* doc/install.texi: Document --enable-host-bind-now.

2022-11-23  Marek Polacek  <polacek@redhat.com>

	* configure.ac (--enable-host-bind-now): New check.  Add
	-Wl,-z,now to LD_PICFLAG if --enable-host-bind-now.
	* configure: Regenerate.
	* doc/install.texi: Document --enable-host-bind-now.

2022-11-23  Marek Polacek  <polacek@redhat.com>

	* Makefile.in: Set LD_PICFLAG.  Use it.  Set enable_host_pie.
	Remove NO_PIE_CFLAGS and NO_PIE_FLAG.  Pass LD_PICFLAG to
	ALL_LINKERFLAGS.  Use the "pic" build of libiberty if --enable-host-pie.
	* configure.ac (--enable-host-shared): Don't set PICFLAG here.
	(--enable-host-pie): New check.  Set PICFLAG and LD_PICFLAG after this
	check.
	* configure: Regenerate.
	* doc/install.texi: Document --enable-host-pie.

2022-11-22  Jeff Law  <jlaw@ventanamicro.com>

	* tree-ssa-dom.cc (record_edge_info): Fix thinko in last commit.

2022-11-22  Jeff Law  <jlaw@ventanamicro.com>

	* tree-ssa-dom.cc (record_edge_info): Fix comment typos.

2022-11-22  Jeff Law  <jeffreyalaw@gmail.com>

	* config/riscv/riscv.cc (riscv_get_separate_components): Do not
	do shrink-wrapping for a frame with a variable size.

2022-11-22  Siddhesh Poyarekar  <siddhesh@gotplt.org>

	* tree-object-size.cc (todo): New variable.
	(object_sizes_execute): Use it.
	(strdup_object_size): New function.
	(call_object_size): Use it.

2022-11-22  Eric Botcazou  <ebotcazou@adacore.com>

	* tree-loop-distribution.cc (loop_distribution::classify_builtin_ldst):
	Bail out if source and destination do not have the same storage order.

2022-11-22  Martin Jambor  <mjambor@suse.cz>

	* ipa-sra.cc (ipa_sra_dump_all_summaries): Dump edge summaries even
	for non-candidates.

2022-11-22  Martin Jambor  <mjambor@suse.cz>

	* ipa-cp.cc (push_agg_values_from_edge): Do not consider constants
	in unused aggregate parameters.

2022-11-22  Martin Jambor  <mjambor@suse.cz>

	* ipa-param-manipulation.h (ipa_param_body_adjustments): Removed
	member m_split_modifications_p.
	* ipa-param-manipulation.cc
	(ipa_param_body_adjustments::common_initialization): Do not set
	m_split_modifications_p.
	(ipa_param_body_adjustments::ipa_param_body_adjustments): Remove
	initializations of m_split_modifications_p.
	(ipa_param_body_adjustments::modify_call_stmt): Check that
	m_replacements is empty instead of m_split_modifications_p.

2022-11-22  Martin Jambor  <mjambor@suse.cz>

	PR ipa/107661
	* ipa-cp.cc (push_agg_values_from_edge): New parameter
	optimize_self_recursion, use it to decide whether to pass interim to
	the helper function.
	(find_aggregate_values_for_callers_subset): Pass true in the new
	parameter of push_agg_values_from_edge.
	(cgraph_edge_brings_all_agg_vals_for_node): Pass false in the new
	parameter of push_agg_values_from_edge.

2022-11-22  Tobias Burnus  <tobias@codesourcery.com>
	    Andrew Stubbs  <ams@codesourcery.com>

	* config/gcn/gcn-builtins.def (FIRST_CALL_THIS_THREAD_P,
	GET_STACK_LIMIT): Add new builtins.
	* config/gcn/gcn.cc (gcn_expand_builtin_1): Expand them.
	* config/gcn/gcn.md (prologue_use): Add "register_operand" as
	arg to match_operand.
	(prologue_use_di): New; DI insn_and_split variant of the former.

2022-11-22  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/107803
	* tree-ssa-propagate.cc (substitute_and_fold_dom_walker): Add
	need_ab_cleanup member.
	(substitute_and_fold_dom_walker::before_dom_children): When
	a stmt can no longer transfer control flow abnormally set
	need_ab_cleanup.
	(substitute_and_fold_engine::substitute_and_fold): Cleanup
	abnormal control flow.

2022-11-22  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/107672
	* tree-vect-stmts.cc (supportable_widening_operation): Avoid
	type_for_mode on vector modes.

2022-11-22  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/107766
	* tree-vect-slp-patterns.cc (complex_mul_pattern::matches):
	Use *node to check for FP vector types.

2022-11-22  liuhongt  <hongtao.liu@intel.com>

	* config/i386/mmx.md (*mov<mode>_internal): Add
	ix86_hard_reg_move_ok to condition.

2022-11-22  liuhongt  <hongtao.liu@intel.com>

	* config/i386/i386.cc (ix86_can_change_mode_class): Also guard
	size of TO.
	(ix86_hard_regno_mode_ok): Remove VALID_AVX512FP16_SCALAR_MODE
	* config/i386/i386.h (VALID_AVX512FP16_SCALAR_MODE): Merged to
	..
	(VALID_AVX512F_SCALAR_MODE): .. this, also add HImode.
	(VALID_SSE_REG_MODE): Add DI/HImode.

2022-11-21  Sebastian Huber  <sebastian.huber@embedded-brains.de>

	* config/rtems.h (SUBTARGET_CC1_SPEC): Undef and define.

2022-11-21  Sebastian Huber  <sebastian.huber@embedded-brains.de>

	* gcc.cc (SUBTARGET_CC1_SPEC): Define if not defined.
	(cc1_spec): Append SUBTARGET_CC1_SPEC.

2022-11-21  Dimitar Dimitrov  <dimitar@dinux.eu>

	* doc/sourcebuild.texi (sockets): Document new check.

2022-11-21  Andrew Carlotti  <andrew.carlotti@arm.com>

	* tree-ssa-loop.h (tree_niter_desc): Update comment.

2022-11-21  Andrew Carlotti  <andrew.carlotti@arm.com>

	* tree-ssa-loop-niter.cc
	(number_of_iterations_exit_assumptions): Modify to call...
	(number_of_iterations_bitcount): ...this new function.
	(number_of_iterations_popcount): Now called by the above.
	Refactor, and extract popcount expression builder to...
	(build_popcount_expr): this new function.

2022-11-21  Andrew Carlotti  <andrew.carlotti@arm.com>

	* tree-ssa-loop-niter.cc (ssa_defined_by_minus_one_stmt_p): Move
	(number_of_iterations_popcount): Move, and remove separate prototype.

2022-11-21  Andrew Carlotti  <andrew.carlotti@arm.com>

	* tree-ssa-loop-niter.cc (number_of_iterations_exit_assumptions):
	Move at_stmt assignment.

2022-11-21  Christophe Lyon  <christophe.lyon@arm.com>

	* genmultilib: Fix options and dirnames/osdirnames sanity check.

2022-11-21  Philipp Tomsich  <philipp.tomsich@vrull.eu>

	PR target/107786
	* config/riscv/riscv.md
	(*branch<ANYI:mode>_shiftedarith_equals_zero): Wrap ANYI
	in a subreg, as our branch instructions only supports X.

2022-11-21  Jakub Jelinek  <jakub@redhat.com>

	PR target/107748
	* config/i386/avx512fp16intrin.h (_mm512_castph512_ph128,
	_mm512_castph512_ph256, _mm512_castph128_ph512,
	_mm512_castph256_ph512, _mm512_set1_pch): Uglify names of local
	variables and union members.
	* config/i386/avx512fp16vlintrin.h (_mm256_castph256_ph128,
	_mm256_castph128_ph256, _mm256_set1_pch, _mm_set1_pch): Likewise.
	* config/i386/smmintrin.h (_mm_extract_ps): Likewise.

2022-11-21  Christophe Lyon  <christophe.lyon@arm.com>

	* genmultilib: Add sanity check.

2022-11-21  Eric Botcazou  <ebotcazou@adacore.com>

	* config/arm/arm.cc (arm_attribute_table) <cmse_nonsecure_call>:
	Change decl_required field to false.
	(arm_handle_cmse_nonsecure_call): Deal with a TYPE node.

2022-11-21  Andrew Pinski  <apinski@marvell.com>

	* gimplify.cc (gimplify_modify_expr): If
	either *from_p or *to_p were error_operand
	return early.

2022-11-21  liuhongt  <hongtao.liu@intel.com>

	* config/i386/i386-builtins.cc (def_builtin): Handle "shared"
	avx512bf16vl-avxneconvert builtins.

2022-11-20  Jakub Jelinek  <jakub@redhat.com>

	PR target/107183
	* reg-stack.cc (next_flags_user): Add DEBUG_SEEN argument.
	If >= 0 and a DEBUG_INSN would be otherwise returned, set
	DEBUG_SEEN to 1 and ignore it.
	(swap_rtx_condition): Add DEBUG_SEEN argument.  In >= 0
	mode only set DEBUG_SEEN to 1 if problematic DEBUG_ISNSs
	were seen and revert all changes on success in that case.
	Don't try to recog_memoized DEBUG_INSNs.
	(compare_for_stack_reg): Adjust swap_rtx_condition caller.
	If it returns true and debug_seen is 1, call swap_rtx_condition
	again with debug_seen -1.

2022-11-20  Jeff Law  <jlaw@ventanamicro.com>

	PR other/104044
	* config/mn10300/mn10300.cc (mn10300_print_operand): Remove
	extraneous semicolon.
	* config/nvptx/nvptx.cc (nvptx_goacc_reduction_fini): Likewise.

2022-11-19  Andrew Pinski  <apinski@marvell.com>

	PR middle-end/14840
	* tree-core.h (tree_code_type): Constexprify
	by including all-tree.def.
	(tree_code_length): Likewise.
	* tree.cc (tree_code_type): Remove.
	(tree_code_length): Remove.

2022-11-19  Thomas Schwinge  <thomas@codesourcery.com>

	* config/nvptx/nvptx.h (STARTFILE_SPEC): Fix 'crt0.o' for
	'-mmainkernel'.

2022-11-19  Jonathan Wakely  <jwakely@redhat.com>
	    LIU Hao  <lh_mouse@126.com>

	* system.h [INCLUDE_MUTEX]: Include header for std::mutex.

2022-11-19  Jakub Jelinek  <jakub@redhat.com>

	PR target/107628
	* config/i386/i386-protos.h (ix86_expand_fast_convert_bf_to_sf):
	Declare.
	* config/i386/i386-expand.cc (ix86_expand_fast_convert_bf_to_sf): New
	function.
	* config/i386/i386.md (cbranchbf4, cstorebf4): Use it.

2022-11-19  Jeff Chapman II  <jchapman@lock3software.com>
	    Andrew Sutton   <asutton@lock3software.com>
	    Andrew Marmaduke  <amarmaduke@lock3software.com>
	    Michael Lopez  <mlopez@lock3software.com>
	    Jason Merrill   <jason@redhat.com>

	* doc/invoke.texi: Document contracts flags.

2022-11-18  Philipp Tomsich  <philipp.tomsich@vrull.eu>

	* config/riscv/bitmanip.md (*minmax): Additional pattern for
	min/max against constants that are extension-invariant.
	* config/riscv/iterators.md (minmax_optab): Add an iterator
	that has only min and max rtl.

2022-11-18  Philipp Tomsich  <philipp.tomsich@vrull.eu>

	* config/riscv/bitmanip.md
	(*branch<X:mode>_mask_twobits_equals_singlebit):
	Handle "if ((a & T) == C)" using Zbs, when T has 2 bits set and C
	has one	of these tow bits set.
	* config/riscv/predicates.md (const_twobits_not_arith_operand):
	New predicate.

2022-11-18  Philipp Tomsich  <philipp.tomsich@vrull.eu>

	* config/riscv/bitmanip.md (*<or_optab>i<mode>_extrabit):
	New pattern for binvi+binvi/xori and bseti+bseti/ori
	(*andi<mode>_extrabit): New pattern for bclri+bclri/andi
	* config/riscv/iterators.md (any_or): Match or and ior
	* config/riscv/predicates.md (const_twobits_operand):
	New predicate.
	(uimm_extra_bit_operand): New predicate.
	(uimm_extra_bit_or_twobits): New predicate.
	(not_uimm_extra_bit_operand): New predicate.
	(not_uimm_extra_bit_or_nottwobits): New predicate.
	* config/riscv/riscv.h (UIMM_EXTRA_BIT_OPERAND):
	Helper for the uimm_extra_bit_operand and
	not_uimm_extra_bit_operand predicates.

2022-11-18  Philipp Tomsich  <philipp.tomsich@vrull.eu>

	* config/riscv/bitmanip.md: Handle corner-cases for combine
	when chaining slli(.uw)? + addw
	* config/riscv/riscv-protos.h (riscv_shamt_matches_mask_p):
	Define prototype.
	* config/riscv/riscv.cc (riscv_shamt_matches_mask_p):
	Helper for evaluating the relationship between two operands.

2022-11-18  Philipp Tomsich  <philipp.tomsich@vrull.eu>

	* config/riscv/bitmanip.md: Add a define_split to optimize
	slliw + addiw + divw into sh[123]add + divw.

2022-11-18  Philipp Tomsich  <philipp.tomsich@vrull.eu>

	* config/riscv/predicates.md (shifted_const_arith_operand): New predicate.
	(uimm_extra_bit_operand): New predicate.
	* config/riscv/riscv.md (*branch<ANYI:mode>_shiftedarith_equals_zero):
	New pattern.
	(*branch<ANYI:mode>_shiftedmask_equals_zero): New pattern.

2022-11-18  Philipp Tomsich  <philipp.tomsich@vrull.eu>

	* config/riscv/bitmanip.md (*bsetidisi): New pattern.

2022-11-18  Richard Purdie  <richard.purdie@linuxfoundation.org>

	* doc/invoke.texi: Document prefix-maps don't affect directives.

2022-11-18  Andrew Pinski  <apinski@marvell.com>

	PR middle-end/107705
	* function.cc (aggregate_value_p): Return 0 if
	the function type was an error operand.

2022-11-18  Andrew Pinski  <apinski@marvell.com>

	PR c/106764
	PR c/106765
	PR c/107307
	* gimplify.cc (gimplify_compound_lval): Return GS_ERROR
	if gimplify_expr had return GS_ERROR.
	(gimplify_call_expr): Likewise.

2022-11-18  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* config/aarch64/atomics.md (*aarch64_atomic_load<ALLX:mode>_rcpc_sext):
	Use <GPI:w>  for destination format.
	* config/aarch64/iterators.md (w_sz): Delete.

2022-11-18  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* config/aarch64/aarch64.h (TARGET_RCPC2): Define.
	* config/aarch64/atomics.md (*aarch64_atomic_load<ALLX:mode>_rcpc_zext):
	Adjust output template.
	(*aarch64_atomic_load<ALLX:mode>_rcpc_sex): Guard on TARGET_RCPC2.
	Adjust output template.
	* config/aarch64/iterators.md (w_sz): New mode attr.

2022-11-18  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/107647
	* tree-vect-slp-patterns.cc (addsub_pattern::recognize): Only
	allow FMA generation with -ffp-contract=fast for FP types.
	(complex_mul_pattern::matches): Likewise.

2022-11-18  Jinyang He  <hejinyang@loongson.cn>

	PR target/107713
	* config/loongarch/sync.md
	(atomic_cas_value_exchange_7_<mode>): New define_insn.
	(atomic_exchange): Use atomic_cas_value_exchange_7_si instead of
	atomic_cas_value_cmp_and_7_si.

2022-11-17  Andrew Pinski  <apinski@marvell.com>

	PR middle-end/107734
	* match.pd (perm + vector op pattern): Clear the sbitmap before
	use.

2022-11-17  Aldy Hernandez  <aldyh@redhat.com>

	PR tree-optimization/107732
	* range-op-float.cc (foperator_abs::op1_range): Early exit when
	result is undefined.

2022-11-17  Philipp Tomsich  <philipp.tomsich@vrull.eu>

	* config/riscv/bitmanip.md (*bclri<mode>_nottwobits): New pattern.
	(*bclridisi_nottwobits): New pattern, handling the sign-bit.
	* config/riscv/predicates.md (const_nottwobits_operand):
	New predicate.

2022-11-17  Philipp Tomsich  <philipp.tomsich@vrull.eu>

	* config/riscv/bitmanip.md: Add a splitter to generate
	polarity-reversed masks from a set bit using bexti + addi.

2022-11-17  mtsamis  <manolis.tsamis@vrull.eu>

	* config/riscv/riscv.cc (struct machine_function): Add array to store
	register wrapping information.
	(riscv_for_each_saved_reg): Skip registers that are wrapped separetely.
	(riscv_get_separate_components): New function.
	(riscv_components_for_bb): Likewise.
	(riscv_disqualify_components): Likewise.
	(riscv_process_components): Likewise.
	(riscv_emit_prologue_components): Likewise.
	(riscv_emit_epilogue_components): Likewise.
	(riscv_set_handled_components): Likewise.
	(TARGET_SHRINK_WRAP_GET_SEPARATE_COMPONENTS): Define.
	(TARGET_SHRINK_WRAP_COMPONENTS_FOR_BB): Likewise.
	(TARGET_SHRINK_WRAP_DISQUALIFY_COMPONENTS): Likewise.
	(TARGET_SHRINK_WRAP_EMIT_PROLOGUE_COMPONENTS): Likewise.
	(TARGET_SHRINK_WRAP_EMIT_EPILOGUE_COMPONENTS): Likewise.
	(TARGET_SHRINK_WRAP_SET_HANDLED_COMPONENTS): Likewise.

2022-11-17  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* config/aarch64/atomics.md (*aarch64_atomic_load<ALLX:mode>_rcpc_zext):
	Add mode size check to condition.
	(*aarch64_atomic_load<ALLX:mode>_rcpc_sext): Likewise.

2022-11-17  Aldy Hernandez  <aldyh@redhat.com>

	PR tree-optimization/68097
	* gimple-fold.cc (gimple_stmt_nonnegative_warnv_p): Call
	range_of_stmt for floats.

2022-11-17  Lili Cui  <lili.cui@intel.com>

	* config/i386/x86-tune.def
	(X86_TUNE_AVX256_MOVE_BY_PIECES): Add alderlake.
	(X86_TUNE_AVX256_STORE_BY_PIECES): Ditto.

2022-11-17  Tamar Christina  <tamar.christina@arm.com>

	PR tree-optimization/107717
	* match.pd: Ensure same SSA_NAME.

2022-11-17  Tamar Christina  <tamar.christina@arm.com>

	* match.pd: Replace GET_MODE_WIDER_MODE with
	custom code.

2022-11-17  Aldy Hernandez  <aldyh@redhat.com>

	* range-op-float.cc (range_operator_float::fold_range): Make check
	for maybe_isnan more readable.

2022-11-17  Kewen Lin  <linkw@linux.ibm.com>

	* gimple-fold.cc (gimple_fold_partial_load_store_mem_ref): Use
	tree_fits_shwi_p rather than tree_fits_uhwi_p as bias is signed.

2022-11-17  Jia-Wei Chen  <jiawei@iscas.ac.cn>

	* config/riscv/riscv.cc (riscv_expand_epilogue):
	Do not emit useless add sp, sp, 0 instrutions.

2022-11-17  Jeff Law  <jlaw@ventanamicro.com>

	* config/sh/sh_treg_combine.cc: Include tm-preds.h.
	(t_reg_operand): Remove bogus prototype.
	(negt_reg_operand): Likewise.

2022-11-16  Marek Polacek  <polacek@redhat.com>

	PR c++/106649
	* doc/invoke.texi: Document -Winvalid-constexpr.

2022-11-16  Philipp Tomsich  <philipp.tomsich@vrull.eu>

	* config/riscv/bitmanip.md: Add split covering
	"(a & (1 << BIT_NO)) ? 0 : 1".

2022-11-16  Philipp Tomsich  <philipp.tomsich@vrull.eu>

	* config/riscv/bitmanip.md (*bext<mode>): Add an additional
	pattern that allows the 3rd argument to zero_extract to be
	an Xmode register operand.

2022-11-16  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/107686
	* tree-ssa-forwprop.cc (optimize_vector_load): Restrict
	VEC_UNPACK support to integral typed bitfield refs.

2022-11-16  Richard Biener  <rguenther@suse.de>

	PR middle-end/107679
	* tree-into-ssa.cc (maybe_register_def): Use new temporary if
	we require an uninitialized value for a parameter decl.

2022-11-16  Alexander Monakov  <amonakov@ispras.ru>

	PR target/107676
	* doc/invoke.texi (-mrelax-cmpxchg-loop): Reword description.

2022-11-16  Alexander Monakov  <amonakov@ispras.ru>

	PR target/87832
	* config/i386/znver.md: (znver1_fp_op_mul): Correct cycles in
	the reservation.
	(znver1_fp_op_mul_load): Ditto.
	(znver1_mmx_mul): Ditto.
	(znver1_mmx_load): Ditto.
	(znver1_ssemul_ss_ps): Ditto.
	(znver1_ssemul_ss_ps_load): Ditto.
	(znver1_ssemul_avx256_ps): Ditto.
	(znver1_ssemul_avx256_ps_load): Ditto.
	(znver1_ssemul_sd_pd): Ditto.
	(znver1_ssemul_sd_pd_load): Ditto.
	(znver2_ssemul_sd_pd): Ditto.
	(znver2_ssemul_sd_pd_load): Ditto.
	(znver1_ssemul_avx256_pd): Ditto.
	(znver1_ssemul_avx256_pd_load): Ditto.
	(znver1_sseimul): Ditto.
	(znver1_sseimul_avx256): Ditto.
	(znver1_sseimul_load): Ditto.
	(znver1_sseimul_avx256_load): Ditto.
	(znver1_sseimul_di): Ditto.
	(znver1_sseimul_load_di): Ditto.

2022-11-16  Alexander Monakov  <amonakov@ispras.ru>

	PR target/87832
	* config/i386/znver.md (znver1_fdiv): New automaton.
	(znver1-fdiv): New unit.
	(znver1_fp_op_div): Correct unit and cycles in the reservation.
	(znver1_fp_op_div_load): Ditto.
	(znver1_fp_op_idiv_load): Ditto.
	(znver2_fp_op_idiv_load): Ditto.
	(znver1_ssediv_ss_ps): Ditto.
	(znver1_ssediv_ss_ps_load): Ditto.
	(znver1_ssediv_sd_pd): Ditto.
	(znver1_ssediv_sd_pd_load): Ditto.
	(znver1_ssediv_avx256_ps): Ditto.
	(znver1_ssediv_avx256_ps_load): Ditto.
	(znver1_ssediv_avx256_pd): Ditto.
	(znver1_ssediv_avx256_pd_load): Ditto.

2022-11-16  Tobias Burnus  <tobias@codesourcery.com>
	    Andrew Stubbs  <ams@codesourcery.com>

	* config/gcn/gcn-builtins.def (KERNARG_PTR): Add.
	* config/gcn/gcn.cc (gcn_init_builtin_types): Change siptr_type_node,
	sfptr_type_node and voidptr_type_node from FLAT to ADDR_SPACE_DEFAULT.
	(gcn_expand_builtin_1): Handle GCN_BUILTIN_KERNARG_PTR.
	(gcn_oacc_dim_size): Return in ADDR_SPACE_FLAT.

2022-11-16  David Malcolm  <dmalcolm@redhat.com>

	* Makefile.in (ANALYZER_OBJS): Add analyzer/checker-event.o.

2022-11-16  Max Filippov  <jcmvbkbc@gmail.com>

	PR target/107645
	* config/m68k/predicates.md (symbolic_operand): Return false
	when UNSPEC is under the CONST node.

2022-11-16  Christoph Müllner  <christoph.muellner@vrull.eu>

	* doc/invoke.texi: Fix PRU/RISC-V option list formatting.

2022-11-16  Tobias Burnus  <tobias@codesourcery.com>

	* config/nvptx/mkoffload.cc (process): Recognize '$nohost$...'
	besides tailing '$nohost' as being for reverse offload.

2022-11-16  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/107668
	* range-op-float.cc (float_binary_op_range_finish): Set VARYING
	also when r is UNDEFINED.

2022-11-16  Kewen Lin  <linkw@linux.ibm.com>

	PR rtl-optimization/90259
	* function.cc (rest_of_handle_thread_prologue_and_epilogue): Add
	parameter fun, and call function purge_all_dead_edges.
	(pass_thread_prologue_and_epilogue::execute): Name unamed parameter
	as fun, and use it for rest_of_handle_thread_prologue_and_epilogue.

2022-11-15  Philipp Tomsich  <philipp.tomsich@vrull.eu>

	* config/riscv/riscv-builtins.cc (struct riscv_builtin_description):
	add the pause machine-dependent builtin with no result and no
	arguments; mark it as always present (pause is a true hint
	that encodes into a fence-insn, if not supported with the new
	pause semantics).
	* config/riscv/riscv-ftypes.def: Add type for void -> void.
	* config/riscv/riscv.md (riscv_pause): Add risc_pause and
	UNSPECV_PAUSE
	* doc/extend.texi: Document __builtin_riscv_pause.
	* optabs.cc (maybe_gen_insn): Allow nops == 0 (void -> void).

2022-11-15  David Faust  <david.faust@oracle.com>

	* config/bpf/bpf.cc (bpf_expand_builtin): Avoid use of uninitialized
	variable in error case.

2022-11-15  David Malcolm  <dmalcolm@redhat.com>

	PR analyzer/106140
	* doc/invoke.texi (Static Analyzer Options): Add
	-Wanalyzer-fd-phase-mismatch and -Wanalyzer-fd-type-mismatch.  Add
	"socket", "bind", "listen", "accept", and "connect" to the list of
	functions known to the analyzer.

2022-11-15  David Malcolm  <dmalcolm@redhat.com>

	PR analyzer/106302
	* Makefile.in (ANALYZER_OBJS): Add analyzer/analyzer-language.o.
	(GTFILES): Add analyzer/analyzer-language.cc.
	* doc/analyzer.texi: Document __analyzer_dump_named_constant.

2022-11-15  Lewis Hyatt  <lhyatt@gmail.com>

	* json.h (class string): Add M_LEN member to store the length of
	the data.  Add constructor taking an explicit length.
	* json.cc (string::string):  Implement the new constructor.
	(string::print): Support printing strings that are not
	null-terminated.  Escape embdedded null bytes on output.
	(test_writing_strings): Test the new null-byte-related features of
	json::string.

2022-11-15  Lewis Hyatt  <lhyatt@gmail.com>

	* diagnostic.cc (diagnostic_get_location_text): Use
	special_fname_builtin () rather than a hardcoded string (which was
	also incorrectly left untranslated previously.)
	* input.cc (special_fname_builtin): New function.
	(expand_location_1): Use special_fname_builtin () rather than a
	hard-coded string.
	(test_builtins): Likewise.
	* input.h (special_fname_builtin): Declare.

2022-11-15  Lewis Hyatt  <lhyatt@gmail.com>

	* tree-diagnostic.cc (maybe_unwind_expanded_macro_loc): Handle ad-hoc
	location in return value of linemap_resolve_location().

2022-11-15  Jonathan Wakely  <jwakely@redhat.com>

	* doc/cpp.texi (Pragmas): Use @item and @itemx for region
	pragmas.

2022-11-15  Maciej W. Rozycki  <macro@embecosm.com>

	* ira-color.cc (assign_hard_reg): Remove duplicate `memset' over
	`full_costs'.

2022-11-15  Andre Vieira  <andre.simoesdiasvieira@arm.com>

	* config/aarch64/atomics.md
	(*aarch64_atomic_load<ALLX:mode>_rcpc_zext): New pattern.
	(*aarch64_atomic_load<ALLX:mode>_rcpc_sext): New pattern.

2022-11-15  Andre Vieira  <andre.simoesdiasvieira@arm.com>
	    Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* config/aarch64/aarch64.h (AARCH64_ISA_RCPC): New Macro.
	(TARGET_RCPC): New Macro.
	* config/aarch64/atomics.md (atomic_load<mode>): Change into an expand.
	(aarch64_atomic_load<mode>_rcpc): New define_insn for ldapr.
	(aarch64_atomic_load<mode>): Rename of old define_insn for ldar.
	* config/aarch64/iterators.md (UNSPEC_LDAP): New unspec enum value.
	* doc/invoke.texi (rcpc): Ammend documentation to mention the effects
	on code generation.

2022-11-15  Hongyu Wang  <hongyu.wang@intel.com>

	PR target/98167
	* match.pd: New perm + vector op patterns for int and fp vector.

2022-11-15  Andrew Pinski  <apinski@marvell.com>

	* doc/invoke.texi: Remove Score option section.

2022-11-15  Andrew Pinski  <apinski@marvell.com>

	* doc/extend.texi: Remove picoChip builtin section.
	* doc/invoke.texi: Remove picoChip option section.

2022-11-15  Andrew Pinski  <apinski@marvell.com>

	* doc/extend.texi: Remove MeP documentation.
	* doc/invoke.texi: Remove MeP Options documentation.

2022-11-15  Andrew Pinski  <apinski@marvell.com>

	* doc/invoke.texi: Fix opindex for mcall-aixdesc and mcall-openbsd.

2022-11-14  Philipp Tomsich  <philipp.tomsich@vrull.eu>

	Revert:
	2022-11-14  Philipp Tomsich  <philipp.tomsich@vrull.eu>

	* config/riscv/riscv-cores.def (RISCV_TUNE): Add ventana-vt1.
	(RISCV_CORE): Ditto.
	* config/riscv/riscv-opts.h (enum riscv_microarchitecture_type): Ditto.
	* config/riscv/riscv.cc: Add tune_info for ventana-vt1.
	* doc/invoke.texi: Document -mcpu= and -mtune with ventana-vt1.

2022-11-14  Philipp Tomsich  <philipp.tomsich@vrull.eu>

	Revert:
	2022-11-14  Philipp Tomsich  <philipp.tomsich@vrull.eu>

	* config/riscv/riscv.cc (enum riscv_fusion_pairs): Add symbolic
	constants to identify supported fusion patterns.
	(struct riscv_tune_param): Add fusible_op field.
	(riscv_macro_fusion_p): Implement.
	(riscv_fusion_enabled_p): Implement.
	(riscv_macro_fusion_pair_p): Implement and recognize fusible
	idioms for Ventana VT1.
	(TARGET_SCHED_MACRO_FUSION_P): Point to riscv_macro_fusion_p.
	(TARGET_SCHED_MACRO_FUSION_PAIR_P): Point to
	riscv_macro_fusion_pair_p.

2022-11-14  Maciej W. Rozycki  <macro@embecosm.com>

	* ira-build.cc (create_insn_allocnos): Fix documentation.

2022-11-14  Tamar Christina  <tamar.christina@arm.com>

	* match.pd: Remove returns.

2022-11-14  Philipp Tomsich  <philipp.tomsich@vrull.eu>

	* config/riscv/bitmanip.md (orcb<mode>2): Add orc.b as an
	unspec.
	* config/riscv/riscv.md: Add UNSPEC_ORC_B.

2022-11-14  Tamar Christina  <tamar.christina@arm.com>

	* target.def: Fix typo.

2022-11-14  Philipp Tomsich  <philipp.tomsich@vrull.eu>

	* config/riscv/riscv.cc (enum riscv_fusion_pairs): Add symbolic
	constants to identify supported fusion patterns.
	(struct riscv_tune_param): Add fusible_op field.
	(riscv_macro_fusion_p): Implement.
	(riscv_fusion_enabled_p): Implement.
	(riscv_macro_fusion_pair_p): Implement and recognize fusible
	idioms for Ventana VT1.
	(TARGET_SCHED_MACRO_FUSION_P): Point to riscv_macro_fusion_p.
	(TARGET_SCHED_MACRO_FUSION_PAIR_P): Point to
	riscv_macro_fusion_pair_p.

2022-11-14  Philipp Tomsich  <philipp.tomsich@vrull.eu>

	* config/riscv/riscv-cores.def (RISCV_TUNE): Add ventana-vt1.
	(RISCV_CORE): Ditto.
	* config/riscv/riscv-opts.h (enum riscv_microarchitecture_type): Ditto.
	* config/riscv/riscv.cc: Add tune_info for ventana-vt1.
	* doc/invoke.texi: Document -mcpu= and -mtune with ventana-vt1.

2022-11-14  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* config/aarch64/aarch64-option-extensions.def (cssc): Define.
	* config/aarch64/aarch64.h (AARCH64_ISA_CSSC): Define.
	(TARGET_CSSC): Likewise.
	* config/aarch64/aarch64.md (*aarch64_abs<mode>2_cssc_ins): New define_insn.
	(abs<mode>2): Adjust for the above.
	(aarch64_umax<mode>3_insn): New define_insn.
	(umax<mode>3): Adjust for the above.
	(*aarch64_popcount<mode>2_cssc_insn): New define_insn.
	(popcount<mode>2): Adjust for the above.
	(<optab><mode>3): New define_insn.
	* config/aarch64/constraints.md (Usm): Define.
	(Uum): Likewise.
	* doc/invoke.texi (AArch64 options): Document +cssc.
	* config/aarch64/iterators.md (MAXMIN_NOUMAX): New code iterator.
	* config/aarch64/predicates.md (aarch64_sminmax_immediate): Define.
	(aarch64_sminmax_operand): Likewise.
	(aarch64_uminmax_immediate): Likewise.
	(aarch64_uminmax_operand): Likewise.

2022-11-14  Tamar Christina  <tamar.christina@arm.com>

	* config/aarch64/aarch64-sve2.md (@aarch64_bitmask_udiv<mode>3): New.

2022-11-14  Tamar Christina  <tamar.christina@arm.com>

	* config/aarch64/aarch64-simd.md (@aarch64_bitmask_udiv<mode>3): New.
	* config/aarch64/aarch64.cc (aarch64_vectorize_can_special_div_by_constant): New.

2022-11-14  Tamar Christina  <tamar.christina@arm.com>

	* expmed.h (expand_divmod): Pass tree operands down in addition to RTX.
	* expmed.cc (expand_divmod): Likewise.
	* explow.cc (round_push, align_dynamic_address): Likewise.
	* expr.cc (force_operand, expand_expr_divmod): Likewise.
	* optabs.cc (expand_doubleword_mod, expand_doubleword_divmod):
	Likewise.
	* target.h: Include tree-core.
	* target.def (can_special_div_by_const): New.
	* targhooks.cc (default_can_special_div_by_const): New.
	* targhooks.h (default_can_special_div_by_const): New.
	* tree-vect-generic.cc (expand_vector_operation): Use it.
	* doc/tm.texi.in: Document it.
	* doc/tm.texi: Regenerate.
	* tree-vect-patterns.cc (vect_recog_divmod_pattern): Check for support.
	* tree-vect-stmts.cc (vectorizable_operation): Likewise.

2022-11-14  Tamar Christina  <tamar.christina@arm.com>

	* generic-match-head.cc: Include langooks.
	* gimple-match-head.cc: Likewise.
	* match.pd: Add fneg/fadd rule.

2022-11-14  Srinath Parvathaneni  <srinath.parvathaneni@arm.com>

	* config/arm/arm-cpus.in (cortex-x1c): Define new CPU.
	* config/arm/arm-tables.opt: Regenerate.
	* config/arm/arm-tune.md: Likewise.
	* doc/invoke.texi: Document Cortex-X1C CPU.

2022-11-14  Srinath Parvathaneni  <srinath.parvathaneni@arm.com>

	* config/aarch64/aarch64-cores.def (AARCH64_CORE): Add Cortex-X3
	CPU.
	* config/aarch64/aarch64-tune.md: Regenerate.
	* doc/invoke.texi: Document Cortex-X3 CPU.

2022-11-14  Andrew Pinski  <apinski@marvell.com>

	* doc/invoke.texi: Fix @opindex
	for m80387 option.

2022-11-14  Andrew Pinski  <apinski@marvell.com>

	* doc/invoke.texi: Remove the front - from
	some @opindex.

2022-11-14  Philipp Tomsich  <philipp.tomsich@vrull.eu>

	* config/aarch64/aarch64-cores.def (AARCH64_CORE): Add ampere1a.
	* config/aarch64/aarch64-cost-tables.h: Add ampere1a_extra_costs.
	* config/aarch64/aarch64-fusion-pairs.def (AARCH64_FUSION_PAIR):
	Define a new fusion pair for A+B+1/A-B-1 (i.e., add/subtract two
	registers and then +1/-1).
	* config/aarch64/aarch64-tune.md: Regenerate.
	* config/aarch64/aarch64.cc (aarch_macro_fusion_pair_p): Implement
	idiom-matcher for the new fusion pair.
	* doc/invoke.texi: Add ampere1a.

2022-11-14  Richard Biener  <rguenther@suse.de>

	* match.pd: Remove duplicates.

2022-11-14  Martin Liska  <mliska@suse.cz>

	* doc/contrib.texi: Port from Sphinx.
	* doc/cpp.texi: Likewise.
	* doc/install.texi: Likewise.
	* doc/invoke.texi: Likewise.

2022-11-14  Martin Liska  <mliska@suse.cz>

	Revert:
	2022-11-14  Martin Liska  <mliska@suse.cz>

	* doc/cpp/character-sets.rst: New file.
	* doc/cpp/conditional-syntax.rst: New file.
	* doc/cpp/conditional-uses.rst: New file.
	* doc/cpp/conditionals.rst: New file.
	* doc/cpp/conf.py: New file.
	* doc/cpp/copyright.rst: New file.
	* doc/cpp/deleted-code.rst: New file.
	* doc/cpp/diagnostics.rst: New file.
	* doc/cpp/environment-variables.rst: New file.
	* doc/cpp/gnu-free-documentation-license.rst: New file.
	* doc/cpp/header-files.rst: New file.
	* doc/cpp/header-files/alternatives-to-wrapper-ifndef.rst: New file.
	* doc/cpp/header-files/computed-includes.rst: New file.
	* doc/cpp/header-files/include-operation.rst: New file.
	* doc/cpp/header-files/include-syntax.rst: New file.
	* doc/cpp/header-files/once-only-headers.rst: New file.
	* doc/cpp/header-files/search-path.rst: New file.
	* doc/cpp/header-files/system-headers.rst: New file.
	* doc/cpp/header-files/wrapper-headers.rst: New file.
	* doc/cpp/implementation-defined-behavior.rst: New file.
	* doc/cpp/implementation-details.rst: New file.
	* doc/cpp/implementation-limits.rst: New file.
	* doc/cpp/index.rst: New file.
	* doc/cpp/indices-and-tables.rst: New file.
	* doc/cpp/initial-processing.rst: New file.
	* doc/cpp/invocation.rst: New file.
	* doc/cpp/line-control.rst: New file.
	* doc/cpp/macros.rst: New file.
	* doc/cpp/macros/concatenation.rst: New file.
	* doc/cpp/macros/directives-within-macro-arguments.rst: New file.
	* doc/cpp/macros/function-like-macros.rst: New file.
	* doc/cpp/macros/macro-arguments.rst: New file.
	* doc/cpp/macros/macro-pitfalls.rst: New file.
	* doc/cpp/macros/object-like-macros.rst: New file.
	* doc/cpp/macros/predefined-macros.rst: New file.
	* doc/cpp/macros/stringizing.rst: New file.
	* doc/cpp/macros/undefining-and-redefining-macros.rst: New file.
	* doc/cpp/macros/variadic-macros.rst: New file.
	* doc/cpp/obsolete-features.rst: New file.
	* doc/cpp/other-directives.rst: New file.
	* doc/cpp/overview.rst: New file.
	* doc/cpp/pragmas.rst: New file.
	* doc/cpp/preprocessor-output.rst: New file.
	* doc/cpp/the-preprocessing-language.rst: New file.
	* doc/cpp/tokenization.rst: New file.
	* doc/cpp/traditional-lexical-analysis.rst: New file.
	* doc/cpp/traditional-macros.rst: New file.
	* doc/cpp/traditional-miscellany.rst: New file.
	* doc/cpp/traditional-mode.rst: New file.
	* doc/cpp/traditional-warnings.rst: New file.
	* doc/cppinternals/conf.py: New file.
	* doc/cppinternals/copyright.rst: New file.
	* doc/cppinternals/cppinternals.rst: New file.
	* doc/cppinternals/cpplib.rst: New file.
	* doc/cppinternals/files.rst: New file.
	* doc/cppinternals/index.rst: New file.
	* doc/cppinternals/indices-and-tables.rst: New file.
	* doc/cppinternals/internal-representation-of-macros.rst: New file.
	* doc/cppinternals/just-which-line-number-anyway.rst: New file.
	* doc/cppinternals/lexing-a-line.rst: New file.
	* doc/cppinternals/lexing-a-token.rst: New file.
	* doc/cppinternals/looking-for-a-function-like-macros-opening-parenthesis.rst: New file.
	* doc/cppinternals/macro-expansion-overview.rst: New file.
	* doc/cppinternals/marking-tokens-ineligible-for-future-expansion.rst: New file.
	* doc/cppinternals/multiple-include-optimization.rst: New file.
	* doc/cppinternals/overview.rst: New file.
	* doc/cppinternals/representation-of-line-numbers.rst: New file.
	* doc/cppinternals/scanning-the-replacement-list-for-macros-to-expand.rst: New file.
	* doc/gcc/binary-compatibility.rst: New file.
	* doc/gcc/c++-implementation-defined-behavior.rst: New file.
	* doc/gcc/c-implementation-defined-behavior.rst: New file.
	* doc/gcc/c-implementation-defined-behavior/architecture.rst: New file.
	* doc/gcc/c-implementation-defined-behavior/arrays-and-pointers.rst: New file.
	* doc/gcc/c-implementation-defined-behavior/characters.rst: New file.
	* doc/gcc/c-implementation-defined-behavior/declarators.rst: New file.
	* doc/gcc/c-implementation-defined-behavior/environment.rst: New file.
	* doc/gcc/c-implementation-defined-behavior/floating-point.rst: New file.
	* doc/gcc/c-implementation-defined-behavior/hints.rst: New file.
	* doc/gcc/c-implementation-defined-behavior/identifiers.rst: New file.
	* doc/gcc/c-implementation-defined-behavior/integers.rst: New file.
	* doc/gcc/c-implementation-defined-behavior/library-functions.rst: New file.
	* doc/gcc/c-implementation-defined-behavior/locale-specific-behavior.rst: New file.
	* doc/gcc/c-implementation-defined-behavior/preprocessing-directives.rst: New file.
	* doc/gcc/c-implementation-defined-behavior/qualifiers.rst: New file.
	* doc/gcc/c-implementation-defined-behavior/statements.rst: New file.
	* doc/gcc/c-implementation-defined-behavior/structures-unions-enumerations-and-bit-fields.rst:
	New file.
	* doc/gcc/c-implementation-defined-behavior/translation.rst: New file.
	* doc/gcc/conditionally-supported-behavior.rst: New file.
	* doc/gcc/conf.py: New file.
	* doc/gcc/contributing-to-gcc-development.rst: New file.
	* doc/gcc/contributors-to-gcc.rst: New file.
	* doc/gcc/copyright.rst: New file.
	* doc/gcc/exception-handling.rst: New file.
	* doc/gcc/extensions-to-the-c++-language.rst: New file.
	* doc/gcc/extensions-to-the-c++-language/backwards-compatibility.rst: New file.
	* doc/gcc/extensions-to-the-c++-language/c++-concepts.rst: New file.
	* doc/gcc/extensions-to-the-c++-language/c++-interface-and-implementation-pragmas.rst:
	New file.
	* doc/gcc/extensions-to-the-c++-language/c++-specific-variable-function-and-type-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c++-language/deprecated-features.rst: New file.
	* doc/gcc/extensions-to-the-c++-language/extracting-the-function-pointer-from-a-bound-pointer-to-member-function.rst:
	New file.
	* doc/gcc/extensions-to-the-c++-language/function-multiversioning.rst: New file.
	* doc/gcc/extensions-to-the-c++-language/restricting-pointer-aliasing.rst: New file.
	* doc/gcc/extensions-to-the-c++-language/type-traits.rst: New file.
	* doc/gcc/extensions-to-the-c++-language/vague-linkage.rst: New file.
	* doc/gcc/extensions-to-the-c++-language/when-is-a-volatile-c++-object-accessed.rst:
	New file.
	* doc/gcc/extensions-to-the-c++-language/wheres-the-template.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/128-bit-integers.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/additional-floating-types.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/alternate-keywords.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/an-inline-function-is-as-fast-as-a-macro.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/arithmetic-on-void-and-function-pointers.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/arrays-of-length-zero.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/arrays-of-variable-length.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/attribute-syntax.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/binary-constants-using-the-0b-prefix.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/built-in-functions-for-memory-model-aware-atomic-operations.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/built-in-functions-to-perform-arithmetic-with-overflow-checking.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/c++-style-comments.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/case-ranges.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/cast-to-a-union-type.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/complex-numbers.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/compound-literals.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/conditionals-with-omitted-operands.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/constructing-function-calls.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/decimal-floating-types.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/aarch64-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/amd-gcn-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/arc-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/arm-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/avr-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/blackfin-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/bpf-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/c-sky-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/common-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/epiphany-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/h8-300-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/ia-64-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/m32c-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/m32r-d-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/m68k-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/mcore-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/mep-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/microblaze-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/microsoft-windows-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/mips-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/msp430-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/nds32-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/nios-ii-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/nvidia-ptx-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/powerpc-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/risc-v-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/rl78-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/rx-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/s-390-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/sh-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/symbian-os-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/v850-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/visium-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/x86-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/xstormy16-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/designated-initializers.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/determining-the-alignment-of-functions-types-or-variables.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/dollar-signs-in-identifier-names.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/double-word-integers.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/enumerator-attributes.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/fixed-point-types.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/format-checks-specific-to-particular-target-machines.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/function-names-as-strings.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/getting-the-return-or-frame-address-of-a-function.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/half-precision-floating-point.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/hex-floats.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/how-to-use-inline-assembly-language-in-c-code.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/incomplete-enum-types.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/label-attributes.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/labels-as-values.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/legacy-sync-built-in-functions-for-atomic-memory-access.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/locally-declared-labels.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/macros-with-a-variable-number-of-arguments.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/mixed-declarations-labels-and-code.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/named-address-spaces.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/nested-functions.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/non-constant-initializers.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/non-lvalue-arrays-may-have-subscripts.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/nonlocal-gotos.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/object-size-checking-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/other-built-in-functions-provided-by-gcc.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/pointer-arguments-in-variadic-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/pointers-to-arrays-with-qualifiers-work-as-expected.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/pragmas-accepted-by-gcc.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/prototypes-and-old-style-function-definitions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/referring-to-a-type-with-typeof.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/slightly-looser-rules-for-escaped-newlines.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/specifying-attributes-of-types.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/specifying-attributes-of-variables.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/statement-attributes.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/statements-and-declarations-in-expressions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/structures-with-no-members.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/support-for-offsetof.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/aarch64-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/alpha-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/altera-nios-ii-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/arc-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/arc-simd-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/arm-armv8-m-security-extensions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/arm-c-language-extensions-acle.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/arm-floating-point-status-and-control-intrinsics.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/arm-iwmmxt-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/avr-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/basic-powerpc-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/blackfin-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/bpf-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/fr-v-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/mips-dsp-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/mips-loongson-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/mips-paired-single-support.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/mips-simd-architecture-msa-support.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/msp430-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/nds32-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/other-mips-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/picochip-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/powerpc-altivec-vsx-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/powerpc-atomic-memory-operation-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/powerpc-hardware-transactional-memory-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/powerpc-matrix-multiply-assist-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/pru-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/risc-v-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/rx-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/s-390-system-z-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/sh-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/sparc-vis-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/ti-c6x-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/x86-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/x86-control-flow-protection-intrinsics.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/x86-transactional-memory-intrinsics.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/the-character-esc-in-constants.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/thread-local-storage.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/unnamed-structure-and-union-fields.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/using-vector-instructions-through-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/when-is-a-volatile-object-accessed.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/x86-specific-memory-model-extensions-for-transactional-memory.rst:
	New file.
	* doc/gcc/funding.rst: New file.
	* doc/gcc/gcc-command-options.rst: New file.
	* doc/gcc/gcc-command-options/c++-modules.rst: New file.
	* doc/gcc/gcc-command-options/compiling-c++-programs.rst: New file.
	* doc/gcc/gcc-command-options/description.rst: New file.
	* doc/gcc/gcc-command-options/environment-variables-affecting-gcc.rst: New file.
	* doc/gcc/gcc-command-options/gcc-developer-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/aarch64-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/adapteva-epiphany-options.rst:
	New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/amd-gcn-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/arc-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/arm-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/avr-mmcu.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/avr-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/blackfin-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/c-sky-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/c6x-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/cris-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/darwin-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/dec-alpha-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/ebpf-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/fr30-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/frv-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/ft32-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/gnu-linux-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/h8-300-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/hppa-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/ia-64-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/ibm-rs-6000-and-powerpc-options.rst:
	New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/lm32-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/loongarch-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/m32c-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/m32r-d-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/m680x0-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/mcore-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/mep-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/microblaze-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/mips-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/mmix-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/mn10300-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/moxie-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/msp430-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/nds32-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/nios-ii-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/nvidia-ptx-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/openrisc-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/options-for-system-v.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/pdp-11-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/picochip-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/powerpc-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/pru-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/risc-v-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/rl78-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/rx-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/s-390-and-zseries-options.rst:
	New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/score-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/sh-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/solaris-2-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/sparc-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/v850-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/vax-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/visium-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/vms-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/vxworks-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/x86-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/x86-windows-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/xstormy16-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/xtensa-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/zseries-options.rst: New file.
	* doc/gcc/gcc-command-options/option-summary.rst: New file.
	* doc/gcc/gcc-command-options/options-controlling-c++-dialect.rst: New file.
	* doc/gcc/gcc-command-options/options-controlling-c-dialect.rst: New file.
	* doc/gcc/gcc-command-options/options-controlling-objective-c-and-objective-c++-dialects.rst:
	New file.
	* doc/gcc/gcc-command-options/options-controlling-the-kind-of-output.rst: New file.
	* doc/gcc/gcc-command-options/options-controlling-the-preprocessor.rst: New file.
	* doc/gcc/gcc-command-options/options-for-code-generation-conventions.rst: New file.
	* doc/gcc/gcc-command-options/options-for-debugging-your-program.rst: New file.
	* doc/gcc/gcc-command-options/options-for-directory-search.rst: New file.
	* doc/gcc/gcc-command-options/options-for-linking.rst: New file.
	* doc/gcc/gcc-command-options/options-that-control-optimization.rst: New file.
	* doc/gcc/gcc-command-options/options-that-control-static-analysis.rst: New file.
	* doc/gcc/gcc-command-options/options-to-control-diagnostic-messages-formatting.rst:
	New file.
	* doc/gcc/gcc-command-options/options-to-request-or-suppress-warnings.rst: New file.
	* doc/gcc/gcc-command-options/passing-options-to-the-assembler.rst: New file.
	* doc/gcc/gcc-command-options/program-instrumentation-options.rst: New file.
	* doc/gcc/gcc-command-options/specifying-subprocesses-and-the-switches-to-pass-to-them.rst:
	New file.
	* doc/gcc/gcc-command-options/using-precompiled-headers.rst: New file.
	* doc/gcc/gcc.rst: New file.
	* doc/gcc/gcov-dump.rst: New file.
	* doc/gcc/gcov-tool.rst: New file.
	* doc/gcc/gcov.rst: New file.
	* doc/gcc/gcov/brief-description-of-gcov-data-files.rst: New file.
	* doc/gcc/gcov/data-file-relocation-to-support-cross-profiling.rst: New file.
	* doc/gcc/gcov/introduction-to-gcov.rst: New file.
	* doc/gcc/gcov/invoking-gcov.rst: New file.
	* doc/gcc/gcov/profiling-and-test-coverage-in-freestanding-environments.rst: New file.
	* doc/gcc/gcov/using-gcov-with-gcc-optimization.rst: New file.
	* doc/gcc/general-public-license-3.rst: New file.
	* doc/gcc/gnu-free-documentation-license.rst: New file.
	* doc/gcc/gnu-objective-c-features.rst: New file.
	* doc/gcc/gnu-objective-c-features/compatibilityalias.rst: New file.
	* doc/gcc/gnu-objective-c-features/constant-string-objects.rst: New file.
	* doc/gcc/gnu-objective-c-features/exceptions.rst: New file.
	* doc/gcc/gnu-objective-c-features/fast-enumeration.rst: New file.
	* doc/gcc/gnu-objective-c-features/garbage-collection.rst: New file.
	* doc/gcc/gnu-objective-c-features/gnu-objective-c-runtime-api.rst: New file.
	* doc/gcc/gnu-objective-c-features/load-executing-code-before-main.rst: New file.
	* doc/gcc/gnu-objective-c-features/messaging-with-the-gnu-objective-c-runtime.rst: New file.
	* doc/gcc/gnu-objective-c-features/synchronization.rst: New file.
	* doc/gcc/gnu-objective-c-features/type-encoding.rst: New file.
	* doc/gcc/gnu.rst: New file.
	* doc/gcc/have-you-found-a-bug.rst: New file.
	* doc/gcc/how-and-where-to-report-bugs.rst: New file.
	* doc/gcc/how-to-get-help-with-gcc.rst: New file.
	* doc/gcc/index.rst: New file.
	* doc/gcc/indices-and-tables.rst: New file.
	* doc/gcc/known-causes-of-trouble-with-gcc.rst: New file.
	* doc/gcc/known-causes-of-trouble-with-gcc/actual-bugs-we-havent-fixed-yet.rst: New file.
	* doc/gcc/known-causes-of-trouble-with-gcc/certain-changes-we-dont-want-to-make.rst:
	New file.
	* doc/gcc/known-causes-of-trouble-with-gcc/common-misunderstandings-with-gnu-c.rst:
	New file.
	* doc/gcc/known-causes-of-trouble-with-gcc/disappointments-and-misunderstandings.rst:
	New file.
	* doc/gcc/known-causes-of-trouble-with-gcc/fixed-header-files.rst: New file.
	* doc/gcc/known-causes-of-trouble-with-gcc/incompatibilities-of-gcc.rst: New file.
	* doc/gcc/known-causes-of-trouble-with-gcc/interoperation.rst: New file.
	* doc/gcc/known-causes-of-trouble-with-gcc/standard-libraries.rst: New file.
	* doc/gcc/known-causes-of-trouble-with-gcc/warning-messages-and-error-messages.rst:
	New file.
	* doc/gcc/language-standards-supported-by-gcc.rst: New file.
	* doc/gcc/language-standards-supported-by-gcc/c++-language.rst: New file.
	* doc/gcc/language-standards-supported-by-gcc/c-language.rst: New file.
	* doc/gcc/language-standards-supported-by-gcc/d-language.rst: New file.
	* doc/gcc/language-standards-supported-by-gcc/go-language.rst: New file.
	* doc/gcc/language-standards-supported-by-gcc/objective-c-and-objective-c++-languages.rst:
	New file.
	* doc/gcc/language-standards-supported-by-gcc/references-for-other-languages.rst: New file.
	* doc/gcc/lto-dump.rst: New file.
	* doc/gcc/programming-languages-supported-by-gcc.rst: New file.
	* doc/gcc/reporting-bugs.rst: New file.
	* doc/gccint/analysis-and-optimization-of-gimple-tuples.rst: New file.
	* doc/gccint/analysis-and-optimization-of-gimple-tuples/alias-analysis.rst: New file.
	* doc/gccint/analysis-and-optimization-of-gimple-tuples/annotations.rst: New file.
	* doc/gccint/analysis-and-optimization-of-gimple-tuples/memory-model.rst: New file.
	* doc/gccint/analysis-and-optimization-of-gimple-tuples/ssa-operands.rst: New file.
	* doc/gccint/analysis-and-optimization-of-gimple-tuples/static-single-assignment.rst:
	New file.
	* doc/gccint/analysis-and-representation-of-loops.rst: New file.
	* doc/gccint/analysis-and-representation-of-loops/data-dependency-analysis.rst: New file.
	* doc/gccint/analysis-and-representation-of-loops/iv-analysis-on-rtl.rst: New file.
	* doc/gccint/analysis-and-representation-of-loops/loop-closed-ssa-form.rst: New file.
	* doc/gccint/analysis-and-representation-of-loops/loop-manipulation.rst: New file.
	* doc/gccint/analysis-and-representation-of-loops/loop-querying.rst: New file.
	* doc/gccint/analysis-and-representation-of-loops/loop-representation.rst: New file.
	* doc/gccint/analysis-and-representation-of-loops/number-of-iterations-analysis.rst:
	New file.
	* doc/gccint/analysis-and-representation-of-loops/scalar-evolutions.rst: New file.
	* doc/gccint/analyzer-internals.rst: New file.
	* doc/gccint/collect2.rst: New file.
	* doc/gccint/conf.py: New file.
	* doc/gccint/contributing-to-gcc-development.rst: New file.
	* doc/gccint/contributors-to-gcc.rst: New file.
	* doc/gccint/control-flow-graph.rst: New file.
	* doc/gccint/control-flow-graph/basic-blocks.rst: New file.
	* doc/gccint/control-flow-graph/edges.rst: New file.
	* doc/gccint/control-flow-graph/liveness-information.rst: New file.
	* doc/gccint/control-flow-graph/maintaining-the-cfg.rst: New file.
	* doc/gccint/control-flow-graph/profile-information.rst: New file.
	* doc/gccint/copyright.rst: New file.
	* doc/gccint/debugging-the-analyzer.rst: New file.
	* doc/gccint/funding.rst: New file.
	* doc/gccint/gcc-and-portability.rst: New file.
	* doc/gccint/general-public-license-3.rst: New file.
	* doc/gccint/generic.rst: New file.
	* doc/gccint/generic/attributes-in-trees.rst: New file.
	* doc/gccint/generic/c-and-c++-trees.rst: New file.
	* doc/gccint/generic/declarations.rst: New file.
	* doc/gccint/generic/deficiencies.rst: New file.
	* doc/gccint/generic/expressions.rst: New file.
	* doc/gccint/generic/functions.rst: New file.
	* doc/gccint/generic/language-dependent-trees.rst: New file.
	* doc/gccint/generic/overview.rst: New file.
	* doc/gccint/generic/statements.rst: New file.
	* doc/gccint/generic/types.rst: New file.
	* doc/gccint/gimple-api.rst: New file.
	* doc/gccint/gimple.rst: New file.
	* doc/gccint/gimple/adding-a-new-gimple-statement-code.rst: New file.
	* doc/gccint/gimple/class-hierarchy-of-gimple-statements.rst: New file.
	* doc/gccint/gimple/exception-handling.rst: New file.
	* doc/gccint/gimple/gimple-instruction-set.rst: New file.
	* doc/gccint/gimple/gimple-sequences.rst: New file.
	* doc/gccint/gimple/manipulating-gimple-statements.rst: New file.
	* doc/gccint/gimple/operands.rst: New file.
	* doc/gccint/gimple/sequence-iterators.rst: New file.
	* doc/gccint/gimple/statement-and-operand-traversals.rst: New file.
	* doc/gccint/gimple/temporaries.rst: New file.
	* doc/gccint/gimple/tuple-representation.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleasm.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleassign.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimplebind.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimplecall.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimplecatch.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimplecond.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimpledebug.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleehfilter.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimplegoto.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimplelabel.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimplenop.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompatomicload.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompatomicstore.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompcontinue.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompcritical.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompfor.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompmaster.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompordered.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompparallel.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompreturn.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompsection.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompsections.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompsingle.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimplephi.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleresx.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimplereturn.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleswitch.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimpletry.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimplewithcleanupexpr.rst: New file.
	* doc/gccint/gnu-free-documentation-license.rst: New file.
	* doc/gccint/guidelines-for-diagnostics.rst: New file.
	* doc/gccint/guidelines-for-options.rst: New file.
	* doc/gccint/host-common.rst: New file.
	* doc/gccint/host-configuration.rst: New file.
	* doc/gccint/host-filesystem.rst: New file.
	* doc/gccint/host-makefile-fragments.rst: New file.
	* doc/gccint/host-misc.rst: New file.
	* doc/gccint/index.rst: New file.
	* doc/gccint/indices-and-tables.rst: New file.
	* doc/gccint/interfacing-to-gcc-output.rst: New file.
	* doc/gccint/introduction.rst: New file.
	* doc/gccint/language-front-ends-in-gcc.rst: New file.
	* doc/gccint/link-time-optimization.rst: New file.
	* doc/gccint/link-time-optimization/design-overview.rst: New file.
	* doc/gccint/link-time-optimization/internal-flags-controlling-lto1.rst: New file.
	* doc/gccint/link-time-optimization/lto-file-sections.rst: New file.
	* doc/gccint/link-time-optimization/using-summary-information-in-ipa-passes.rst: New file.
	* doc/gccint/link-time-optimization/whole-program-assumptions-linker-plugin-and-symbol-visibilities.rst:
	New file.
	* doc/gccint/machine-descriptions.rst: New file.
	* doc/gccint/machine-descriptions/c-statements-for-assembler-output.rst: New file.
	* doc/gccint/machine-descriptions/canonicalization-of-instructions.rst: New file.
	* doc/gccint/machine-descriptions/conditional-execution.rst: New file.
	* doc/gccint/machine-descriptions/constant-definitions.rst: New file.
	* doc/gccint/machine-descriptions/defining-how-to-split-instructions.rst: New file.
	* doc/gccint/machine-descriptions/defining-jump-instruction-patterns.rst: New file.
	* doc/gccint/machine-descriptions/defining-looping-instruction-patterns.rst: New file.
	* doc/gccint/machine-descriptions/defining-rtl-sequences-for-code-generation.rst: New file.
	* doc/gccint/machine-descriptions/everything-about-instruction-patterns.rst: New file.
	* doc/gccint/machine-descriptions/example-of-defineinsn.rst: New file.
	* doc/gccint/machine-descriptions/including-patterns-in-machine-descriptions.rst: New file.
	* doc/gccint/machine-descriptions/instruction-attributes.rst: New file.
	* doc/gccint/machine-descriptions/interdependence-of-patterns.rst: New file.
	* doc/gccint/machine-descriptions/iterators.rst: New file.
	* doc/gccint/machine-descriptions/machine-specific-peephole-optimizers.rst: New file.
	* doc/gccint/machine-descriptions/operand-constraints.rst: New file.
	* doc/gccint/machine-descriptions/output-templates-and-operand-substitution.rst: New file.
	* doc/gccint/machine-descriptions/overview-of-how-the-machine-description-is-used.rst:
	New file.
	* doc/gccint/machine-descriptions/predicates.rst: New file.
	* doc/gccint/machine-descriptions/rtl-template.rst: New file.
	* doc/gccint/machine-descriptions/rtl-templates-transformations.rst: New file.
	* doc/gccint/machine-descriptions/standard-pattern-names-for-generation.rst: New file.
	* doc/gccint/machine-descriptions/when-the-order-of-patterns-matters.rst: New file.
	* doc/gccint/makefile-fragments.rst: New file.
	* doc/gccint/match-and-simplify.rst: New file.
	* doc/gccint/memory-management-and-type-information.rst: New file.
	* doc/gccint/memory-management-and-type-information/how-to-invoke-the-garbage-collector.rst:
	New file.
	* doc/gccint/memory-management-and-type-information/marking-roots-for-the-garbage-collector.rst:
	New file.
	* doc/gccint/memory-management-and-type-information/source-files-containing-type-information.rst:
	New file.
	* doc/gccint/memory-management-and-type-information/support-for-inheritance.rst: New file.
	* doc/gccint/memory-management-and-type-information/support-for-user-provided-gc-marking-routines.rst:
	New file.
	* doc/gccint/memory-management-and-type-information/the-inside-of-a-gty.rst: New file.
	* doc/gccint/memory-management-and-type-information/troubleshooting-the-garbage-collector.rst:
	New file.
	* doc/gccint/option-file-format.rst: New file.
	* doc/gccint/option-properties.rst: New file.
	* doc/gccint/option-specification-files.rst: New file.
	* doc/gccint/passes-and-files-of-the-compiler.rst: New file.
	* doc/gccint/passes-and-files-of-the-compiler/gimplification-pass.rst: New file.
	* doc/gccint/passes-and-files-of-the-compiler/inter-procedural-optimization-passes.rst:
	New file.
	* doc/gccint/passes-and-files-of-the-compiler/optimization-info.rst: New file.
	* doc/gccint/passes-and-files-of-the-compiler/parsing-pass.rst: New file.
	* doc/gccint/passes-and-files-of-the-compiler/pass-manager.rst: New file.
	* doc/gccint/passes-and-files-of-the-compiler/rtl-passes.rst: New file.
	* doc/gccint/passes-and-files-of-the-compiler/tree-ssa-passes.rst: New file.
	* doc/gccint/plugins.rst: New file.
	* doc/gccint/plugins/building-gcc-plugins.rst: New file.
	* doc/gccint/plugins/controlling-which-passes-are-being-run.rst: New file.
	* doc/gccint/plugins/giving-information-about-a-plugin.rst: New file.
	* doc/gccint/plugins/interacting-with-the-gcc-garbage-collector.rst: New file.
	* doc/gccint/plugins/interacting-with-the-pass-manager.rst: New file.
	* doc/gccint/plugins/keeping-track-of-available-passes.rst: New file.
	* doc/gccint/plugins/loading-plugins.rst: New file.
	* doc/gccint/plugins/plugin-api.rst: New file.
	* doc/gccint/plugins/recording-information-about-pass-execution.rst: New file.
	* doc/gccint/plugins/registering-custom-attributes-or-pragmas.rst: New file.
	* doc/gccint/rtl-representation.rst: New file.
	* doc/gccint/rtl-representation/access-to-operands.rst: New file.
	* doc/gccint/rtl-representation/access-to-special-operands.rst: New file.
	* doc/gccint/rtl-representation/assembler-instructions-as-expressions.rst: New file.
	* doc/gccint/rtl-representation/bit-fields.rst: New file.
	* doc/gccint/rtl-representation/comparison-operations.rst: New file.
	* doc/gccint/rtl-representation/constant-expression-types.rst: New file.
	* doc/gccint/rtl-representation/conversions.rst: New file.
	* doc/gccint/rtl-representation/declarations.rst: New file.
	* doc/gccint/rtl-representation/embedded-side-effects-on-addresses.rst: New file.
	* doc/gccint/rtl-representation/flags-in-an-rtl-expression.rst: New file.
	* doc/gccint/rtl-representation/insns.rst: New file.
	* doc/gccint/rtl-representation/machine-modes.rst: New file.
	* doc/gccint/rtl-representation/on-the-side-ssa-form-for-rtl.rst: New file.
	* doc/gccint/rtl-representation/reading-rtl.rst: New file.
	* doc/gccint/rtl-representation/registers-and-memory.rst: New file.
	* doc/gccint/rtl-representation/rtl-classes-and-formats.rst: New file.
	* doc/gccint/rtl-representation/rtl-expressions-for-arithmetic.rst: New file.
	* doc/gccint/rtl-representation/rtl-object-types.rst: New file.
	* doc/gccint/rtl-representation/rtl-representation-of-function-call-insns.rst: New file.
	* doc/gccint/rtl-representation/side-effect-expressions.rst: New file.
	* doc/gccint/rtl-representation/structure-sharing-assumptions.rst: New file.
	* doc/gccint/rtl-representation/variable-location-debug-information-in-rtl.rst: New file.
	* doc/gccint/rtl-representation/vector-operations.rst: New file.
	* doc/gccint/sizes-and-offsets-as-runtime-invariants.rst: New file.
	* doc/gccint/sizes-and-offsets-as-runtime-invariants/alignment-of-polyints.rst: New file.
	* doc/gccint/sizes-and-offsets-as-runtime-invariants/arithmetic-on-polyints.rst: New file.
	* doc/gccint/sizes-and-offsets-as-runtime-invariants/comparisons-involving-polyint.rst:
	New file.
	* doc/gccint/sizes-and-offsets-as-runtime-invariants/computing-bounds-on-polyints.rst:
	New file.
	* doc/gccint/sizes-and-offsets-as-runtime-invariants/consequences-of-using-polyint.rst:
	New file.
	* doc/gccint/sizes-and-offsets-as-runtime-invariants/converting-polyints.rst: New file.
	* doc/gccint/sizes-and-offsets-as-runtime-invariants/guidelines-for-using-polyint.rst:
	New file.
	* doc/gccint/sizes-and-offsets-as-runtime-invariants/miscellaneous-polyint-routines.rst:
	New file.
	* doc/gccint/sizes-and-offsets-as-runtime-invariants/overview-of-polyint.rst: New file.
	* doc/gccint/source-tree-structure-and-build-system.rst: New file.
	* doc/gccint/source-tree-structure-and-build-system/configure-terms-and-history.rst:
	New file.
	* doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory.rst: New file.
	* doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/anatomy-of-a-language-front-end.rst:
	New file.
	* doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/anatomy-of-a-target-back-end.rst:
	New file.
	* doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/build-system-in-the-gcc-directory.rst:
	New file.
	* doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/building-documentation.rst:
	New file.
	* doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/configuration-in-the-gcc-directory.rst:
	New file.
	* doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/headers-installed-by-gcc.rst:
	New file.
	* doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/library-source-files-and-headers-under-the-gcc-directory.rst:
	New file.
	* doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/makefile-targets.rst:
	New file.
	* doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/subdirectories-of-gcc.rst:
	New file.
	* doc/gccint/source-tree-structure-and-build-system/top-level-source-directory.rst:
	New file.
	* doc/gccint/standard-header-file-directories.rst: New file.
	* doc/gccint/static-analyzer.rst: New file.
	* doc/gccint/target-macros.rst: New file.
	* doc/gccint/target-macros/adding-support-for-named-address-spaces.rst: New file.
	* doc/gccint/target-macros/addressing-modes.rst: New file.
	* doc/gccint/target-macros/adjusting-the-instruction-scheduler.rst: New file.
	* doc/gccint/target-macros/anchored-addresses.rst: New file.
	* doc/gccint/target-macros/c++-abi-parameters.rst: New file.
	* doc/gccint/target-macros/condition-code-status.rst: New file.
	* doc/gccint/target-macros/controlling-debugging-information-format.rst: New file.
	* doc/gccint/target-macros/controlling-the-compilation-driver-gcc.rst: New file.
	* doc/gccint/target-macros/cross-compilation-and-floating-point.rst: New file.
	* doc/gccint/target-macros/d-abi-parameters.rst: New file.
	* doc/gccint/target-macros/defining-coprocessor-specifics-for-mips-targets.rst: New file.
	* doc/gccint/target-macros/defining-data-structures-for-per-function-information.rst:
	New file.
	* doc/gccint/target-macros/defining-target-specific-uses-of-attribute.rst: New file.
	* doc/gccint/target-macros/defining-the-output-assembler-language.rst: New file.
	* doc/gccint/target-macros/defining-the-output-assembler-language/assembler-commands-for-alignment.rst:
	New file.
	* doc/gccint/target-macros/defining-the-output-assembler-language/assembler-commands-for-exception-regions.rst:
	New file.
	* doc/gccint/target-macros/defining-the-output-assembler-language/how-initialization-functions-are-handled.rst:
	New file.
	* doc/gccint/target-macros/defining-the-output-assembler-language/macros-controlling-initialization-routines.rst:
	New file.
	* doc/gccint/target-macros/defining-the-output-assembler-language/output-and-generation-of-labels.rst:
	New file.
	* doc/gccint/target-macros/defining-the-output-assembler-language/output-of-assembler-instructions.rst:
	New file.
	* doc/gccint/target-macros/defining-the-output-assembler-language/output-of-data.rst:
	New file.
	* doc/gccint/target-macros/defining-the-output-assembler-language/output-of-dispatch-tables.rst:
	New file.
	* doc/gccint/target-macros/defining-the-output-assembler-language/output-of-uninitialized-variables.rst:
	New file.
	* doc/gccint/target-macros/defining-the-output-assembler-language/the-overall-framework-of-an-assembler-file.rst:
	New file.
	* doc/gccint/target-macros/describing-relative-costs-of-operations.rst: New file.
	* doc/gccint/target-macros/dividing-the-output-into-sections-texts-data.rst: New file.
	* doc/gccint/target-macros/emulating-tls.rst: New file.
	* doc/gccint/target-macros/implementing-the-varargs-macros.rst: New file.
	* doc/gccint/target-macros/implicit-calls-to-library-routines.rst: New file.
	* doc/gccint/target-macros/layout-of-source-language-data-types.rst: New file.
	* doc/gccint/target-macros/miscellaneous-parameters.rst: New file.
	* doc/gccint/target-macros/mode-switching-instructions.rst: New file.
	* doc/gccint/target-macros/parameters-for-precompiled-header-validity-checking.rst:
	New file.
	* doc/gccint/target-macros/position-independent-code.rst: New file.
	* doc/gccint/target-macros/register-classes.rst: New file.
	* doc/gccint/target-macros/register-usage.rst: New file.
	* doc/gccint/target-macros/run-time-target-specification.rst: New file.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions.rst: New file.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/basic-stack-layout.rst:
	New file.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/caller-saves-register-allocation.rst:
	New file.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/eliminating-frame-pointer-and-arg-pointer.rst:
	New file.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/exception-handling-support.rst:
	New file.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/function-entry-and-exit.rst:
	New file.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/generating-code-for-profiling.rst:
	New file.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/how-large-values-are-returned.rst:
	New file.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/how-scalar-function-values-are-returned.rst:
	New file.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/miscellaneous-register-hooks.rst:
	New file.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/passing-arguments-in-registers.rst:
	New file.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/passing-function-arguments-on-the-stack.rst:
	New file.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/permitting-tail-calls.rst:
	New file.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/registers-that-address-the-stack-frame.rst:
	New file.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/shrink-wrapping-separate-components.rst:
	New file.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/specifying-how-stack-checking-is-done.rst:
	New file.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/stack-smashing-protection.rst:
	New file.
	* doc/gccint/target-macros/storage-layout.rst: New file.
	* doc/gccint/target-macros/support-for-nested-functions.rst: New file.
	* doc/gccint/target-macros/the-global-targetm-variable.rst: New file.
	* doc/gccint/target-makefile-fragments.rst: New file.
	* doc/gccint/testsuites.rst: New test.
	* doc/gccint/testsuites/ada-language-testsuites.rst: New test.
	* doc/gccint/testsuites/c-language-testsuites.rst: New test.
	* doc/gccint/testsuites/directives-used-within-dejagnu-tests.rst: New test.
	* doc/gccint/testsuites/directives-used-within-dejagnu-tests/commands-for-use-in-dg-final.rst:
	New test.
	* doc/gccint/testsuites/directives-used-within-dejagnu-tests/features-for-dg-add-options.rst:
	New test.
	* doc/gccint/testsuites/directives-used-within-dejagnu-tests/keywords-describing-target-attributes.rst:
	New test.
	* doc/gccint/testsuites/directives-used-within-dejagnu-tests/selecting-targets-to-which-a-test-applies.rst:
	New test.
	* doc/gccint/testsuites/directives-used-within-dejagnu-tests/syntax-and-descriptions-of-test-directives.rst:
	New test.
	* doc/gccint/testsuites/directives-used-within-dejagnu-tests/variants-of-dg-require-support.rst:
	New test.
	* doc/gccint/testsuites/idioms-used-in-testsuite-code.rst: New test.
	* doc/gccint/testsuites/support-for-testing-binary-compatibility.rst: New test.
	* doc/gccint/testsuites/support-for-testing-gcov.rst: New test.
	* doc/gccint/testsuites/support-for-testing-gimple-passes.rst: New test.
	* doc/gccint/testsuites/support-for-testing-link-time-optimizations.rst: New test.
	* doc/gccint/testsuites/support-for-testing-profile-directed-optimizations.rst: New test.
	* doc/gccint/testsuites/support-for-testing-rtl-passes.rst: New test.
	* doc/gccint/testsuites/support-for-torture-testing-using-multiple-options.rst: New test.
	* doc/gccint/the-gcc-low-level-runtime-library.rst: New file.
	* doc/gccint/the-gcc-low-level-runtime-library/language-independent-routines-for-exception-handling.rst:
	New file.
	* doc/gccint/the-gcc-low-level-runtime-library/miscellaneous-runtime-library-routines.rst:
	New file.
	* doc/gccint/the-gcc-low-level-runtime-library/routines-for-decimal-floating-point-emulation.rst:
	New file.
	* doc/gccint/the-gcc-low-level-runtime-library/routines-for-fixed-point-fractional-emulation.rst:
	New file.
	* doc/gccint/the-gcc-low-level-runtime-library/routines-for-floating-point-emulation.rst:
	New file.
	* doc/gccint/the-gcc-low-level-runtime-library/routines-for-integer-arithmetic.rst:
	New file.
	* doc/gccint/the-language.rst: New file.
	* doc/gccint/user-experience-guidelines.rst: New file.
	* doc/install/binaries.rst: New file.
	* doc/install/building.rst: New file.
	* doc/install/building/building-a-cross-compiler.rst: New file.
	* doc/install/building/building-a-native-compiler.rst: New file.
	* doc/install/building/building-in-parallel.rst: New file.
	* doc/install/building/building-the-ada-compiler.rst: New file.
	* doc/install/building/building-the-d-compiler.rst: New file.
	* doc/install/building/building-with-profile-feedback.rst: New file.
	* doc/install/conf.py: New file.
	* doc/install/configuration.rst: New file.
	* doc/install/copyright.rst: New file.
	* doc/install/downloading-gcc.rst: New file.
	* doc/install/final-installation.rst: New file.
	* doc/install/gnu-free-documentation-license.rst: New file.
	* doc/install/host-target-specific-installation-notes-for-gcc.rst: New file.
	* doc/install/how-can-you-run-the-testsuite-on-selected-tests.rst: New test.
	* doc/install/how-to-interpret-test-results.rst: New file.
	* doc/install/index.rst: New file.
	* doc/install/indices-and-tables.rst: New file.
	* doc/install/installing-gcc.rst: New file.
	* doc/install/passing-options-and-running-multiple-testsuites.rst: New test.
	* doc/install/prerequisites.rst: New file.
	* doc/install/submitting-test-results.rst: New file.
	* doc/install/testing.rst: New file.

2022-11-14  Martin Liska  <mliska@suse.cz>

	* doc/gcc/gcc-command-options/options-controlling-c++-dialect.rst: Revert.

2022-11-14  Martin Liska  <mliska@suse.cz>

	Revert:
	2022-11-14  Martin Liska  <mliska@suse.cz>

	* common/common-target.def: Port to RST.
	* target.def: Port to RST.

2022-11-14  Martin Liska  <mliska@suse.cz>

	Revert:
	2022-11-09  Martin Liska  <mliska@suse.cz>

	* doc/gccint/target-macros/adding-support-for-named-address-spaces.rst: Use tm.rst.in file.
	* doc/gccint/target-macros/addressing-modes.rst: Likewise.
	* doc/gccint/target-macros/adjusting-the-instruction-scheduler.rst: Likewise.
	* doc/gccint/target-macros/anchored-addresses.rst: Likewise.
	* doc/gccint/target-macros/c++-abi-parameters.rst: Likewise.
	* doc/gccint/target-macros/condition-code-status.rst: Likewise.
	* doc/gccint/target-macros/controlling-debugging-information-format.rst: Likewise.
	* doc/gccint/target-macros/controlling-the-compilation-driver-gcc.rst: Likewise.
	* doc/gccint/target-macros/d-abi-parameters.rst: Likewise.
	* doc/gccint/target-macros/defining-target-specific-uses-of-attribute.rst: Likewise.
	* doc/gccint/target-macros/defining-the-output-assembler-language/assembler-commands-for-exception-regions.rst:
	Likewise.
	* doc/gccint/target-macros/defining-the-output-assembler-language/macros-controlling-initialization-routines.rst:
	Likewise.
	* doc/gccint/target-macros/defining-the-output-assembler-language/output-and-generation-of-labels.rst:
	Likewise.
	* doc/gccint/target-macros/defining-the-output-assembler-language/output-of-assembler-instructions.rst:
	Likewise.
	* doc/gccint/target-macros/defining-the-output-assembler-language/output-of-data.rst:
	Likewise.
	* doc/gccint/target-macros/defining-the-output-assembler-language/output-of-dispatch-tables.rst:
	Likewise.
	* doc/gccint/target-macros/defining-the-output-assembler-language/the-overall-framework-of-an-assembler-file.rst:
	Likewise.
	* doc/gccint/target-macros/describing-relative-costs-of-operations.rst: Likewise.
	* doc/gccint/target-macros/dividing-the-output-into-sections-texts-data.rst: Likewise.
	* doc/gccint/target-macros/emulating-tls.rst: Likewise.
	* doc/gccint/target-macros/implementing-the-varargs-macros.rst: Likewise.
	* doc/gccint/target-macros/implicit-calls-to-library-routines.rst: Likewise.
	* doc/gccint/target-macros/layout-of-source-language-data-types.rst: Likewise.
	* doc/gccint/target-macros/miscellaneous-parameters.rst: Likewise.
	* doc/gccint/target-macros/mode-switching-instructions.rst: Likewise.
	* doc/gccint/target-macros/parameters-for-precompiled-header-validity-checking.rst:
	Likewise.
	* doc/gccint/target-macros/register-classes.rst: Likewise.
	* doc/gccint/target-macros/register-usage.rst: Likewise.
	* doc/gccint/target-macros/run-time-target-specification.rst: Likewise.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/basic-stack-layout.rst:
	Likewise.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/eliminating-frame-pointer-and-arg-pointer.rst:
	Likewise.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/function-entry-and-exit.rst:
	Likewise.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/generating-code-for-profiling.rst:
	Likewise.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/how-large-values-are-returned.rst:
	Likewise.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/how-scalar-function-values-are-returned.rst:
	Likewise.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/miscellaneous-register-hooks.rst:
	Likewise.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/passing-arguments-in-registers.rst:
	Likewise.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/passing-function-arguments-on-the-stack.rst:
	Likewise.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/permitting-tail-calls.rst:
	Likewise.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/registers-that-address-the-stack-frame.rst:
	Likewise.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/shrink-wrapping-separate-components.rst:
	Likewise.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/specifying-how-stack-checking-is-done.rst:
	Likewise.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/stack-smashing-protection.rst:
	Likewise.
	* doc/gccint/target-macros/storage-layout.rst: Likewise.
	* doc/gccint/target-macros/support-for-nested-functions.rst: Likewise.

2022-11-14  Martin Liska  <mliska@suse.cz>

	Revert:
	2022-11-14  Martin Liska  <mliska@suse.cz>

	* Makefile.in: Support Sphinx based documentation.
	* configure: Regenerate.
	* configure.ac: Support Sphinx based documentation.
	* genhooks.cc (struct s_hook): Emit tm.rst.in file.

2022-11-14  Martin Liska  <mliska@suse.cz>

	Revert:
	2022-11-09  Martin Liska  <mliska@suse.cz>

	* doc/gccint/target-macros/tm.rst.in: New file.

2022-11-14  Martin Liska  <mliska@suse.cz>

	Revert:
	2022-11-14  Martin Liska  <mliska@suse.cz>

	* doc/analyzer.texi: Removed.
	* doc/avr-mmcu.texi: Removed.
	* doc/bugreport.texi: Removed.
	* doc/cfg.texi: Removed.
	* doc/collect2.texi: Removed.
	* doc/compat.texi: Removed.
	* doc/configfiles.texi: Removed.
	* doc/configterms.texi: Removed.
	* doc/contrib.texi: Removed.
	* doc/contribute.texi: Removed.
	* doc/cpp.texi: Removed.
	* doc/cppdiropts.texi: Removed.
	* doc/cppenv.texi: Removed.
	* doc/cppinternals.texi: Removed.
	* doc/cppopts.texi: Removed.
	* doc/cppwarnopts.texi: Removed.
	* doc/extend.texi: Removed.
	* doc/fragments.texi: Removed.
	* doc/frontends.texi: Removed.
	* doc/gcc.texi: Removed.
	* doc/gccint.texi: Removed.
	* doc/gcov-dump.texi: Removed.
	* doc/gcov-tool.texi: Removed.
	* doc/gcov.texi: Removed.
	* doc/generic.texi: Removed.
	* doc/gimple.texi: Removed.
	* doc/gnu.texi: Removed.
	* doc/gty.texi: Removed.
	* doc/headerdirs.texi: Removed.
	* doc/hostconfig.texi: Removed.
	* doc/implement-c.texi: Removed.
	* doc/implement-cxx.texi: Removed.
	* doc/include/fdl.texi: Removed.
	* doc/include/funding.texi: Removed.
	* doc/include/gcc-common.texi: Removed.
	* doc/include/gpl_v3.texi: Removed.
	* doc/install.texi: Removed.
	* doc/interface.texi: Removed.
	* doc/invoke.texi: Removed.
	* doc/languages.texi: Removed.
	* doc/libgcc.texi: Removed.
	* doc/loop.texi: Removed.
	* doc/lto-dump.texi: Removed.
	* doc/lto.texi: Removed.
	* doc/makefile.texi: Removed.
	* doc/match-and-simplify.texi: Removed.
	* doc/md.texi: Removed.
	* doc/objc.texi: Removed.
	* doc/optinfo.texi: Removed.
	* doc/options.texi: Removed.
	* doc/passes.texi: Removed.
	* doc/plugins.texi: Removed.
	* doc/poly-int.texi: Removed.
	* doc/portability.texi: Removed.
	* doc/rtl.texi: Removed.
	* doc/service.texi: Removed.
	* doc/sourcebuild.texi: Removed.
	* doc/standards.texi: Removed.
	* doc/tm.texi: Removed.
	* doc/tree-ssa.texi: Removed.
	* doc/trouble.texi: Removed.
	* doc/ux.texi: Removed.
	* doc/tm.texi.in: Removed.

2022-11-14  Martin Liska  <mliska@suse.cz>

	Revert:
	2022-11-09  Martin Liska  <mliska@suse.cz>

	* target.def: Use proper lexers for target macros.
	* doc/gccint/target-macros/tm.rst.in: Re-generate.

2022-11-14  Martin Liska  <mliska@suse.cz>

	Revert:
	2022-11-09  Martin Liska  <mliska@suse.cz>

	* Makefile.in: Support --with-sphinx-build.
	* configure.ac:
	* configure: Regenerate.

2022-11-14  Martin Liska  <mliska@suse.cz>

	Revert:
	2022-11-14  Martin Liska  <mliska@suse.cz>

	* doc/gcc/gcc-command-options/options-controlling-the-kind-of-output.rst:
	Fix cross manual refs.
	* doc/gcc/language-standards-supported-by-gcc/references-for-other-languages.rst:
	Likewise.

2022-11-14  Martin Liska  <mliska@suse.cz>

	Revert:
	2022-11-09  Martin Liska  <mliska@suse.cz>

	* doc/gccint/target-macros/defining-the-output-assembler-language/assembler-commands-for-exception-regions.rst:
	Do not include tm.rst.in.
	* doc/gccint/target-macros/defining-the-output-assembler-language/the-overall-framework-of-an-assembler-file.rst:
	Likewise.
	* doc/gccint/target-macros/run-time-target-specification.rst:
	Likewise.

2022-11-14  Martin Liska  <mliska@suse.cz>

	Revert:
	2022-11-09  Martin Liska  <mliska@suse.cz>

	* doc/gccint/target-macros/stack-layout-and-calling-conventions/passing-arguments-in-registers.rst:
	Port to RST.
	* doc/gccint/target-macros/storage-layout.rst: Likewise.
	* doc/gcc/gcc-command-options/machine-dependent-options/x86-options.rst: Sync with master.
	* doc/gcc/gcc-command-options/option-summary.rst: Likewise.

2022-11-14  Martin Liska  <mliska@suse.cz>

	Revert:
	2022-11-09  Martin Liska  <mliska@suse.cz>

	* Makefile.in: Support installation if sphinx-build is missing.

2022-11-14  Martin Liska  <mliska@suse.cz>

	Revert:
	2022-11-09  Martin Liska  <mliska@suse.cz>

	* Makefile.in: Add vpath default for .rst files.
	* config/avr/avr-devices.cc: For port RST.
	* config/avr/avr-mcus.def: Update path.
	* config/avr/gen-avr-mmcu-texi.cc: Moved to...
	* config/avr/gen-avr-mmcu-rst.cc: ...here.
	* config/avr/t-avr: Update to rst.
	* doc/gcc/gcc-command-options/machine-dependent-options/avr-mmcu.rst: Re-generate.

2022-11-14  Martin Liska  <mliska@suse.cz>

	Revert:
	2022-11-09  Martin Liska  <mliska@suse.cz>

	* opts.cc (get_option_html_page): Port to sphinx URLs.
	(get_option_url): Likewise.
	(test_get_option_html_page): Likewise.

2022-11-14  Martin Liska  <mliska@suse.cz>

	Revert:
	2022-11-14  Martin Liska  <mliska@suse.cz>

	* doc/cpp/character-sets.rst:
	Add trailing newline.
	* doc/cpp/conditional-syntax.rst:
	Add trailing newline.
	* doc/cpp/conditional-uses.rst:
	Add trailing newline.
	* doc/cpp/conditionals.rst:
	Add trailing newline.
	* doc/cpp/copyright.rst:
	Add trailing newline.
	* doc/cpp/deleted-code.rst:
	Add trailing newline.
	* doc/cpp/diagnostics.rst:
	Add trailing newline.
	* doc/cpp/environment-variables.rst:
	Add trailing newline.
	* doc/cpp/gnu-free-documentation-license.rst:
	Add trailing newline.
	* doc/cpp/header-files.rst:
	Add trailing newline.
	* doc/cpp/header-files/alternatives-to-wrapper-ifndef.rst:
	Add trailing newline.
	* doc/cpp/header-files/computed-includes.rst:
	Add trailing newline.
	* doc/cpp/header-files/include-operation.rst:
	Add trailing newline.
	* doc/cpp/header-files/include-syntax.rst:
	Add trailing newline.
	* doc/cpp/header-files/once-only-headers.rst:
	Add trailing newline.
	* doc/cpp/header-files/search-path.rst:
	Add trailing newline.
	* doc/cpp/header-files/system-headers.rst:
	Add trailing newline.
	* doc/cpp/header-files/wrapper-headers.rst:
	Add trailing newline.
	* doc/cpp/implementation-defined-behavior.rst:
	Add trailing newline.
	* doc/cpp/implementation-details.rst:
	Add trailing newline.
	* doc/cpp/implementation-limits.rst:
	Add trailing newline.
	* doc/cpp/index.rst:
	Add trailing newline.
	* doc/cpp/indices-and-tables.rst:
	Add trailing newline.
	* doc/cpp/initial-processing.rst:
	Add trailing newline.
	* doc/cpp/invocation.rst:
	Add trailing newline.
	* doc/cpp/line-control.rst:
	Add trailing newline.
	* doc/cpp/macros.rst:
	Add trailing newline.
	* doc/cpp/macros/concatenation.rst:
	Add trailing newline.
	* doc/cpp/macros/directives-within-macro-arguments.rst:
	Add trailing newline.
	* doc/cpp/macros/function-like-macros.rst:
	Add trailing newline.
	* doc/cpp/macros/macro-arguments.rst:
	Add trailing newline.
	* doc/cpp/macros/macro-pitfalls.rst:
	Add trailing newline.
	* doc/cpp/macros/object-like-macros.rst:
	Add trailing newline.
	* doc/cpp/macros/predefined-macros.rst:
	Add trailing newline.
	* doc/cpp/macros/stringizing.rst:
	Add trailing newline.
	* doc/cpp/macros/undefining-and-redefining-macros.rst:
	Add trailing newline.
	* doc/cpp/macros/variadic-macros.rst:
	Add trailing newline.
	* doc/cpp/obsolete-features.rst:
	Add trailing newline.
	* doc/cpp/other-directives.rst:
	Add trailing newline.
	* doc/cpp/overview.rst:
	Add trailing newline.
	* doc/cpp/pragmas.rst:
	Add trailing newline.
	* doc/cpp/preprocessor-output.rst:
	Add trailing newline.
	* doc/cpp/the-preprocessing-language.rst:
	Add trailing newline.
	* doc/cpp/tokenization.rst:
	Add trailing newline.
	* doc/cpp/traditional-lexical-analysis.rst:
	Add trailing newline.
	* doc/cpp/traditional-macros.rst:
	Add trailing newline.
	* doc/cpp/traditional-miscellany.rst:
	Add trailing newline.
	* doc/cpp/traditional-mode.rst:
	Add trailing newline.
	* doc/cpp/traditional-warnings.rst:
	Add trailing newline.
	* doc/cppinternals/copyright.rst:
	Add trailing newline.
	* doc/cppinternals/cppinternals.rst:
	Add trailing newline.
	* doc/cppinternals/cpplib.rst:
	Add trailing newline.
	* doc/cppinternals/files.rst:
	Add trailing newline.
	* doc/cppinternals/index.rst:
	Add trailing newline.
	* doc/cppinternals/indices-and-tables.rst:
	Add trailing newline.
	* doc/cppinternals/internal-representation-of-macros.rst:
	Add trailing newline.
	* doc/cppinternals/just-which-line-number-anyway.rst:
	Add trailing newline.
	* doc/cppinternals/lexing-a-line.rst:
	Add trailing newline.
	* doc/cppinternals/lexing-a-token.rst:
	Add trailing newline.
	* doc/cppinternals/looking-for-a-function-like-macros-opening-parenthesis.rst:
	Add trailing newline.
	* doc/cppinternals/macro-expansion-overview.rst:
	Add trailing newline.
	* doc/cppinternals/marking-tokens-ineligible-for-future-expansion.rst:
	Add trailing newline.
	* doc/cppinternals/multiple-include-optimization.rst:
	Add trailing newline.
	* doc/cppinternals/overview.rst:
	Add trailing newline.
	* doc/cppinternals/representation-of-line-numbers.rst:
	Add trailing newline.
	* doc/cppinternals/scanning-the-replacement-list-for-macros-to-expand.rst:
	Add trailing newline.
	* doc/gcc/binary-compatibility.rst:
	Add trailing newline.
	* doc/gcc/c++-implementation-defined-behavior.rst:
	Add trailing newline.
	* doc/gcc/c-implementation-defined-behavior.rst:
	Add trailing newline.
	* doc/gcc/c-implementation-defined-behavior/architecture.rst:
	Add trailing newline.
	* doc/gcc/c-implementation-defined-behavior/arrays-and-pointers.rst:
	Add trailing newline.
	* doc/gcc/c-implementation-defined-behavior/characters.rst:
	Add trailing newline.
	* doc/gcc/c-implementation-defined-behavior/declarators.rst:
	Add trailing newline.
	* doc/gcc/c-implementation-defined-behavior/environment.rst:
	Add trailing newline.
	* doc/gcc/c-implementation-defined-behavior/floating-point.rst:
	Add trailing newline.
	* doc/gcc/c-implementation-defined-behavior/hints.rst:
	Add trailing newline.
	* doc/gcc/c-implementation-defined-behavior/identifiers.rst:
	Add trailing newline.
	* doc/gcc/c-implementation-defined-behavior/integers.rst:
	Add trailing newline.
	* doc/gcc/c-implementation-defined-behavior/library-functions.rst:
	Add trailing newline.
	* doc/gcc/c-implementation-defined-behavior/locale-specific-behavior.rst:
	Add trailing newline.
	* doc/gcc/c-implementation-defined-behavior/preprocessing-directives.rst:
	Add trailing newline.
	* doc/gcc/c-implementation-defined-behavior/qualifiers.rst:
	Add trailing newline.
	* doc/gcc/c-implementation-defined-behavior/statements.rst:
	Add trailing newline.
	* doc/gcc/c-implementation-defined-behavior/structures-unions-enumerations-and-bit-fields.rst:
	Add trailing newline.
	* doc/gcc/c-implementation-defined-behavior/translation.rst:
	Add trailing newline.
	* doc/gcc/conditionally-supported-behavior.rst:
	Add trailing newline.
	* doc/gcc/contributing-to-gcc-development.rst:
	Add trailing newline.
	* doc/gcc/contributors-to-gcc.rst:
	Add trailing newline.
	* doc/gcc/copyright.rst:
	Add trailing newline.
	* doc/gcc/exception-handling.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c++-language.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c++-language/backwards-compatibility.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c++-language/c++-concepts.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c++-language/c++-interface-and-implementation-pragmas.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c++-language/c++-specific-variable-function-and-type-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c++-language/deprecated-features.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c++-language/extracting-the-function-pointer-from-a-bound-pointer-to-member-function.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c++-language/function-multiversioning.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c++-language/restricting-pointer-aliasing.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c++-language/type-traits.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c++-language/vague-linkage.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c++-language/when-is-a-volatile-c++-object-accessed.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c++-language/wheres-the-template.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/128-bit-integers.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/additional-floating-types.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/alternate-keywords.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/an-inline-function-is-as-fast-as-a-macro.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/arithmetic-on-void-and-function-pointers.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/arrays-of-length-zero.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/arrays-of-variable-length.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/attribute-syntax.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/binary-constants-using-the-0b-prefix.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/built-in-functions-for-memory-model-aware-atomic-operations.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/built-in-functions-to-perform-arithmetic-with-overflow-checking.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/c++-style-comments.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/case-ranges.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/cast-to-a-union-type.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/complex-numbers.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/compound-literals.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/conditionals-with-omitted-operands.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/constructing-function-calls.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/decimal-floating-types.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/aarch64-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/amd-gcn-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/arc-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/arm-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/avr-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/blackfin-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/bpf-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/c-sky-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/common-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/epiphany-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/h8-300-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/ia-64-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/m32c-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/m32r-d-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/m68k-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/mcore-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/mep-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/microblaze-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/microsoft-windows-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/mips-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/msp430-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/nds32-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/nios-ii-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/nvidia-ptx-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/powerpc-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/risc-v-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/rl78-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/rx-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/s-390-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/sh-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/symbian-os-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/v850-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/visium-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/x86-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/xstormy16-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/designated-initializers.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/determining-the-alignment-of-functions-types-or-variables.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/dollar-signs-in-identifier-names.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/double-word-integers.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/enumerator-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/fixed-point-types.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/format-checks-specific-to-particular-target-machines.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/function-names-as-strings.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/getting-the-return-or-frame-address-of-a-function.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/half-precision-floating-point.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/hex-floats.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/how-to-use-inline-assembly-language-in-c-code.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/incomplete-enum-types.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/label-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/labels-as-values.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/legacy-sync-built-in-functions-for-atomic-memory-access.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/locally-declared-labels.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/macros-with-a-variable-number-of-arguments.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/mixed-declarations-labels-and-code.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/named-address-spaces.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/nested-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/non-constant-initializers.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/non-lvalue-arrays-may-have-subscripts.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/nonlocal-gotos.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/object-size-checking-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/other-built-in-functions-provided-by-gcc.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/pointer-arguments-in-variadic-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/pointers-to-arrays-with-qualifiers-work-as-expected.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/pragmas-accepted-by-gcc.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/prototypes-and-old-style-function-definitions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/referring-to-a-type-with-typeof.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/slightly-looser-rules-for-escaped-newlines.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/specifying-attributes-of-types.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/specifying-attributes-of-variables.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/statement-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/statements-and-declarations-in-expressions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/structures-with-no-members.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/support-for-offsetof.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/aarch64-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/alpha-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/altera-nios-ii-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/arc-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/arc-simd-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/arm-armv8-m-security-extensions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/arm-c-language-extensions-acle.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/arm-floating-point-status-and-control-intrinsics.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/arm-iwmmxt-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/avr-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/basic-powerpc-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/blackfin-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/bpf-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/fr-v-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/mips-dsp-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/mips-loongson-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/mips-paired-single-support.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/mips-simd-architecture-msa-support.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/msp430-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/nds32-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/other-mips-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/picochip-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/powerpc-altivec-vsx-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/powerpc-atomic-memory-operation-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/powerpc-hardware-transactional-memory-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/powerpc-matrix-multiply-assist-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/pru-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/risc-v-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/rx-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/s-390-system-z-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/sh-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/sparc-vis-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/ti-c6x-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/x86-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/x86-control-flow-protection-intrinsics.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/x86-transactional-memory-intrinsics.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/the-character-esc-in-constants.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/thread-local-storage.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/unnamed-structure-and-union-fields.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/using-vector-instructions-through-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/when-is-a-volatile-object-accessed.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/x86-specific-memory-model-extensions-for-transactional-memory.rst:
	Add trailing newline.
	* doc/gcc/funding.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/compiling-c++-programs.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/description.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/environment-variables-affecting-gcc.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/gcc-developer-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/aarch64-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/adapteva-epiphany-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/amd-gcn-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/arc-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/arm-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/avr-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/blackfin-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/c-sky-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/c6x-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/cris-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/darwin-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/dec-alpha-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/ebpf-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/fr30-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/frv-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/ft32-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/gnu-linux-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/h8-300-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/hppa-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/ia-64-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/ibm-rs-6000-and-powerpc-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/lm32-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/loongarch-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/m32c-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/m32r-d-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/m680x0-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/mcore-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/mep-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/microblaze-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/mips-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/mmix-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/mn10300-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/moxie-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/msp430-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/nds32-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/nios-ii-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/nvidia-ptx-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/openrisc-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/options-for-system-v.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/pdp-11-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/picochip-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/powerpc-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/pru-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/risc-v-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/rl78-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/rx-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/s-390-and-zseries-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/score-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/sh-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/solaris-2-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/sparc-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/v850-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/vax-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/visium-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/vms-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/vxworks-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/x86-windows-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/xstormy16-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/xtensa-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/zseries-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/options-controlling-c++-dialect.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/options-controlling-c-dialect.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/options-controlling-objective-c-and-objective-c++-dialects.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/options-controlling-the-kind-of-output.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/options-controlling-the-preprocessor.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/options-for-code-generation-conventions.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/options-for-debugging-your-program.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/options-for-directory-search.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/options-for-linking.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/options-that-control-optimization.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/options-that-control-static-analysis.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/options-to-control-diagnostic-messages-formatting.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/options-to-request-or-suppress-warnings.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/passing-options-to-the-assembler.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/program-instrumentation-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/specifying-subprocesses-and-the-switches-to-pass-to-them.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/using-precompiled-headers.rst:
	Add trailing newline.
	* doc/gcc/gcc.rst:
	Add trailing newline.
	* doc/gcc/gcov-dump.rst:
	Add trailing newline.
	* doc/gcc/gcov-tool.rst:
	Add trailing newline.
	* doc/gcc/gcov.rst:
	Add trailing newline.
	* doc/gcc/gcov/brief-description-of-gcov-data-files.rst:
	Add trailing newline.
	* doc/gcc/gcov/data-file-relocation-to-support-cross-profiling.rst:
	Add trailing newline.
	* doc/gcc/gcov/introduction-to-gcov.rst:
	Add trailing newline.
	* doc/gcc/gcov/invoking-gcov.rst:
	Add trailing newline.
	* doc/gcc/gcov/profiling-and-test-coverage-in-freestanding-environments.rst:
	Add trailing newline.
	* doc/gcc/gcov/using-gcov-with-gcc-optimization.rst:
	Add trailing newline.
	* doc/gcc/general-public-license-3.rst:
	Add trailing newline.
	* doc/gcc/gnu-free-documentation-license.rst:
	Add trailing newline.
	* doc/gcc/gnu-objective-c-features.rst:
	Add trailing newline.
	* doc/gcc/gnu-objective-c-features/compatibilityalias.rst:
	Add trailing newline.
	* doc/gcc/gnu-objective-c-features/constant-string-objects.rst:
	Add trailing newline.
	* doc/gcc/gnu-objective-c-features/exceptions.rst:
	Add trailing newline.
	* doc/gcc/gnu-objective-c-features/fast-enumeration.rst:
	Add trailing newline.
	* doc/gcc/gnu-objective-c-features/garbage-collection.rst:
	Add trailing newline.
	* doc/gcc/gnu-objective-c-features/gnu-objective-c-runtime-api.rst:
	Add trailing newline.
	* doc/gcc/gnu-objective-c-features/load-executing-code-before-main.rst:
	Add trailing newline.
	* doc/gcc/gnu-objective-c-features/messaging-with-the-gnu-objective-c-runtime.rst:
	Add trailing newline.
	* doc/gcc/gnu-objective-c-features/synchronization.rst:
	Add trailing newline.
	* doc/gcc/gnu-objective-c-features/type-encoding.rst:
	Add trailing newline.
	* doc/gcc/gnu.rst:
	Add trailing newline.
	* doc/gcc/have-you-found-a-bug.rst:
	Add trailing newline.
	* doc/gcc/how-and-where-to-report-bugs.rst:
	Add trailing newline.
	* doc/gcc/how-to-get-help-with-gcc.rst:
	Add trailing newline.
	* doc/gcc/index.rst:
	Add trailing newline.
	* doc/gcc/indices-and-tables.rst:
	Add trailing newline.
	* doc/gcc/known-causes-of-trouble-with-gcc.rst:
	Add trailing newline.
	* doc/gcc/known-causes-of-trouble-with-gcc/actual-bugs-we-havent-fixed-yet.rst:
	Add trailing newline.
	* doc/gcc/known-causes-of-trouble-with-gcc/certain-changes-we-dont-want-to-make.rst:
	Add trailing newline.
	* doc/gcc/known-causes-of-trouble-with-gcc/common-misunderstandings-with-gnu-c.rst:
	Add trailing newline.
	* doc/gcc/known-causes-of-trouble-with-gcc/disappointments-and-misunderstandings.rst:
	Add trailing newline.
	* doc/gcc/known-causes-of-trouble-with-gcc/fixed-header-files.rst:
	Add trailing newline.
	* doc/gcc/known-causes-of-trouble-with-gcc/incompatibilities-of-gcc.rst:
	Add trailing newline.
	* doc/gcc/known-causes-of-trouble-with-gcc/interoperation.rst:
	Add trailing newline.
	* doc/gcc/known-causes-of-trouble-with-gcc/standard-libraries.rst:
	Add trailing newline.
	* doc/gcc/known-causes-of-trouble-with-gcc/warning-messages-and-error-messages.rst:
	Add trailing newline.
	* doc/gcc/language-standards-supported-by-gcc.rst:
	Add trailing newline.
	* doc/gcc/language-standards-supported-by-gcc/c++-language.rst:
	Add trailing newline.
	* doc/gcc/language-standards-supported-by-gcc/c-language.rst:
	Add trailing newline.
	* doc/gcc/language-standards-supported-by-gcc/d-language.rst:
	Add trailing newline.
	* doc/gcc/language-standards-supported-by-gcc/go-language.rst:
	Add trailing newline.
	* doc/gcc/language-standards-supported-by-gcc/objective-c-and-objective-c++-languages.rst:
	Add trailing newline.
	* doc/gcc/lto-dump.rst:
	Add trailing newline.
	* doc/gcc/programming-languages-supported-by-gcc.rst:
	Add trailing newline.
	* doc/gcc/reporting-bugs.rst:
	Add trailing newline.
	* doc/gccint/analysis-and-optimization-of-gimple-tuples.rst:
	Add trailing newline.
	* doc/gccint/analysis-and-optimization-of-gimple-tuples/alias-analysis.rst:
	Add trailing newline.
	* doc/gccint/analysis-and-optimization-of-gimple-tuples/annotations.rst:
	Add trailing newline.
	* doc/gccint/analysis-and-optimization-of-gimple-tuples/memory-model.rst:
	Add trailing newline.
	* doc/gccint/analysis-and-optimization-of-gimple-tuples/ssa-operands.rst:
	Add trailing newline.
	* doc/gccint/analysis-and-optimization-of-gimple-tuples/static-single-assignment.rst:
	Add trailing newline.
	* doc/gccint/analysis-and-representation-of-loops.rst:
	Add trailing newline.
	* doc/gccint/analysis-and-representation-of-loops/data-dependency-analysis.rst:
	Add trailing newline.
	* doc/gccint/analysis-and-representation-of-loops/iv-analysis-on-rtl.rst:
	Add trailing newline.
	* doc/gccint/analysis-and-representation-of-loops/loop-closed-ssa-form.rst:
	Add trailing newline.
	* doc/gccint/analysis-and-representation-of-loops/loop-manipulation.rst:
	Add trailing newline.
	* doc/gccint/analysis-and-representation-of-loops/loop-querying.rst:
	Add trailing newline.
	* doc/gccint/analysis-and-representation-of-loops/loop-representation.rst:
	Add trailing newline.
	* doc/gccint/analysis-and-representation-of-loops/number-of-iterations-analysis.rst:
	Add trailing newline.
	* doc/gccint/analysis-and-representation-of-loops/scalar-evolutions.rst:
	Add trailing newline.
	* doc/gccint/analyzer-internals.rst:
	Add trailing newline.
	* doc/gccint/collect2.rst:
	Add trailing newline.
	* doc/gccint/contributing-to-gcc-development.rst:
	Add trailing newline.
	* doc/gccint/contributors-to-gcc.rst:
	Add trailing newline.
	* doc/gccint/control-flow-graph.rst:
	Add trailing newline.
	* doc/gccint/control-flow-graph/basic-blocks.rst:
	Add trailing newline.
	* doc/gccint/control-flow-graph/edges.rst:
	Add trailing newline.
	* doc/gccint/control-flow-graph/liveness-information.rst:
	Add trailing newline.
	* doc/gccint/control-flow-graph/maintaining-the-cfg.rst:
	Add trailing newline.
	* doc/gccint/control-flow-graph/profile-information.rst:
	Add trailing newline.
	* doc/gccint/copyright.rst:
	Add trailing newline.
	* doc/gccint/debugging-the-analyzer.rst:
	Add trailing newline.
	* doc/gccint/funding.rst:
	Add trailing newline.
	* doc/gccint/gcc-and-portability.rst:
	Add trailing newline.
	* doc/gccint/general-public-license-3.rst:
	Add trailing newline.
	* doc/gccint/generic.rst:
	Add trailing newline.
	* doc/gccint/generic/attributes-in-trees.rst:
	Add trailing newline.
	* doc/gccint/generic/c-and-c++-trees.rst:
	Add trailing newline.
	* doc/gccint/generic/declarations.rst:
	Add trailing newline.
	* doc/gccint/generic/deficiencies.rst:
	Add trailing newline.
	* doc/gccint/generic/expressions.rst:
	Add trailing newline.
	* doc/gccint/generic/functions.rst:
	Add trailing newline.
	* doc/gccint/generic/language-dependent-trees.rst:
	Add trailing newline.
	* doc/gccint/generic/overview.rst:
	Add trailing newline.
	* doc/gccint/generic/statements.rst:
	Add trailing newline.
	* doc/gccint/generic/types.rst:
	Add trailing newline.
	* doc/gccint/gimple-api.rst:
	Add trailing newline.
	* doc/gccint/gimple.rst:
	Add trailing newline.
	* doc/gccint/gimple/adding-a-new-gimple-statement-code.rst:
	Add trailing newline.
	* doc/gccint/gimple/class-hierarchy-of-gimple-statements.rst:
	Add trailing newline.
	* doc/gccint/gimple/exception-handling.rst:
	Add trailing newline.
	* doc/gccint/gimple/gimple-instruction-set.rst:
	Add trailing newline.
	* doc/gccint/gimple/gimple-sequences.rst:
	Add trailing newline.
	* doc/gccint/gimple/manipulating-gimple-statements.rst:
	Add trailing newline.
	* doc/gccint/gimple/operands.rst:
	Add trailing newline.
	* doc/gccint/gimple/sequence-iterators.rst:
	Add trailing newline.
	* doc/gccint/gimple/statement-and-operand-traversals.rst:
	Add trailing newline.
	* doc/gccint/gimple/temporaries.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-representation.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleasm.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleassign.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimplebind.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimplecall.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimplecatch.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimplecond.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimpledebug.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleehfilter.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimplegoto.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimplelabel.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimplenop.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompatomicload.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompatomicstore.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompcontinue.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompcritical.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompfor.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompmaster.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompordered.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompparallel.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompreturn.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompsection.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompsections.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompsingle.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimplephi.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleresx.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimplereturn.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleswitch.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimpletry.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimplewithcleanupexpr.rst:
	Add trailing newline.
	* doc/gccint/gnu-free-documentation-license.rst:
	Add trailing newline.
	* doc/gccint/guidelines-for-diagnostics.rst:
	Add trailing newline.
	* doc/gccint/guidelines-for-options.rst:
	Add trailing newline.
	* doc/gccint/host-common.rst:
	Add trailing newline.
	* doc/gccint/host-configuration.rst:
	Add trailing newline.
	* doc/gccint/host-filesystem.rst:
	Add trailing newline.
	* doc/gccint/host-makefile-fragments.rst:
	Add trailing newline.
	* doc/gccint/host-misc.rst:
	Add trailing newline.
	* doc/gccint/index.rst:
	Add trailing newline.
	* doc/gccint/indices-and-tables.rst:
	Add trailing newline.
	* doc/gccint/interfacing-to-gcc-output.rst:
	Add trailing newline.
	* doc/gccint/introduction.rst:
	Add trailing newline.
	* doc/gccint/language-front-ends-in-gcc.rst:
	Add trailing newline.
	* doc/gccint/link-time-optimization.rst:
	Add trailing newline.
	* doc/gccint/link-time-optimization/design-overview.rst:
	Add trailing newline.
	* doc/gccint/link-time-optimization/internal-flags-controlling-lto1.rst:
	Add trailing newline.
	* doc/gccint/link-time-optimization/lto-file-sections.rst:
	Add trailing newline.
	* doc/gccint/link-time-optimization/using-summary-information-in-ipa-passes.rst:
	Add trailing newline.
	* doc/gccint/link-time-optimization/whole-program-assumptions-linker-plugin-and-symbol-visibilities.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/c-statements-for-assembler-output.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/canonicalization-of-instructions.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/conditional-execution.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/constant-definitions.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/defining-how-to-split-instructions.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/defining-jump-instruction-patterns.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/defining-looping-instruction-patterns.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/defining-rtl-sequences-for-code-generation.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/everything-about-instruction-patterns.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/example-of-defineinsn.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/including-patterns-in-machine-descriptions.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/instruction-attributes.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/interdependence-of-patterns.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/iterators.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/machine-specific-peephole-optimizers.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/operand-constraints.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/output-templates-and-operand-substitution.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/overview-of-how-the-machine-description-is-used.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/predicates.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/rtl-template.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/rtl-templates-transformations.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/standard-pattern-names-for-generation.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/when-the-order-of-patterns-matters.rst:
	Add trailing newline.
	* doc/gccint/makefile-fragments.rst:
	Add trailing newline.
	* doc/gccint/match-and-simplify.rst:
	Add trailing newline.
	* doc/gccint/memory-management-and-type-information.rst:
	Add trailing newline.
	* doc/gccint/memory-management-and-type-information/how-to-invoke-the-garbage-collector.rst:
	Add trailing newline.
	* doc/gccint/memory-management-and-type-information/marking-roots-for-the-garbage-collector.rst:
	Add trailing newline.
	* doc/gccint/memory-management-and-type-information/source-files-containing-type-information.rst:
	Add trailing newline.
	* doc/gccint/memory-management-and-type-information/support-for-inheritance.rst:
	Add trailing newline.
	* doc/gccint/memory-management-and-type-information/support-for-user-provided-gc-marking-routines.rst:
	Add trailing newline.
	* doc/gccint/memory-management-and-type-information/the-inside-of-a-gty.rst:
	Add trailing newline.
	* doc/gccint/memory-management-and-type-information/troubleshooting-the-garbage-collector.rst:
	Add trailing newline.
	* doc/gccint/option-file-format.rst:
	Add trailing newline.
	* doc/gccint/option-properties.rst:
	Add trailing newline.
	* doc/gccint/option-specification-files.rst:
	Add trailing newline.
	* doc/gccint/passes-and-files-of-the-compiler.rst:
	Add trailing newline.
	* doc/gccint/passes-and-files-of-the-compiler/gimplification-pass.rst:
	Add trailing newline.
	* doc/gccint/passes-and-files-of-the-compiler/inter-procedural-optimization-passes.rst:
	Add trailing newline.
	* doc/gccint/passes-and-files-of-the-compiler/optimization-info.rst:
	Add trailing newline.
	* doc/gccint/passes-and-files-of-the-compiler/parsing-pass.rst:
	Add trailing newline.
	* doc/gccint/passes-and-files-of-the-compiler/pass-manager.rst:
	Add trailing newline.
	* doc/gccint/passes-and-files-of-the-compiler/rtl-passes.rst:
	Add trailing newline.
	* doc/gccint/passes-and-files-of-the-compiler/tree-ssa-passes.rst:
	Add trailing newline.
	* doc/gccint/plugins.rst:
	Add trailing newline.
	* doc/gccint/plugins/building-gcc-plugins.rst:
	Add trailing newline.
	* doc/gccint/plugins/controlling-which-passes-are-being-run.rst:
	Add trailing newline.
	* doc/gccint/plugins/giving-information-about-a-plugin.rst:
	Add trailing newline.
	* doc/gccint/plugins/interacting-with-the-gcc-garbage-collector.rst:
	Add trailing newline.
	* doc/gccint/plugins/interacting-with-the-pass-manager.rst:
	Add trailing newline.
	* doc/gccint/plugins/keeping-track-of-available-passes.rst:
	Add trailing newline.
	* doc/gccint/plugins/loading-plugins.rst:
	Add trailing newline.
	* doc/gccint/plugins/plugin-api.rst:
	Add trailing newline.
	* doc/gccint/plugins/recording-information-about-pass-execution.rst:
	Add trailing newline.
	* doc/gccint/plugins/registering-custom-attributes-or-pragmas.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/access-to-operands.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/access-to-special-operands.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/assembler-instructions-as-expressions.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/bit-fields.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/comparison-operations.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/constant-expression-types.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/conversions.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/declarations.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/embedded-side-effects-on-addresses.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/flags-in-an-rtl-expression.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/insns.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/machine-modes.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/on-the-side-ssa-form-for-rtl.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/reading-rtl.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/registers-and-memory.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/rtl-classes-and-formats.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/rtl-expressions-for-arithmetic.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/rtl-object-types.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/rtl-representation-of-function-call-insns.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/side-effect-expressions.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/structure-sharing-assumptions.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/variable-location-debug-information-in-rtl.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/vector-operations.rst:
	Add trailing newline.
	* doc/gccint/sizes-and-offsets-as-runtime-invariants.rst:
	Add trailing newline.
	* doc/gccint/sizes-and-offsets-as-runtime-invariants/alignment-of-polyints.rst:
	Add trailing newline.
	* doc/gccint/sizes-and-offsets-as-runtime-invariants/arithmetic-on-polyints.rst:
	Add trailing newline.
	* doc/gccint/sizes-and-offsets-as-runtime-invariants/comparisons-involving-polyint.rst:
	Add trailing newline.
	* doc/gccint/sizes-and-offsets-as-runtime-invariants/computing-bounds-on-polyints.rst:
	Add trailing newline.
	* doc/gccint/sizes-and-offsets-as-runtime-invariants/consequences-of-using-polyint.rst:
	Add trailing newline.
	* doc/gccint/sizes-and-offsets-as-runtime-invariants/converting-polyints.rst:
	Add trailing newline.
	* doc/gccint/sizes-and-offsets-as-runtime-invariants/guidelines-for-using-polyint.rst:
	Add trailing newline.
	* doc/gccint/sizes-and-offsets-as-runtime-invariants/miscellaneous-polyint-routines.rst:
	Add trailing newline.
	* doc/gccint/sizes-and-offsets-as-runtime-invariants/overview-of-polyint.rst:
	Add trailing newline.
	* doc/gccint/source-tree-structure-and-build-system.rst:
	Add trailing newline.
	* doc/gccint/source-tree-structure-and-build-system/configure-terms-and-history.rst:
	Add trailing newline.
	* doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory.rst:
	Add trailing newline.
	* doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/anatomy-of-a-language-front-end.rst:
	Add trailing newline.
	* doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/anatomy-of-a-target-back-end.rst:
	Add trailing newline.
	* doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/build-system-in-the-gcc-directory.rst:
	Add trailing newline.
	* doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/configuration-in-the-gcc-directory.rst:
	Add trailing newline.
	* doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/headers-installed-by-gcc.rst:
	Add trailing newline.
	* doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/library-source-files-and-headers-under-the-gcc-directory.rst:
	Add trailing newline.
	* doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/makefile-targets.rst:
	Add trailing newline.
	* doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/subdirectories-of-gcc.rst:
	Add trailing newline.
	* doc/gccint/source-tree-structure-and-build-system/top-level-source-directory.rst:
	Add trailing newline.
	* doc/gccint/standard-header-file-directories.rst:
	Add trailing newline.
	* doc/gccint/static-analyzer.rst:
	Add trailing newline.
	* doc/gccint/target-macros.rst:
	Add trailing newline.
	* doc/gccint/target-macros/controlling-debugging-information-format.rst:
	Add trailing newline.
	* doc/gccint/target-macros/controlling-the-compilation-driver-gcc.rst:
	Add trailing newline.
	* doc/gccint/target-macros/cross-compilation-and-floating-point.rst:
	Add trailing newline.
	* doc/gccint/target-macros/defining-coprocessor-specifics-for-mips-targets.rst:
	Add trailing newline.
	* doc/gccint/target-macros/defining-data-structures-for-per-function-information.rst:
	Add trailing newline.
	* doc/gccint/target-macros/defining-the-output-assembler-language.rst:
	Add trailing newline.
	* doc/gccint/target-macros/defining-the-output-assembler-language/assembler-commands-for-alignment.rst:
	Add trailing newline.
	* doc/gccint/target-macros/defining-the-output-assembler-language/how-initialization-functions-are-handled.rst:
	Add trailing newline.
	* doc/gccint/target-macros/defining-the-output-assembler-language/macros-controlling-initialization-routines.rst:
	Add trailing newline.
	* doc/gccint/target-macros/defining-the-output-assembler-language/output-and-generation-of-labels.rst:
	Add trailing newline.
	* doc/gccint/target-macros/defining-the-output-assembler-language/output-of-assembler-instructions.rst:
	Add trailing newline.
	* doc/gccint/target-macros/defining-the-output-assembler-language/output-of-data.rst:
	Add trailing newline.
	* doc/gccint/target-macros/defining-the-output-assembler-language/output-of-uninitialized-variables.rst:
	Add trailing newline.
	* doc/gccint/target-macros/implicit-calls-to-library-routines.rst:
	Add trailing newline.
	* doc/gccint/target-macros/layout-of-source-language-data-types.rst:
	Add trailing newline.
	* doc/gccint/target-macros/position-independent-code.rst:
	Add trailing newline.
	* doc/gccint/target-macros/register-usage.rst:
	Add trailing newline.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions.rst:
	Add trailing newline.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/basic-stack-layout.rst:
	Add trailing newline.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/caller-saves-register-allocation.rst:
	Add trailing newline.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/exception-handling-support.rst:
	Add trailing newline.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/passing-function-arguments-on-the-stack.rst:
	Add trailing newline.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/registers-that-address-the-stack-frame.rst:
	Add trailing newline.
	* doc/gccint/target-macros/support-for-nested-functions.rst:
	Add trailing newline.
	* doc/gccint/target-macros/the-global-targetm-variable.rst:
	Add trailing newline.
	* doc/gccint/target-makefile-fragments.rst:
	Add trailing newline.
	* doc/gccint/testsuites.rst:
	Add trailing newline.
	* doc/gccint/testsuites/ada-language-testsuites.rst:
	Add trailing newline.
	* doc/gccint/testsuites/c-language-testsuites.rst:
	Add trailing newline.
	* doc/gccint/testsuites/directives-used-within-dejagnu-tests.rst:
	Add trailing newline.
	* doc/gccint/testsuites/directives-used-within-dejagnu-tests/commands-for-use-in-dg-final.rst:
	Add trailing newline.
	* doc/gccint/testsuites/directives-used-within-dejagnu-tests/features-for-dg-add-options.rst:
	Add trailing newline.
	* doc/gccint/testsuites/directives-used-within-dejagnu-tests/keywords-describing-target-attributes.rst:
	Add trailing newline.
	* doc/gccint/testsuites/directives-used-within-dejagnu-tests/selecting-targets-to-which-a-test-applies.rst:
	Add trailing newline.
	* doc/gccint/testsuites/directives-used-within-dejagnu-tests/syntax-and-descriptions-of-test-directives.rst:
	Add trailing newline.
	* doc/gccint/testsuites/directives-used-within-dejagnu-tests/variants-of-dg-require-support.rst:
	Add trailing newline.
	* doc/gccint/testsuites/idioms-used-in-testsuite-code.rst:
	Add trailing newline.
	* doc/gccint/testsuites/support-for-testing-binary-compatibility.rst:
	Add trailing newline.
	* doc/gccint/testsuites/support-for-testing-gcov.rst:
	Add trailing newline.
	* doc/gccint/testsuites/support-for-testing-gimple-passes.rst:
	Add trailing newline.
	* doc/gccint/testsuites/support-for-testing-link-time-optimizations.rst:
	Add trailing newline.
	* doc/gccint/testsuites/support-for-testing-profile-directed-optimizations.rst:
	Add trailing newline.
	* doc/gccint/testsuites/support-for-testing-rtl-passes.rst:
	Add trailing newline.
	* doc/gccint/testsuites/support-for-torture-testing-using-multiple-options.rst:
	Add trailing newline.
	* doc/gccint/the-gcc-low-level-runtime-library.rst:
	Add trailing newline.
	* doc/gccint/the-gcc-low-level-runtime-library/language-independent-routines-for-exception-handling.rst:
	Add trailing newline.
	* doc/gccint/the-gcc-low-level-runtime-library/miscellaneous-runtime-library-routines.rst:
	Add trailing newline.
	* doc/gccint/the-gcc-low-level-runtime-library/routines-for-decimal-floating-point-emulation.rst:
	Add trailing newline.
	* doc/gccint/the-gcc-low-level-runtime-library/routines-for-fixed-point-fractional-emulation.rst:
	Add trailing newline.
	* doc/gccint/the-gcc-low-level-runtime-library/routines-for-floating-point-emulation.rst:
	Add trailing newline.
	* doc/gccint/the-gcc-low-level-runtime-library/routines-for-integer-arithmetic.rst:
	Add trailing newline.
	* doc/gccint/the-language.rst:
	Add trailing newline.
	* doc/gccint/user-experience-guidelines.rst:
	Add trailing newline.
	* doc/install/binaries.rst:
	Add trailing newline.
	* doc/install/building.rst:
	Add trailing newline.
	* doc/install/building/building-a-cross-compiler.rst:
	Add trailing newline.
	* doc/install/building/building-a-native-compiler.rst:
	Add trailing newline.
	* doc/install/building/building-in-parallel.rst:
	Add trailing newline.
	* doc/install/building/building-the-ada-compiler.rst:
	Add trailing newline.
	* doc/install/building/building-the-d-compiler.rst:
	Add trailing newline.
	* doc/install/building/building-with-profile-feedback.rst:
	Add trailing newline.
	* doc/install/configuration.rst:
	Add trailing newline.
	* doc/install/copyright.rst:
	Add trailing newline.
	* doc/install/downloading-gcc.rst:
	Add trailing newline.
	* doc/install/final-installation.rst:
	Add trailing newline.
	* doc/install/gnu-free-documentation-license.rst:
	Add trailing newline.
	* doc/install/host-target-specific-installation-notes-for-gcc.rst:
	Add trailing newline.
	* doc/install/how-can-you-run-the-testsuite-on-selected-tests.rst:
	Add trailing newline.
	* doc/install/how-to-interpret-test-results.rst:
	Add trailing newline.
	* doc/install/index.rst:
	Add trailing newline.
	* doc/install/indices-and-tables.rst:
	Add trailing newline.
	* doc/install/installing-gcc.rst:
	Add trailing newline.
	* doc/install/passing-options-and-running-multiple-testsuites.rst:
	Add trailing newline.
	* doc/install/prerequisites.rst:
	Add trailing newline.
	* doc/install/submitting-test-results.rst:
	Add trailing newline.
	* doc/install/testing.rst:
	Add trailing newline.

2022-11-14  Martin Liska  <mliska@suse.cz>

	Revert:
	2022-11-14  Martin Liska  <mliska@suse.cz>

	* Makefile.in: Use new install URL.
	* doc/gcc/gcc-command-options/machine-dependent-options/avr-options.rst:
	Use intersphinx link.
	* doc/gcc/gcc-command-options/options-to-control-diagnostic-messages-formatting.rst:
	Use new URL.
	* doc/gccint/source-tree-structure-and-build-system.rst: Use
	intersphinx link.
	* doc/install/host-target-specific-installation-notes-for-gcc.rst: Likewise.
	* doc/install/installing-gcc.rst: Likewise.

2022-11-14  Martin Liska  <mliska@suse.cz>

	Revert:
	2022-11-09  Martin Liska  <mliska@suse.cz>
		    Sinan  <sinan.lin@linux.alibaba.com>

	* doc/gccint/analysis-and-optimization-of-gimple-tuples/ssa-operands.rst:
	Add missing variable name.

2022-11-14  Martin Liska  <mliska@suse.cz>

	Revert:
	2022-11-14  Martin Liska  <mliska@suse.cz>

	* doc/cpp/conf.py: Add newline at last line.
	* doc/cppinternals/conf.py: Add newline at last line.
	* doc/gcc/conf.py: Add newline at last line.
	* doc/gccint/conf.py: Add newline at last line.
	* doc/install/conf.py: Add newline at last line.

2022-11-14  Martin Liska  <mliska@suse.cz>

	* doc/gcc/gcc-command-options/options-that-control-static-analysis.rst:
	Revert.

2022-11-14  Martin Liska  <mliska@suse.cz>

	* doc/cpp/pragmas.rst: Revert.

2022-11-14  Martin Liska  <mliska@suse.cz>

	* doc/gcc/gcc-command-options/machine-dependent-options/aarch64-options.rst: Revert.

2022-11-14  Martin Liska  <mliska@suse.cz>

	* doc/gcc/gcc-command-options/machine-dependent-options/aarch64-options.rst: Revert.

2022-11-14  Martin Liska  <mliska@suse.cz>

	* doc/gcc/gcc-command-options/options-that-control-static-analysis.rst: Revert.
	* doc/gcc/gcc-command-options/options-to-request-or-suppress-warnings.rst: Revert.

2022-11-14  Martin Liska  <mliska@suse.cz>

	Revert:
	2022-11-13  Jonathan Wakely  <jwakely@redhat.com>

	* doc/install/testing.rst: Remove anachronism about separate
	source tarballs.

2022-11-14  Martin Liska  <mliska@suse.cz>

	Revert:
	2022-11-13  Martin Liska  <mliska@suse.cz>

	PR other/107620
	* configure: Regenerate.
	* configure.ac: Always set sphinx-build.

2022-11-14  Martin Liska  <mliska@suse.cz>

	* doc/gcc/gcc-command-options/option-summary.rst: Revert.
	* doc/gcc/gcc-command-options/options-that-control-static-analysis.rst: Revert.

2022-11-14  Haochen Jiang  <haochen.jiang@intel.com>

	* common/config/i386/i386-common.cc
	(OPTION_MASK_ISA2_AMX_INT8_SET): Add AMX-TILE dependency.
	(OPTION_MASK_ISA2_AMX_BF16_SET): Ditto.
	(OPTION_MASK_ISA2_AMX_FP16_SET): Ditto.
	(OPTION_MASK_ISA2_AMX_TILE_UNSET): Disable AMX_{INT8,
	BF16, FP16} when disable AMX_TILE.

2022-11-14  Martin Liska  <mliska@suse.cz>

	* doc/gcc/gcc-command-options/machine-dependent-options/x86-options.rst:
	Revert.
	* doc/gcc/gcc-command-options/option-summary.rst:
	Revert.

2022-11-14  Hongyu Wang  <hongyu.wang@intel.com>

	* common/config/i386/i386-common.cc (ix86_optimization_table):
	Enable small loop unroll at O2 by default.
	* config/i386/i386.cc (ix86_loop_unroll_adjust): Adjust unroll
	factor if -munroll-only-small-loops enabled and -funroll-loops/
	-funroll-all-loops are disabled.
	* config/i386/i386.h (struct processor_costs): Add 2 field
	small_unroll_ninsns and small_unroll_factor.
	* config/i386/i386.opt: Add -munroll-only-small-loops.
	* doc/gcc/gcc-command-options/machine-dependent-options/x86-options.rst:
	Document -munroll-only-small-loops.
	* doc/gcc/gcc-command-options/option-summary.rst: Likewise.
	* loop-init.cc (pass_rtl_unroll_loops::gate): Enable rtl
	loop unrolling for -O2-speed and above if target hook
	loop_unroll_adjust exists.
	(pass_rtl_unroll_loops::execute): Set UAP_UNROLL flag
	when target hook loop_unroll_adjust exists.
	* config/i386/x86-tune-costs.h: Update all processor costs
	with small_unroll_ninsns = 4 and small_unroll_factor = 2.

2022-11-13  David Malcolm  <dmalcolm@redhat.com>

	PR analyzer/106235
	* doc/gcc/gcc-command-options/option-summary.rst: Add
	-Wno-analyzer-tainted-assertion.
	* doc/gcc/gcc-command-options/options-that-control-static-analysis.rst:
	Add -Wno-analyzer-tainted-assertion.

2022-11-13  Philipp Tomsich  <philipp.tomsich@vrull.eu>

	* config/riscv/bitmanip.md: New define_split.

2022-11-13  Philipp Tomsich  <philipp.tomsich@vrull.eu>

	* config/riscv/riscv.cc (riscv_rtx_costs): Recognize shNadd,
	if expressed as a plus and multiplication with a power-of-2.
	Split costing for MINUS from PLUS.

2022-11-13  Martin Liska  <mliska@suse.cz>

	PR other/107620
	* configure: Regenerate.
	* configure.ac: Always set sphinx-build.

2022-11-13  Joseph Myers  <joseph@codesourcery.com>

	* ginclude/float.h [__STDC_VERSION__ > 201710L]
	(__STDC_VERSION_FLOAT_H__): New macro.
	* ginclude/stdarg.h [__STDC_VERSION__ > 201710L]
	(__STDC_VERSION_STDARG_H__): New macro.
	* ginclude/stdatomic.h [__STDC_VERSION__ > 201710L]
	(__STDC_VERSION_STDATOMIC_H__): New macro.
	* ginclude/stddef.h [__STDC_VERSION__ > 201710L]
	(__STDC_VERSION_STDDEF_H__): New macro.
	* ginclude/stdint-gcc.h [__STDC_VERSION__ > 201710L]
	(__STDC_VERSION_STDINT_H__): New macro.
	* glimits.h [__STDC_VERSION__ > 201710L]
	(__STDC_VERSION_LIMITS_H__): New macro.

2022-11-13  Jonathan Wakely  <jwakely@redhat.com>

	* doc/install/testing.rst: Remove anachronism about separate
	source tarballs.

2022-11-12  Joseph Myers  <joseph@codesourcery.com>

	* dfp.cc (decimal_from_binary): Convert a canonical NaN to a
	canonical NaN.

2022-11-12  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.cc (range_tests_signbit): Move to set from here...
	(range_tests_signed_zeros): ...to here.

2022-11-12  Aldy Hernandez  <aldyh@redhat.com>

	* range-op-float.cc (build_lt): Adjust with frange_nextafter
	instead of default to a closed range.
	(build_gt): Same.

2022-11-12  Aldy Hernandez  <aldyh@redhat.com>
	    Jakub Jelinek  <jakub@redhat.com>

	* range-op-float.cc (float_binary_op_range_finish): New function.
	(foperator_plus::op1_range): New.
	(foperator_plus::op2_range): New.
	(foperator_minus::op1_range): New.
	(foperator_minus::op2_range): New.
	(foperator_mult::op1_range): New.
	(foperator_mult::op2_range): New.
	(foperator_div::op1_range): New.
	(foperator_div::op2_range): New.

2022-11-12  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/107569
	* range-op-float.cc (zero_p, contains_p, singleton_inf_p,
	signbit_known_p, zero_range, inf_range, zero_to_inf_range): New
	functions.
	(foperator_mult_div_base): New class.
	(foperator_mult, foperator_div): Derive from that and use
	protected static method from it as well as above new functions
	to simplify the code.

2022-11-12  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/107569
	* range-op-float.cc (foperator_div): New class.
	(floating_op_table::floating_op_table): Use foperator_div
	for RDIV_EXPR.

2022-11-12  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/107569
	PR tree-optimization/107591
	* range-op.h (range_operator_float::rv_fold): Add relation_kind
	argument.
	* range-op-float.cc (range_operator_float::fold_range): Name
	last argument trio and pass trio.op1_op2 () as last argument to
	rv_fold.
	(range_operator_float::rv_fold): Add relation_kind argument.
	(foperator_plus::rv_fold, foperator_minus::rv_fold): Likewise.
	(foperator_mult): New class.
	(floating_op_table::floating_op_table): Use foperator_mult for
	MULT_EXPR.

2022-11-12  Xi Ruoyao  <xry111@xry111.site>

	* config/loongarch/loongarch.md (UNSPEC_FLOGB): New unspec.
	(type): Add flogb.
	(logb_non_negative<mode>2): New instruction template.
	(logb<mode>2): New define_expand.

2022-11-12  Xi Ruoyao  <xry111@xry111.site>

	* config/loongarch/loongarch.md (UNSPEC_FSCALEB): New unspec.
	(type): Add fscaleb.
	(IMODE): New mode attr.
	(ldexp<mode>3): New instruction template.

2022-11-12  Xi Ruoyao  <xry111@xry111.site>

	* config/loongarch/loongarch.md (UNSPEC_FTINT): New unspec.
	(UNSPEC_FTINTRM): Likewise.
	(UNSPEC_FTINTRP): Likewise.
	(LRINT): New define_int_iterator.
	(lrint_pattern): New define_int_attr.
	(lrint_submenmonic): Likewise.
	(lrint_allow_inexact): Likewise.
	(ANYFI): New define_mode_iterator.
	(lrint<ANYF><ANYFI>): New instruction template.

2022-11-12  Xi Ruoyao  <xry111@xry111.site>

	* config/loongarch/loongarch.md (frint_<fmt>): Rename to ..
	(rint<mode>2): .. this.

2022-11-11  David Malcolm  <dmalcolm@redhat.com>

	PR analyzer/106147
	* doc/gcc/gcc-command-options/options-that-control-static-analysis.rst:
	Add -Wanalyzer-infinite-recursion.
	* doc/gcc/gcc-command-options/options-to-request-or-suppress-warnings.rst
	(-Winfinite-recursion): Mention -Wanalyzer-infinite-recursion.

2022-11-11  David Malcolm  <dmalcolm@redhat.com>

	PR analyzer/106147
	* Makefile.in (ANALYZER_OBJS): Add analyzer/infinite-recursion.o.

2022-11-11  Andrew MacLeod  <amacleod@redhat.com>

	PR tree-optimization/107523
	* gimple-range.cc (gimple_ranger::update_stmt): Use fur_stmt
	rather than fur_depend.

2022-11-11  Andrew MacLeod  <amacleod@redhat.com>

	* tree-vrp.cc (rvrp_folder::rvrp_folder): Init m_last_bb_stmt.
	(rvrp_folder::pre_fold_bb): Set m_last_bb_stmt.
	(rvrp_folder::pre_fold_stmt): Check for transitive inferred ranges.
	(rvrp_folder::fold_stmt): Check in pre_fold_stmt instead.

2022-11-11  Srinath Parvathaneni  <srinath.parvathaneni@arm.com>

	* config/aarch64/aarch64-cores.def (AARCH64_CORE): Add Cortex-X1C
	CPU.
	* config/aarch64/aarch64-tune.md: Regenerate.
	* doc/gcc/gcc-command-options/machine-dependent-options/aarch64-options.rst:
	Document Cortex-X1C CPU.

2022-11-11  Srinath Parvathaneni  <srinath.parvathaneni@arm.com>

	* config/aarch64/aarch64-cores.def (AARCH64_CORE): Add Cortex-A715
	CPU.
	* config/aarch64/aarch64-tune.md: Regenerate.
	* doc/gcc/gcc-command-options/machine-dependent-options/aarch64-options.rst:
	Document Cortex-A715 CPU.

2022-11-11  Richard Biener  <rguenther@suse.de>
	    Nikita Voronov  <nik_1357@mail.ru>

	PR tree-optimization/107554
	* tree-ssa-strlen.cc (strlen_pass::count_nonzero_bytes):
	Use unsigned HOST_WIDE_INT type for the strlen.

2022-11-11  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/105142
	* gimple-fold.cc (fosa_unwind): New global.
	(follow_outer_ssa_edges): When the SSA definition to follow
	is does not dominate fosa_bb, temporarily clear flow-sensitive
	info.  Make sure to not expand stmts with not defined overflow.
	(maybe_fold_comparisons_from_match_pd): Set up unwind stack
	for follow_outer_ssa_edges and unwind flow-sensitive info
	clearing after matching.

2022-11-11  Aldy Hernandez  <aldyh@redhat.com>

	* range-op.cc (operator_mult::fold_range): Remove.
	(operator_div::fold_range): Remove.
	(operator_bitwise_and): Remove.

2022-11-11  Aldy Hernandez  <aldyh@redhat.com>

	* range-op.cc (update_known_bitmask): Avoid unnecessary intersection.

2022-11-11  Aldy Hernandez  <aldyh@redhat.com>

	* range-op.cc (range_operator::fold_range): Call
	update_known_bitmask.
	(operator_bitwise_and::fold_range): Avoid setting nonzero bits
	when range is undefined.

2022-11-11  Aldy Hernandez  <aldyh@redhat.com>

	* range-op.cc (class operator_div): Remove tree code.
	(operator_div::wi_op_overflows): Handle EXACT_DIV_EXPR as
	TRUNC_DIV_EXPR.

2022-11-11  Aldy Hernandez  <aldyh@redhat.com>

	* range-op.cc: (range_op_table::set): Set m_code.
	(integral_table::integral_table): Handle shared entries.
	(pointer_table::pointer_table): Same.
	* range-op.h (class range_operator): Add m_code.

2022-11-11  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/107618
	* tree-ssa-copy.cc (stmt_may_generate_copy): Simulate all
	assignments with a single SSA use.
	(copy_prop_visit_assignment): Use gimple_fold_stmt_to_constant_1
	to perform simple constant folding.
	(copy_prop::visit_stmt): Visit all assignments.

2022-11-11  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/84646
	* tree-ssa-dce.cc (pass_dce::set_pass_param): Add param
	wheter to run update-address-taken.
	(pass_dce::execute): Honor it.
	* passes.def: Exchange last DCE and CD-DCE invocations.
	Swap pass_tail_calls and the last DCE.

2022-11-11  Ju-Zhe Zhong  <juzhe.zhong@rivai.ai>
	    Monk Chiang  <monk.chiang@sifive.com>

	* config/riscv/riscv-v.cc (emit_pred_move): Adjust for scalable register spilling.
	(legitimize_move): Ditto.
	* config/riscv/riscv.cc (riscv_v_adjust_scalable_frame): New function.
	(riscv_first_stack_step): Adjust for scalable register spilling.
	(riscv_expand_prologue): Ditto.
	(riscv_expand_epilogue): Ditto.
	(riscv_dwarf_poly_indeterminate_value): New function.
	(TARGET_DWARF_POLY_INDETERMINATE_VALUE): New target hook support for register spilling.
	* config/riscv/riscv.h (RISCV_DWARF_VLENB): New macro.
	(RISCV_PROLOGUE_TEMP2_REGNUM): Ditto.
	(RISCV_PROLOGUE_TEMP2): Ditto.
	* config/riscv/vector-iterators.md: New iterators.
	* config/riscv/vector.md (*mov<mode>): Fix it for register spilling.
	(*mov<mode>_whole): New pattern.
	(*mov<mode>_fract): New pattern.
	(@pred_mov<mode>): Fix it for register spilling.

2022-11-11  Jonathan Wakely  <jwakely@redhat.com>

	PR c/85487
	* doc/cpp/pragmas.rst (Pragmas): Document region pragmas.

2022-11-11  Haochen Jiang  <haochen.jiang@intel.com>

	* config/i386/i386-builtin.def (BDESC): Add
	OPTION_MASK_ISA2_PREFETCHI for prefetchi builtin.
	* config/i386/i386-expand.cc (ix86_expand_builtin):
	Add ISA check before emit_insn.
	* config/i386/prfchiintrin.h: Add target for intrin.

2022-11-10  David Malcolm  <dmalcolm@redhat.com>

	PR analyzer/99671
	* tristate.h (tristate::is_unknown): New.

2022-11-10  David Malcolm  <dmalcolm@redhat.com>

	* doc/gcc/gcc-command-options/options-that-control-static-analysis.rst:
	Add -Wanalyzer-deref-before-check.

2022-11-10  Marek Polacek  <polacek@redhat.com>

	* doc/gcc/gcc-command-options/options-controlling-c++-dialect.rst:
	Extend the description of -Wdangling-reference.

2022-11-10  Andrew Pinski  <apinski@marvell.com>

	* config/bfin/bfin.h (SLOW_SHORT_ACCESS): Delete.
	* config/i386/i386.h (SLOW_SHORT_ACCESS): Delete.
	* system.h: Poison SLOW_SHORT_ACCESS

2022-11-10  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.cc (frange::set_nonnegative): Remove NAN sign handling.
	(range_tests_signed_zeros): Adjust test.

2022-11-10  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/84646
	* tree-ssa-forwprop.cc (pass_forwprop::execute): Improve
	copy propagation across PHIs.

2022-11-10  Philipp Tomsich  <philipp.tomsich@vrull.eu>

	* config/riscv/riscv-cores.def (RISCV_TUNE): Update
	sifive-7-series to point to the sifive_7 pipeline description.

2022-11-10  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/84646
	* tree-ssa-ccp.cc (set_lattice_value): Make sure we
	allow a const -> copy transition and avoid using meet
	in that case.

2022-11-10  Martin Liska  <mliska@suse.cz>

	* doc/cpp/conf.py: Add newline at last line.
	* doc/cppinternals/conf.py: Add newline at last line.
	* doc/gcc/conf.py: Add newline at last line.
	* doc/gccint/conf.py: Add newline at last line.
	* doc/install/conf.py: Add newline at last line.

2022-11-10  Richard Biener  <rguenther@suse.de>

	* tree-ssa-loop-unswitch.cc (init_loop_unswitch_info): First collect
	candidates and determine the outermost loop to unswitch.
	(tree_ssa_unswitch_loops): First perform all guard hoisting,
	then perform unswitching on innermost loop predicates.
	(find_unswitching_predicates_for_bb): Keep track of the
	outermost loop to unswitch.
	(evaluate_bbs): Adjust exit test.
	(tree_unswitch_single_loop): Dump whether we unswitched an outer
	loop.
	(tree_unswitch_loop): Remove assert we unswitch only innermost
	loops.

2022-11-10  Jakub Jelinek  <jakub@redhat.com>

	PR target/107585
	PR target/107546
	* config/i386/i386-expand.cc (ix86_expand_int_sse_cmp): Use
	gen_int_mode rather than GEN_INT.

2022-11-09  Martin Liska  <mliska@suse.cz>
	    Sinan  <sinan.lin@linux.alibaba.com>

	* doc/gccint/analysis-and-optimization-of-gimple-tuples/ssa-operands.rst:
	Add missing variable name.

2022-11-09  Aldy Hernandez  <aldyh@redhat.com>

	* value-range-storage.cc (frange_storage_slot::get_frange): Clear
	NAN if appropriate.
	* value-range.cc (range_tests_floats): New test.

2022-11-09  Aldy Hernandez  <aldyh@redhat.com>

	* range-op-float.cc (class foperator_plus): Remove op[12]_range.
	(class foperator_minus): Same.

2022-11-09  Qing Zhao  <qing.zhao@oracle.com>

	* gimple-array-bounds.cc (trailing_array): Replace
	array_at_struct_end_p with new name and update comments.
	* gimple-fold.cc (get_range_strlen_tree): Likewise.
	* gimple-ssa-warn-restrict.cc (builtin_memref::builtin_memref):
	Likewise.
	* graphite-sese-to-poly.cc (bounds_are_valid): Likewise.
	* tree-if-conv.cc (idx_within_array_bound): Likewise.
	* tree-object-size.cc (addr_object_size): Likewise.
	* tree-ssa-alias.cc (component_ref_to_zero_sized_trailing_array_p):
	Likewise.
	(stmt_kills_ref_p): Likewise.
	* tree-ssa-loop-niter.cc (idx_infer_loop_bounds): Likewise.
	* tree-ssa-strlen.cc (maybe_set_strlen_range): Likewise.
	* tree.cc (array_at_struct_end_p): Rename to ...
	(array_ref_flexible_size_p): ... this.
	(component_ref_size): Replace array_at_struct_end_p with new name.
	* tree.h (array_at_struct_end_p): Rename to ...
	(array_ref_flexible_size_p): ... this.

2022-11-09  Martin Liska  <mliska@suse.cz>

	* Makefile.in: Use new install URL.
	* doc/gcc/gcc-command-options/machine-dependent-options/avr-options.rst:
	Use intersphinx link.
	* doc/gcc/gcc-command-options/options-to-control-diagnostic-messages-formatting.rst:
	Use new URL.
	* doc/gccint/source-tree-structure-and-build-system.rst: Use
	intersphinx link.
	* doc/install/host-target-specific-installation-notes-for-gcc.rst: Likewise.
	* doc/install/installing-gcc.rst: Likewise.

2022-11-09  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/84646
	* tree-ssa-threadbackward.cc (back_threader::maybe_register_path):
	Remove premature cycle rejection.

2022-11-09  Martin Liska  <mliska@suse.cz>

	* doc/cpp/character-sets.rst:
	Add trailing newline.
	* doc/cpp/conditional-syntax.rst:
	Add trailing newline.
	* doc/cpp/conditional-uses.rst:
	Add trailing newline.
	* doc/cpp/conditionals.rst:
	Add trailing newline.
	* doc/cpp/copyright.rst:
	Add trailing newline.
	* doc/cpp/deleted-code.rst:
	Add trailing newline.
	* doc/cpp/diagnostics.rst:
	Add trailing newline.
	* doc/cpp/environment-variables.rst:
	Add trailing newline.
	* doc/cpp/gnu-free-documentation-license.rst:
	Add trailing newline.
	* doc/cpp/header-files.rst:
	Add trailing newline.
	* doc/cpp/header-files/alternatives-to-wrapper-ifndef.rst:
	Add trailing newline.
	* doc/cpp/header-files/computed-includes.rst:
	Add trailing newline.
	* doc/cpp/header-files/include-operation.rst:
	Add trailing newline.
	* doc/cpp/header-files/include-syntax.rst:
	Add trailing newline.
	* doc/cpp/header-files/once-only-headers.rst:
	Add trailing newline.
	* doc/cpp/header-files/search-path.rst:
	Add trailing newline.
	* doc/cpp/header-files/system-headers.rst:
	Add trailing newline.
	* doc/cpp/header-files/wrapper-headers.rst:
	Add trailing newline.
	* doc/cpp/implementation-defined-behavior.rst:
	Add trailing newline.
	* doc/cpp/implementation-details.rst:
	Add trailing newline.
	* doc/cpp/implementation-limits.rst:
	Add trailing newline.
	* doc/cpp/index.rst:
	Add trailing newline.
	* doc/cpp/indices-and-tables.rst:
	Add trailing newline.
	* doc/cpp/initial-processing.rst:
	Add trailing newline.
	* doc/cpp/invocation.rst:
	Add trailing newline.
	* doc/cpp/line-control.rst:
	Add trailing newline.
	* doc/cpp/macros.rst:
	Add trailing newline.
	* doc/cpp/macros/concatenation.rst:
	Add trailing newline.
	* doc/cpp/macros/directives-within-macro-arguments.rst:
	Add trailing newline.
	* doc/cpp/macros/function-like-macros.rst:
	Add trailing newline.
	* doc/cpp/macros/macro-arguments.rst:
	Add trailing newline.
	* doc/cpp/macros/macro-pitfalls.rst:
	Add trailing newline.
	* doc/cpp/macros/object-like-macros.rst:
	Add trailing newline.
	* doc/cpp/macros/predefined-macros.rst:
	Add trailing newline.
	* doc/cpp/macros/stringizing.rst:
	Add trailing newline.
	* doc/cpp/macros/undefining-and-redefining-macros.rst:
	Add trailing newline.
	* doc/cpp/macros/variadic-macros.rst:
	Add trailing newline.
	* doc/cpp/obsolete-features.rst:
	Add trailing newline.
	* doc/cpp/other-directives.rst:
	Add trailing newline.
	* doc/cpp/overview.rst:
	Add trailing newline.
	* doc/cpp/pragmas.rst:
	Add trailing newline.
	* doc/cpp/preprocessor-output.rst:
	Add trailing newline.
	* doc/cpp/the-preprocessing-language.rst:
	Add trailing newline.
	* doc/cpp/tokenization.rst:
	Add trailing newline.
	* doc/cpp/traditional-lexical-analysis.rst:
	Add trailing newline.
	* doc/cpp/traditional-macros.rst:
	Add trailing newline.
	* doc/cpp/traditional-miscellany.rst:
	Add trailing newline.
	* doc/cpp/traditional-mode.rst:
	Add trailing newline.
	* doc/cpp/traditional-warnings.rst:
	Add trailing newline.
	* doc/cppinternals/copyright.rst:
	Add trailing newline.
	* doc/cppinternals/cppinternals.rst:
	Add trailing newline.
	* doc/cppinternals/cpplib.rst:
	Add trailing newline.
	* doc/cppinternals/files.rst:
	Add trailing newline.
	* doc/cppinternals/index.rst:
	Add trailing newline.
	* doc/cppinternals/indices-and-tables.rst:
	Add trailing newline.
	* doc/cppinternals/internal-representation-of-macros.rst:
	Add trailing newline.
	* doc/cppinternals/just-which-line-number-anyway.rst:
	Add trailing newline.
	* doc/cppinternals/lexing-a-line.rst:
	Add trailing newline.
	* doc/cppinternals/lexing-a-token.rst:
	Add trailing newline.
	* doc/cppinternals/looking-for-a-function-like-macros-opening-parenthesis.rst:
	Add trailing newline.
	* doc/cppinternals/macro-expansion-overview.rst:
	Add trailing newline.
	* doc/cppinternals/marking-tokens-ineligible-for-future-expansion.rst:
	Add trailing newline.
	* doc/cppinternals/multiple-include-optimization.rst:
	Add trailing newline.
	* doc/cppinternals/overview.rst:
	Add trailing newline.
	* doc/cppinternals/representation-of-line-numbers.rst:
	Add trailing newline.
	* doc/cppinternals/scanning-the-replacement-list-for-macros-to-expand.rst:
	Add trailing newline.
	* doc/gcc/binary-compatibility.rst:
	Add trailing newline.
	* doc/gcc/c++-implementation-defined-behavior.rst:
	Add trailing newline.
	* doc/gcc/c-implementation-defined-behavior.rst:
	Add trailing newline.
	* doc/gcc/c-implementation-defined-behavior/architecture.rst:
	Add trailing newline.
	* doc/gcc/c-implementation-defined-behavior/arrays-and-pointers.rst:
	Add trailing newline.
	* doc/gcc/c-implementation-defined-behavior/characters.rst:
	Add trailing newline.
	* doc/gcc/c-implementation-defined-behavior/declarators.rst:
	Add trailing newline.
	* doc/gcc/c-implementation-defined-behavior/environment.rst:
	Add trailing newline.
	* doc/gcc/c-implementation-defined-behavior/floating-point.rst:
	Add trailing newline.
	* doc/gcc/c-implementation-defined-behavior/hints.rst:
	Add trailing newline.
	* doc/gcc/c-implementation-defined-behavior/identifiers.rst:
	Add trailing newline.
	* doc/gcc/c-implementation-defined-behavior/integers.rst:
	Add trailing newline.
	* doc/gcc/c-implementation-defined-behavior/library-functions.rst:
	Add trailing newline.
	* doc/gcc/c-implementation-defined-behavior/locale-specific-behavior.rst:
	Add trailing newline.
	* doc/gcc/c-implementation-defined-behavior/preprocessing-directives.rst:
	Add trailing newline.
	* doc/gcc/c-implementation-defined-behavior/qualifiers.rst:
	Add trailing newline.
	* doc/gcc/c-implementation-defined-behavior/statements.rst:
	Add trailing newline.
	* doc/gcc/c-implementation-defined-behavior/structures-unions-enumerations-and-bit-fields.rst:
	Add trailing newline.
	* doc/gcc/c-implementation-defined-behavior/translation.rst:
	Add trailing newline.
	* doc/gcc/conditionally-supported-behavior.rst:
	Add trailing newline.
	* doc/gcc/contributing-to-gcc-development.rst:
	Add trailing newline.
	* doc/gcc/contributors-to-gcc.rst:
	Add trailing newline.
	* doc/gcc/copyright.rst:
	Add trailing newline.
	* doc/gcc/exception-handling.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c++-language.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c++-language/backwards-compatibility.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c++-language/c++-concepts.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c++-language/c++-interface-and-implementation-pragmas.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c++-language/c++-specific-variable-function-and-type-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c++-language/deprecated-features.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c++-language/extracting-the-function-pointer-from-a-bound-pointer-to-member-function.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c++-language/function-multiversioning.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c++-language/restricting-pointer-aliasing.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c++-language/type-traits.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c++-language/vague-linkage.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c++-language/when-is-a-volatile-c++-object-accessed.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c++-language/wheres-the-template.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/128-bit-integers.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/additional-floating-types.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/alternate-keywords.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/an-inline-function-is-as-fast-as-a-macro.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/arithmetic-on-void-and-function-pointers.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/arrays-of-length-zero.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/arrays-of-variable-length.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/attribute-syntax.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/binary-constants-using-the-0b-prefix.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/built-in-functions-for-memory-model-aware-atomic-operations.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/built-in-functions-to-perform-arithmetic-with-overflow-checking.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/c++-style-comments.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/case-ranges.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/cast-to-a-union-type.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/complex-numbers.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/compound-literals.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/conditionals-with-omitted-operands.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/constructing-function-calls.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/decimal-floating-types.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/aarch64-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/amd-gcn-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/arc-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/arm-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/avr-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/blackfin-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/bpf-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/c-sky-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/common-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/epiphany-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/h8-300-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/ia-64-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/m32c-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/m32r-d-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/m68k-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/mcore-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/mep-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/microblaze-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/microsoft-windows-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/mips-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/msp430-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/nds32-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/nios-ii-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/nvidia-ptx-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/powerpc-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/risc-v-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/rl78-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/rx-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/s-390-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/sh-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/symbian-os-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/v850-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/visium-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/x86-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/xstormy16-function-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/designated-initializers.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/determining-the-alignment-of-functions-types-or-variables.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/dollar-signs-in-identifier-names.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/double-word-integers.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/enumerator-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/fixed-point-types.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/format-checks-specific-to-particular-target-machines.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/function-names-as-strings.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/getting-the-return-or-frame-address-of-a-function.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/half-precision-floating-point.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/hex-floats.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/how-to-use-inline-assembly-language-in-c-code.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/incomplete-enum-types.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/label-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/labels-as-values.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/legacy-sync-built-in-functions-for-atomic-memory-access.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/locally-declared-labels.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/macros-with-a-variable-number-of-arguments.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/mixed-declarations-labels-and-code.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/named-address-spaces.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/nested-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/non-constant-initializers.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/non-lvalue-arrays-may-have-subscripts.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/nonlocal-gotos.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/object-size-checking-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/other-built-in-functions-provided-by-gcc.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/pointer-arguments-in-variadic-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/pointers-to-arrays-with-qualifiers-work-as-expected.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/pragmas-accepted-by-gcc.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/prototypes-and-old-style-function-definitions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/referring-to-a-type-with-typeof.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/slightly-looser-rules-for-escaped-newlines.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/specifying-attributes-of-types.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/specifying-attributes-of-variables.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/statement-attributes.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/statements-and-declarations-in-expressions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/structures-with-no-members.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/support-for-offsetof.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/aarch64-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/alpha-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/altera-nios-ii-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/arc-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/arc-simd-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/arm-armv8-m-security-extensions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/arm-c-language-extensions-acle.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/arm-floating-point-status-and-control-intrinsics.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/arm-iwmmxt-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/avr-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/basic-powerpc-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/blackfin-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/bpf-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/fr-v-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/mips-dsp-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/mips-loongson-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/mips-paired-single-support.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/mips-simd-architecture-msa-support.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/msp430-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/nds32-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/other-mips-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/picochip-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/powerpc-altivec-vsx-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/powerpc-atomic-memory-operation-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/powerpc-hardware-transactional-memory-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/powerpc-matrix-multiply-assist-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/pru-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/risc-v-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/rx-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/s-390-system-z-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/sh-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/sparc-vis-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/ti-c6x-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/x86-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/x86-control-flow-protection-intrinsics.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/x86-transactional-memory-intrinsics.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/the-character-esc-in-constants.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/thread-local-storage.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/unnamed-structure-and-union-fields.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/using-vector-instructions-through-built-in-functions.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/when-is-a-volatile-object-accessed.rst:
	Add trailing newline.
	* doc/gcc/extensions-to-the-c-language-family/x86-specific-memory-model-extensions-for-transactional-memory.rst:
	Add trailing newline.
	* doc/gcc/funding.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/compiling-c++-programs.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/description.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/environment-variables-affecting-gcc.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/gcc-developer-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/aarch64-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/adapteva-epiphany-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/amd-gcn-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/arc-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/arm-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/avr-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/blackfin-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/c-sky-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/c6x-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/cris-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/darwin-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/dec-alpha-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/ebpf-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/fr30-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/frv-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/ft32-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/gnu-linux-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/h8-300-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/hppa-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/ia-64-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/ibm-rs-6000-and-powerpc-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/lm32-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/loongarch-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/m32c-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/m32r-d-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/m680x0-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/mcore-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/mep-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/microblaze-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/mips-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/mmix-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/mn10300-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/moxie-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/msp430-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/nds32-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/nios-ii-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/nvidia-ptx-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/openrisc-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/options-for-system-v.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/pdp-11-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/picochip-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/powerpc-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/pru-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/risc-v-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/rl78-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/rx-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/s-390-and-zseries-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/score-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/sh-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/solaris-2-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/sparc-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/v850-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/vax-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/visium-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/vms-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/vxworks-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/x86-windows-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/xstormy16-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/xtensa-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/machine-dependent-options/zseries-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/options-controlling-c++-dialect.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/options-controlling-c-dialect.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/options-controlling-objective-c-and-objective-c++-dialects.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/options-controlling-the-kind-of-output.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/options-controlling-the-preprocessor.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/options-for-code-generation-conventions.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/options-for-debugging-your-program.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/options-for-directory-search.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/options-for-linking.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/options-that-control-optimization.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/options-that-control-static-analysis.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/options-to-control-diagnostic-messages-formatting.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/options-to-request-or-suppress-warnings.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/passing-options-to-the-assembler.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/program-instrumentation-options.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/specifying-subprocesses-and-the-switches-to-pass-to-them.rst:
	Add trailing newline.
	* doc/gcc/gcc-command-options/using-precompiled-headers.rst:
	Add trailing newline.
	* doc/gcc/gcc.rst:
	Add trailing newline.
	* doc/gcc/gcov-dump.rst:
	Add trailing newline.
	* doc/gcc/gcov-tool.rst:
	Add trailing newline.
	* doc/gcc/gcov.rst:
	Add trailing newline.
	* doc/gcc/gcov/brief-description-of-gcov-data-files.rst:
	Add trailing newline.
	* doc/gcc/gcov/data-file-relocation-to-support-cross-profiling.rst:
	Add trailing newline.
	* doc/gcc/gcov/introduction-to-gcov.rst:
	Add trailing newline.
	* doc/gcc/gcov/invoking-gcov.rst:
	Add trailing newline.
	* doc/gcc/gcov/profiling-and-test-coverage-in-freestanding-environments.rst:
	Add trailing newline.
	* doc/gcc/gcov/using-gcov-with-gcc-optimization.rst:
	Add trailing newline.
	* doc/gcc/general-public-license-3.rst:
	Add trailing newline.
	* doc/gcc/gnu-free-documentation-license.rst:
	Add trailing newline.
	* doc/gcc/gnu-objective-c-features.rst:
	Add trailing newline.
	* doc/gcc/gnu-objective-c-features/compatibilityalias.rst:
	Add trailing newline.
	* doc/gcc/gnu-objective-c-features/constant-string-objects.rst:
	Add trailing newline.
	* doc/gcc/gnu-objective-c-features/exceptions.rst:
	Add trailing newline.
	* doc/gcc/gnu-objective-c-features/fast-enumeration.rst:
	Add trailing newline.
	* doc/gcc/gnu-objective-c-features/garbage-collection.rst:
	Add trailing newline.
	* doc/gcc/gnu-objective-c-features/gnu-objective-c-runtime-api.rst:
	Add trailing newline.
	* doc/gcc/gnu-objective-c-features/load-executing-code-before-main.rst:
	Add trailing newline.
	* doc/gcc/gnu-objective-c-features/messaging-with-the-gnu-objective-c-runtime.rst:
	Add trailing newline.
	* doc/gcc/gnu-objective-c-features/synchronization.rst:
	Add trailing newline.
	* doc/gcc/gnu-objective-c-features/type-encoding.rst:
	Add trailing newline.
	* doc/gcc/gnu.rst:
	Add trailing newline.
	* doc/gcc/have-you-found-a-bug.rst:
	Add trailing newline.
	* doc/gcc/how-and-where-to-report-bugs.rst:
	Add trailing newline.
	* doc/gcc/how-to-get-help-with-gcc.rst:
	Add trailing newline.
	* doc/gcc/index.rst:
	Add trailing newline.
	* doc/gcc/indices-and-tables.rst:
	Add trailing newline.
	* doc/gcc/known-causes-of-trouble-with-gcc.rst:
	Add trailing newline.
	* doc/gcc/known-causes-of-trouble-with-gcc/actual-bugs-we-havent-fixed-yet.rst:
	Add trailing newline.
	* doc/gcc/known-causes-of-trouble-with-gcc/certain-changes-we-dont-want-to-make.rst:
	Add trailing newline.
	* doc/gcc/known-causes-of-trouble-with-gcc/common-misunderstandings-with-gnu-c.rst:
	Add trailing newline.
	* doc/gcc/known-causes-of-trouble-with-gcc/disappointments-and-misunderstandings.rst:
	Add trailing newline.
	* doc/gcc/known-causes-of-trouble-with-gcc/fixed-header-files.rst:
	Add trailing newline.
	* doc/gcc/known-causes-of-trouble-with-gcc/incompatibilities-of-gcc.rst:
	Add trailing newline.
	* doc/gcc/known-causes-of-trouble-with-gcc/interoperation.rst:
	Add trailing newline.
	* doc/gcc/known-causes-of-trouble-with-gcc/standard-libraries.rst:
	Add trailing newline.
	* doc/gcc/known-causes-of-trouble-with-gcc/warning-messages-and-error-messages.rst:
	Add trailing newline.
	* doc/gcc/language-standards-supported-by-gcc.rst:
	Add trailing newline.
	* doc/gcc/language-standards-supported-by-gcc/c++-language.rst:
	Add trailing newline.
	* doc/gcc/language-standards-supported-by-gcc/c-language.rst:
	Add trailing newline.
	* doc/gcc/language-standards-supported-by-gcc/d-language.rst:
	Add trailing newline.
	* doc/gcc/language-standards-supported-by-gcc/go-language.rst:
	Add trailing newline.
	* doc/gcc/language-standards-supported-by-gcc/objective-c-and-objective-c++-languages.rst:
	Add trailing newline.
	* doc/gcc/lto-dump.rst:
	Add trailing newline.
	* doc/gcc/programming-languages-supported-by-gcc.rst:
	Add trailing newline.
	* doc/gcc/reporting-bugs.rst:
	Add trailing newline.
	* doc/gccint/analysis-and-optimization-of-gimple-tuples.rst:
	Add trailing newline.
	* doc/gccint/analysis-and-optimization-of-gimple-tuples/alias-analysis.rst:
	Add trailing newline.
	* doc/gccint/analysis-and-optimization-of-gimple-tuples/annotations.rst:
	Add trailing newline.
	* doc/gccint/analysis-and-optimization-of-gimple-tuples/memory-model.rst:
	Add trailing newline.
	* doc/gccint/analysis-and-optimization-of-gimple-tuples/ssa-operands.rst:
	Add trailing newline.
	* doc/gccint/analysis-and-optimization-of-gimple-tuples/static-single-assignment.rst:
	Add trailing newline.
	* doc/gccint/analysis-and-representation-of-loops.rst:
	Add trailing newline.
	* doc/gccint/analysis-and-representation-of-loops/data-dependency-analysis.rst:
	Add trailing newline.
	* doc/gccint/analysis-and-representation-of-loops/iv-analysis-on-rtl.rst:
	Add trailing newline.
	* doc/gccint/analysis-and-representation-of-loops/loop-closed-ssa-form.rst:
	Add trailing newline.
	* doc/gccint/analysis-and-representation-of-loops/loop-manipulation.rst:
	Add trailing newline.
	* doc/gccint/analysis-and-representation-of-loops/loop-querying.rst:
	Add trailing newline.
	* doc/gccint/analysis-and-representation-of-loops/loop-representation.rst:
	Add trailing newline.
	* doc/gccint/analysis-and-representation-of-loops/number-of-iterations-analysis.rst:
	Add trailing newline.
	* doc/gccint/analysis-and-representation-of-loops/scalar-evolutions.rst:
	Add trailing newline.
	* doc/gccint/analyzer-internals.rst:
	Add trailing newline.
	* doc/gccint/collect2.rst:
	Add trailing newline.
	* doc/gccint/contributing-to-gcc-development.rst:
	Add trailing newline.
	* doc/gccint/contributors-to-gcc.rst:
	Add trailing newline.
	* doc/gccint/control-flow-graph.rst:
	Add trailing newline.
	* doc/gccint/control-flow-graph/basic-blocks.rst:
	Add trailing newline.
	* doc/gccint/control-flow-graph/edges.rst:
	Add trailing newline.
	* doc/gccint/control-flow-graph/liveness-information.rst:
	Add trailing newline.
	* doc/gccint/control-flow-graph/maintaining-the-cfg.rst:
	Add trailing newline.
	* doc/gccint/control-flow-graph/profile-information.rst:
	Add trailing newline.
	* doc/gccint/copyright.rst:
	Add trailing newline.
	* doc/gccint/debugging-the-analyzer.rst:
	Add trailing newline.
	* doc/gccint/funding.rst:
	Add trailing newline.
	* doc/gccint/gcc-and-portability.rst:
	Add trailing newline.
	* doc/gccint/general-public-license-3.rst:
	Add trailing newline.
	* doc/gccint/generic.rst:
	Add trailing newline.
	* doc/gccint/generic/attributes-in-trees.rst:
	Add trailing newline.
	* doc/gccint/generic/c-and-c++-trees.rst:
	Add trailing newline.
	* doc/gccint/generic/declarations.rst:
	Add trailing newline.
	* doc/gccint/generic/deficiencies.rst:
	Add trailing newline.
	* doc/gccint/generic/expressions.rst:
	Add trailing newline.
	* doc/gccint/generic/functions.rst:
	Add trailing newline.
	* doc/gccint/generic/language-dependent-trees.rst:
	Add trailing newline.
	* doc/gccint/generic/overview.rst:
	Add trailing newline.
	* doc/gccint/generic/statements.rst:
	Add trailing newline.
	* doc/gccint/generic/types.rst:
	Add trailing newline.
	* doc/gccint/gimple-api.rst:
	Add trailing newline.
	* doc/gccint/gimple.rst:
	Add trailing newline.
	* doc/gccint/gimple/adding-a-new-gimple-statement-code.rst:
	Add trailing newline.
	* doc/gccint/gimple/class-hierarchy-of-gimple-statements.rst:
	Add trailing newline.
	* doc/gccint/gimple/exception-handling.rst:
	Add trailing newline.
	* doc/gccint/gimple/gimple-instruction-set.rst:
	Add trailing newline.
	* doc/gccint/gimple/gimple-sequences.rst:
	Add trailing newline.
	* doc/gccint/gimple/manipulating-gimple-statements.rst:
	Add trailing newline.
	* doc/gccint/gimple/operands.rst:
	Add trailing newline.
	* doc/gccint/gimple/sequence-iterators.rst:
	Add trailing newline.
	* doc/gccint/gimple/statement-and-operand-traversals.rst:
	Add trailing newline.
	* doc/gccint/gimple/temporaries.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-representation.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleasm.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleassign.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimplebind.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimplecall.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimplecatch.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimplecond.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimpledebug.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleehfilter.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimplegoto.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimplelabel.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimplenop.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompatomicload.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompatomicstore.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompcontinue.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompcritical.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompfor.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompmaster.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompordered.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompparallel.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompreturn.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompsection.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompsections.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompsingle.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimplephi.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleresx.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimplereturn.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleswitch.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimpletry.rst:
	Add trailing newline.
	* doc/gccint/gimple/tuple-specific-accessors/gimplewithcleanupexpr.rst:
	Add trailing newline.
	* doc/gccint/gnu-free-documentation-license.rst:
	Add trailing newline.
	* doc/gccint/guidelines-for-diagnostics.rst:
	Add trailing newline.
	* doc/gccint/guidelines-for-options.rst:
	Add trailing newline.
	* doc/gccint/host-common.rst:
	Add trailing newline.
	* doc/gccint/host-configuration.rst:
	Add trailing newline.
	* doc/gccint/host-filesystem.rst:
	Add trailing newline.
	* doc/gccint/host-makefile-fragments.rst:
	Add trailing newline.
	* doc/gccint/host-misc.rst:
	Add trailing newline.
	* doc/gccint/index.rst:
	Add trailing newline.
	* doc/gccint/indices-and-tables.rst:
	Add trailing newline.
	* doc/gccint/interfacing-to-gcc-output.rst:
	Add trailing newline.
	* doc/gccint/introduction.rst:
	Add trailing newline.
	* doc/gccint/language-front-ends-in-gcc.rst:
	Add trailing newline.
	* doc/gccint/link-time-optimization.rst:
	Add trailing newline.
	* doc/gccint/link-time-optimization/design-overview.rst:
	Add trailing newline.
	* doc/gccint/link-time-optimization/internal-flags-controlling-lto1.rst:
	Add trailing newline.
	* doc/gccint/link-time-optimization/lto-file-sections.rst:
	Add trailing newline.
	* doc/gccint/link-time-optimization/using-summary-information-in-ipa-passes.rst:
	Add trailing newline.
	* doc/gccint/link-time-optimization/whole-program-assumptions-linker-plugin-and-symbol-visibilities.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/c-statements-for-assembler-output.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/canonicalization-of-instructions.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/conditional-execution.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/constant-definitions.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/defining-how-to-split-instructions.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/defining-jump-instruction-patterns.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/defining-looping-instruction-patterns.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/defining-rtl-sequences-for-code-generation.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/everything-about-instruction-patterns.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/example-of-defineinsn.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/including-patterns-in-machine-descriptions.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/instruction-attributes.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/interdependence-of-patterns.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/iterators.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/machine-specific-peephole-optimizers.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/operand-constraints.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/output-templates-and-operand-substitution.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/overview-of-how-the-machine-description-is-used.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/predicates.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/rtl-template.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/rtl-templates-transformations.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/standard-pattern-names-for-generation.rst:
	Add trailing newline.
	* doc/gccint/machine-descriptions/when-the-order-of-patterns-matters.rst:
	Add trailing newline.
	* doc/gccint/makefile-fragments.rst:
	Add trailing newline.
	* doc/gccint/match-and-simplify.rst:
	Add trailing newline.
	* doc/gccint/memory-management-and-type-information.rst:
	Add trailing newline.
	* doc/gccint/memory-management-and-type-information/how-to-invoke-the-garbage-collector.rst:
	Add trailing newline.
	* doc/gccint/memory-management-and-type-information/marking-roots-for-the-garbage-collector.rst:
	Add trailing newline.
	* doc/gccint/memory-management-and-type-information/source-files-containing-type-information.rst:
	Add trailing newline.
	* doc/gccint/memory-management-and-type-information/support-for-inheritance.rst:
	Add trailing newline.
	* doc/gccint/memory-management-and-type-information/support-for-user-provided-gc-marking-routines.rst:
	Add trailing newline.
	* doc/gccint/memory-management-and-type-information/the-inside-of-a-gty.rst:
	Add trailing newline.
	* doc/gccint/memory-management-and-type-information/troubleshooting-the-garbage-collector.rst:
	Add trailing newline.
	* doc/gccint/option-file-format.rst:
	Add trailing newline.
	* doc/gccint/option-properties.rst:
	Add trailing newline.
	* doc/gccint/option-specification-files.rst:
	Add trailing newline.
	* doc/gccint/passes-and-files-of-the-compiler.rst:
	Add trailing newline.
	* doc/gccint/passes-and-files-of-the-compiler/gimplification-pass.rst:
	Add trailing newline.
	* doc/gccint/passes-and-files-of-the-compiler/inter-procedural-optimization-passes.rst:
	Add trailing newline.
	* doc/gccint/passes-and-files-of-the-compiler/optimization-info.rst:
	Add trailing newline.
	* doc/gccint/passes-and-files-of-the-compiler/parsing-pass.rst:
	Add trailing newline.
	* doc/gccint/passes-and-files-of-the-compiler/pass-manager.rst:
	Add trailing newline.
	* doc/gccint/passes-and-files-of-the-compiler/rtl-passes.rst:
	Add trailing newline.
	* doc/gccint/passes-and-files-of-the-compiler/tree-ssa-passes.rst:
	Add trailing newline.
	* doc/gccint/plugins.rst:
	Add trailing newline.
	* doc/gccint/plugins/building-gcc-plugins.rst:
	Add trailing newline.
	* doc/gccint/plugins/controlling-which-passes-are-being-run.rst:
	Add trailing newline.
	* doc/gccint/plugins/giving-information-about-a-plugin.rst:
	Add trailing newline.
	* doc/gccint/plugins/interacting-with-the-gcc-garbage-collector.rst:
	Add trailing newline.
	* doc/gccint/plugins/interacting-with-the-pass-manager.rst:
	Add trailing newline.
	* doc/gccint/plugins/keeping-track-of-available-passes.rst:
	Add trailing newline.
	* doc/gccint/plugins/loading-plugins.rst:
	Add trailing newline.
	* doc/gccint/plugins/plugin-api.rst:
	Add trailing newline.
	* doc/gccint/plugins/recording-information-about-pass-execution.rst:
	Add trailing newline.
	* doc/gccint/plugins/registering-custom-attributes-or-pragmas.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/access-to-operands.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/access-to-special-operands.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/assembler-instructions-as-expressions.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/bit-fields.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/comparison-operations.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/constant-expression-types.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/conversions.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/declarations.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/embedded-side-effects-on-addresses.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/flags-in-an-rtl-expression.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/insns.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/machine-modes.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/on-the-side-ssa-form-for-rtl.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/reading-rtl.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/registers-and-memory.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/rtl-classes-and-formats.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/rtl-expressions-for-arithmetic.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/rtl-object-types.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/rtl-representation-of-function-call-insns.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/side-effect-expressions.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/structure-sharing-assumptions.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/variable-location-debug-information-in-rtl.rst:
	Add trailing newline.
	* doc/gccint/rtl-representation/vector-operations.rst:
	Add trailing newline.
	* doc/gccint/sizes-and-offsets-as-runtime-invariants.rst:
	Add trailing newline.
	* doc/gccint/sizes-and-offsets-as-runtime-invariants/alignment-of-polyints.rst:
	Add trailing newline.
	* doc/gccint/sizes-and-offsets-as-runtime-invariants/arithmetic-on-polyints.rst:
	Add trailing newline.
	* doc/gccint/sizes-and-offsets-as-runtime-invariants/comparisons-involving-polyint.rst:
	Add trailing newline.
	* doc/gccint/sizes-and-offsets-as-runtime-invariants/computing-bounds-on-polyints.rst:
	Add trailing newline.
	* doc/gccint/sizes-and-offsets-as-runtime-invariants/consequences-of-using-polyint.rst:
	Add trailing newline.
	* doc/gccint/sizes-and-offsets-as-runtime-invariants/converting-polyints.rst:
	Add trailing newline.
	* doc/gccint/sizes-and-offsets-as-runtime-invariants/guidelines-for-using-polyint.rst:
	Add trailing newline.
	* doc/gccint/sizes-and-offsets-as-runtime-invariants/miscellaneous-polyint-routines.rst:
	Add trailing newline.
	* doc/gccint/sizes-and-offsets-as-runtime-invariants/overview-of-polyint.rst:
	Add trailing newline.
	* doc/gccint/source-tree-structure-and-build-system.rst:
	Add trailing newline.
	* doc/gccint/source-tree-structure-and-build-system/configure-terms-and-history.rst:
	Add trailing newline.
	* doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory.rst:
	Add trailing newline.
	* doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/anatomy-of-a-language-front-end.rst:
	Add trailing newline.
	* doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/anatomy-of-a-target-back-end.rst:
	Add trailing newline.
	* doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/build-system-in-the-gcc-directory.rst:
	Add trailing newline.
	* doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/configuration-in-the-gcc-directory.rst:
	Add trailing newline.
	* doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/headers-installed-by-gcc.rst:
	Add trailing newline.
	* doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/library-source-files-and-headers-under-the-gcc-directory.rst:
	Add trailing newline.
	* doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/makefile-targets.rst:
	Add trailing newline.
	* doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/subdirectories-of-gcc.rst:
	Add trailing newline.
	* doc/gccint/source-tree-structure-and-build-system/top-level-source-directory.rst:
	Add trailing newline.
	* doc/gccint/standard-header-file-directories.rst:
	Add trailing newline.
	* doc/gccint/static-analyzer.rst:
	Add trailing newline.
	* doc/gccint/target-macros.rst:
	Add trailing newline.
	* doc/gccint/target-macros/controlling-debugging-information-format.rst:
	Add trailing newline.
	* doc/gccint/target-macros/controlling-the-compilation-driver-gcc.rst:
	Add trailing newline.
	* doc/gccint/target-macros/cross-compilation-and-floating-point.rst:
	Add trailing newline.
	* doc/gccint/target-macros/defining-coprocessor-specifics-for-mips-targets.rst:
	Add trailing newline.
	* doc/gccint/target-macros/defining-data-structures-for-per-function-information.rst:
	Add trailing newline.
	* doc/gccint/target-macros/defining-the-output-assembler-language.rst:
	Add trailing newline.
	* doc/gccint/target-macros/defining-the-output-assembler-language/assembler-commands-for-alignment.rst:
	Add trailing newline.
	* doc/gccint/target-macros/defining-the-output-assembler-language/how-initialization-functions-are-handled.rst:
	Add trailing newline.
	* doc/gccint/target-macros/defining-the-output-assembler-language/macros-controlling-initialization-routines.rst:
	Add trailing newline.
	* doc/gccint/target-macros/defining-the-output-assembler-language/output-and-generation-of-labels.rst:
	Add trailing newline.
	* doc/gccint/target-macros/defining-the-output-assembler-language/output-of-assembler-instructions.rst:
	Add trailing newline.
	* doc/gccint/target-macros/defining-the-output-assembler-language/output-of-data.rst:
	Add trailing newline.
	* doc/gccint/target-macros/defining-the-output-assembler-language/output-of-uninitialized-variables.rst:
	Add trailing newline.
	* doc/gccint/target-macros/implicit-calls-to-library-routines.rst:
	Add trailing newline.
	* doc/gccint/target-macros/layout-of-source-language-data-types.rst:
	Add trailing newline.
	* doc/gccint/target-macros/position-independent-code.rst:
	Add trailing newline.
	* doc/gccint/target-macros/register-usage.rst:
	Add trailing newline.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions.rst:
	Add trailing newline.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/basic-stack-layout.rst:
	Add trailing newline.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/caller-saves-register-allocation.rst:
	Add trailing newline.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/exception-handling-support.rst:
	Add trailing newline.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/passing-function-arguments-on-the-stack.rst:
	Add trailing newline.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/registers-that-address-the-stack-frame.rst:
	Add trailing newline.
	* doc/gccint/target-macros/support-for-nested-functions.rst:
	Add trailing newline.
	* doc/gccint/target-macros/the-global-targetm-variable.rst:
	Add trailing newline.
	* doc/gccint/target-makefile-fragments.rst:
	Add trailing newline.
	* doc/gccint/testsuites.rst:
	Add trailing newline.
	* doc/gccint/testsuites/ada-language-testsuites.rst:
	Add trailing newline.
	* doc/gccint/testsuites/c-language-testsuites.rst:
	Add trailing newline.
	* doc/gccint/testsuites/directives-used-within-dejagnu-tests.rst:
	Add trailing newline.
	* doc/gccint/testsuites/directives-used-within-dejagnu-tests/commands-for-use-in-dg-final.rst:
	Add trailing newline.
	* doc/gccint/testsuites/directives-used-within-dejagnu-tests/features-for-dg-add-options.rst:
	Add trailing newline.
	* doc/gccint/testsuites/directives-used-within-dejagnu-tests/keywords-describing-target-attributes.rst:
	Add trailing newline.
	* doc/gccint/testsuites/directives-used-within-dejagnu-tests/selecting-targets-to-which-a-test-applies.rst:
	Add trailing newline.
	* doc/gccint/testsuites/directives-used-within-dejagnu-tests/syntax-and-descriptions-of-test-directives.rst:
	Add trailing newline.
	* doc/gccint/testsuites/directives-used-within-dejagnu-tests/variants-of-dg-require-support.rst:
	Add trailing newline.
	* doc/gccint/testsuites/idioms-used-in-testsuite-code.rst:
	Add trailing newline.
	* doc/gccint/testsuites/support-for-testing-binary-compatibility.rst:
	Add trailing newline.
	* doc/gccint/testsuites/support-for-testing-gcov.rst:
	Add trailing newline.
	* doc/gccint/testsuites/support-for-testing-gimple-passes.rst:
	Add trailing newline.
	* doc/gccint/testsuites/support-for-testing-link-time-optimizations.rst:
	Add trailing newline.
	* doc/gccint/testsuites/support-for-testing-profile-directed-optimizations.rst:
	Add trailing newline.
	* doc/gccint/testsuites/support-for-testing-rtl-passes.rst:
	Add trailing newline.
	* doc/gccint/testsuites/support-for-torture-testing-using-multiple-options.rst:
	Add trailing newline.
	* doc/gccint/the-gcc-low-level-runtime-library.rst:
	Add trailing newline.
	* doc/gccint/the-gcc-low-level-runtime-library/language-independent-routines-for-exception-handling.rst:
	Add trailing newline.
	* doc/gccint/the-gcc-low-level-runtime-library/miscellaneous-runtime-library-routines.rst:
	Add trailing newline.
	* doc/gccint/the-gcc-low-level-runtime-library/routines-for-decimal-floating-point-emulation.rst:
	Add trailing newline.
	* doc/gccint/the-gcc-low-level-runtime-library/routines-for-fixed-point-fractional-emulation.rst:
	Add trailing newline.
	* doc/gccint/the-gcc-low-level-runtime-library/routines-for-floating-point-emulation.rst:
	Add trailing newline.
	* doc/gccint/the-gcc-low-level-runtime-library/routines-for-integer-arithmetic.rst:
	Add trailing newline.
	* doc/gccint/the-language.rst:
	Add trailing newline.
	* doc/gccint/user-experience-guidelines.rst:
	Add trailing newline.
	* doc/install/binaries.rst:
	Add trailing newline.
	* doc/install/building.rst:
	Add trailing newline.
	* doc/install/building/building-a-cross-compiler.rst:
	Add trailing newline.
	* doc/install/building/building-a-native-compiler.rst:
	Add trailing newline.
	* doc/install/building/building-in-parallel.rst:
	Add trailing newline.
	* doc/install/building/building-the-ada-compiler.rst:
	Add trailing newline.
	* doc/install/building/building-the-d-compiler.rst:
	Add trailing newline.
	* doc/install/building/building-with-profile-feedback.rst:
	Add trailing newline.
	* doc/install/configuration.rst:
	Add trailing newline.
	* doc/install/copyright.rst:
	Add trailing newline.
	* doc/install/downloading-gcc.rst:
	Add trailing newline.
	* doc/install/final-installation.rst:
	Add trailing newline.
	* doc/install/gnu-free-documentation-license.rst:
	Add trailing newline.
	* doc/install/host-target-specific-installation-notes-for-gcc.rst:
	Add trailing newline.
	* doc/install/how-can-you-run-the-testsuite-on-selected-tests.rst:
	Add trailing newline.
	* doc/install/how-to-interpret-test-results.rst:
	Add trailing newline.
	* doc/install/index.rst:
	Add trailing newline.
	* doc/install/indices-and-tables.rst:
	Add trailing newline.
	* doc/install/installing-gcc.rst:
	Add trailing newline.
	* doc/install/passing-options-and-running-multiple-testsuites.rst:
	Add trailing newline.
	* doc/install/prerequisites.rst:
	Add trailing newline.
	* doc/install/submitting-test-results.rst:
	Add trailing newline.
	* doc/install/testing.rst:
	Add trailing newline.

2022-11-09  Martin Liska  <mliska@suse.cz>

	* opts.cc (get_option_html_page): Port to sphinx URLs.
	(get_option_url): Likewise.
	(test_get_option_html_page): Likewise.

2022-11-09  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/107569
	* range-op-float.cc (foperator_abs::op1_range): Clear NaNs
	from the negatives frange before unioning it into r.

2022-11-09  Martin Liska  <mliska@suse.cz>

	* Makefile.in: Add vpath default for .rst files.
	* config/avr/avr-devices.cc: For port RST.
	* config/avr/avr-mcus.def: Update path.
	* config/avr/gen-avr-mmcu-texi.cc: Moved to...
	* config/avr/gen-avr-mmcu-rst.cc: ...here.
	* config/avr/t-avr: Update to rst.
	* doc/gcc/gcc-command-options/machine-dependent-options/avr-mmcu.rst: Re-generate.

2022-11-09  Philipp Tomsich  <philipp.tomsich@vrull.eu>

	* config/riscv/riscv.cc (riscv_rtx_costs): Add BSWAP.

2022-11-09  Xi Ruoyao  <xry111@xry111.site>

	* config/loongarch/loongarch.cc (loongarch_emit_int_compare):
	Avoid signed overflow.

2022-11-09  Aldy Hernandez  <aldyh@redhat.com>

	* range-op-float.cc (foperator_plus::op1_range): New.
	(foperator_plus::op2_range): New.
	(foperator_minus::op1_range): New.
	(foperator_minus::op2_range): New.

2022-11-09  Martin Liska  <mliska@suse.cz>

	* Makefile.in: Support installation if sphinx-build is missing.

2022-11-09  Martin Liska  <mliska@suse.cz>

	* doc/gccint/target-macros/stack-layout-and-calling-conventions/passing-arguments-in-registers.rst:
	Port to RST.
	* doc/gccint/target-macros/storage-layout.rst: Likewise.
	* doc/gcc/gcc-command-options/machine-dependent-options/x86-options.rst: Sync with master.
	* doc/gcc/gcc-command-options/option-summary.rst: Likewise.

2022-11-09  Martin Liska  <mliska@suse.cz>

	* doc/gccint/target-macros/defining-the-output-assembler-language/assembler-commands-for-exception-regions.rst:
	Do not include tm.rst.in.
	* doc/gccint/target-macros/defining-the-output-assembler-language/the-overall-framework-of-an-assembler-file.rst:
	Likewise.
	* doc/gccint/target-macros/run-time-target-specification.rst:
	Likewise.

2022-11-09  Martin Liska  <mliska@suse.cz>

	* doc/gcc/gcc-command-options/options-controlling-the-kind-of-output.rst:
	Fix cross manual refs.
	* doc/gcc/language-standards-supported-by-gcc/references-for-other-languages.rst:
	Likewise.

2022-11-09  Martin Liska  <mliska@suse.cz>

	* Makefile.in: Support --with-sphinx-build.
	* configure.ac:
	* configure: Regenerate.

2022-11-09  Martin Liska  <mliska@suse.cz>

	* target.def: Use proper lexers for target macros.
	* doc/gccint/target-macros/tm.rst.in: Re-generate.

2022-11-09  Martin Liska  <mliska@suse.cz>

	* doc/analyzer.texi: Removed.
	* doc/avr-mmcu.texi: Removed.
	* doc/bugreport.texi: Removed.
	* doc/cfg.texi: Removed.
	* doc/collect2.texi: Removed.
	* doc/compat.texi: Removed.
	* doc/configfiles.texi: Removed.
	* doc/configterms.texi: Removed.
	* doc/contrib.texi: Removed.
	* doc/contribute.texi: Removed.
	* doc/cpp.texi: Removed.
	* doc/cppdiropts.texi: Removed.
	* doc/cppenv.texi: Removed.
	* doc/cppinternals.texi: Removed.
	* doc/cppopts.texi: Removed.
	* doc/cppwarnopts.texi: Removed.
	* doc/extend.texi: Removed.
	* doc/fragments.texi: Removed.
	* doc/frontends.texi: Removed.
	* doc/gcc.texi: Removed.
	* doc/gccint.texi: Removed.
	* doc/gcov-dump.texi: Removed.
	* doc/gcov-tool.texi: Removed.
	* doc/gcov.texi: Removed.
	* doc/generic.texi: Removed.
	* doc/gimple.texi: Removed.
	* doc/gnu.texi: Removed.
	* doc/gty.texi: Removed.
	* doc/headerdirs.texi: Removed.
	* doc/hostconfig.texi: Removed.
	* doc/implement-c.texi: Removed.
	* doc/implement-cxx.texi: Removed.
	* doc/include/fdl.texi: Removed.
	* doc/include/funding.texi: Removed.
	* doc/include/gcc-common.texi: Removed.
	* doc/include/gpl_v3.texi: Removed.
	* doc/install.texi: Removed.
	* doc/interface.texi: Removed.
	* doc/invoke.texi: Removed.
	* doc/languages.texi: Removed.
	* doc/libgcc.texi: Removed.
	* doc/loop.texi: Removed.
	* doc/lto-dump.texi: Removed.
	* doc/lto.texi: Removed.
	* doc/makefile.texi: Removed.
	* doc/match-and-simplify.texi: Removed.
	* doc/md.texi: Removed.
	* doc/objc.texi: Removed.
	* doc/optinfo.texi: Removed.
	* doc/options.texi: Removed.
	* doc/passes.texi: Removed.
	* doc/plugins.texi: Removed.
	* doc/poly-int.texi: Removed.
	* doc/portability.texi: Removed.
	* doc/rtl.texi: Removed.
	* doc/service.texi: Removed.
	* doc/sourcebuild.texi: Removed.
	* doc/standards.texi: Removed.
	* doc/tm.texi: Removed.
	* doc/tree-ssa.texi: Removed.
	* doc/trouble.texi: Removed.
	* doc/ux.texi: Removed.
	* doc/tm.texi.in: Removed.

2022-11-09  Martin Liska  <mliska@suse.cz>

	* doc/gccint/target-macros/tm.rst.in: New file.

2022-11-09  Martin Liska  <mliska@suse.cz>

	* Makefile.in: Support Sphinx based documentation.
	* configure: Regenerate.
	* configure.ac: Support Sphinx based documentation.
	* genhooks.cc (struct s_hook): Emit tm.rst.in file.

2022-11-09  Martin Liska  <mliska@suse.cz>

	* doc/gccint/target-macros/adding-support-for-named-address-spaces.rst: Use tm.rst.in file.
	* doc/gccint/target-macros/addressing-modes.rst: Likewise.
	* doc/gccint/target-macros/adjusting-the-instruction-scheduler.rst: Likewise.
	* doc/gccint/target-macros/anchored-addresses.rst: Likewise.
	* doc/gccint/target-macros/c++-abi-parameters.rst: Likewise.
	* doc/gccint/target-macros/condition-code-status.rst: Likewise.
	* doc/gccint/target-macros/controlling-debugging-information-format.rst: Likewise.
	* doc/gccint/target-macros/controlling-the-compilation-driver-gcc.rst: Likewise.
	* doc/gccint/target-macros/d-abi-parameters.rst: Likewise.
	* doc/gccint/target-macros/defining-target-specific-uses-of-attribute.rst: Likewise.
	* doc/gccint/target-macros/defining-the-output-assembler-language/assembler-commands-for-exception-regions.rst:
	Likewise.
	* doc/gccint/target-macros/defining-the-output-assembler-language/macros-controlling-initialization-routines.rst:
	Likewise.
	* doc/gccint/target-macros/defining-the-output-assembler-language/output-and-generation-of-labels.rst:
	Likewise.
	* doc/gccint/target-macros/defining-the-output-assembler-language/output-of-assembler-instructions.rst:
	Likewise.
	* doc/gccint/target-macros/defining-the-output-assembler-language/output-of-data.rst:
	Likewise.
	* doc/gccint/target-macros/defining-the-output-assembler-language/output-of-dispatch-tables.rst:
	Likewise.
	* doc/gccint/target-macros/defining-the-output-assembler-language/the-overall-framework-of-an-assembler-file.rst:
	Likewise.
	* doc/gccint/target-macros/describing-relative-costs-of-operations.rst: Likewise.
	* doc/gccint/target-macros/dividing-the-output-into-sections-texts-data.rst: Likewise.
	* doc/gccint/target-macros/emulating-tls.rst: Likewise.
	* doc/gccint/target-macros/implementing-the-varargs-macros.rst: Likewise.
	* doc/gccint/target-macros/implicit-calls-to-library-routines.rst: Likewise.
	* doc/gccint/target-macros/layout-of-source-language-data-types.rst: Likewise.
	* doc/gccint/target-macros/miscellaneous-parameters.rst: Likewise.
	* doc/gccint/target-macros/mode-switching-instructions.rst: Likewise.
	* doc/gccint/target-macros/parameters-for-precompiled-header-validity-checking.rst:
	Likewise.
	* doc/gccint/target-macros/register-classes.rst: Likewise.
	* doc/gccint/target-macros/register-usage.rst: Likewise.
	* doc/gccint/target-macros/run-time-target-specification.rst: Likewise.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/basic-stack-layout.rst:
	Likewise.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/eliminating-frame-pointer-and-arg-pointer.rst:
	Likewise.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/function-entry-and-exit.rst:
	Likewise.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/generating-code-for-profiling.rst:
	Likewise.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/how-large-values-are-returned.rst:
	Likewise.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/how-scalar-function-values-are-returned.rst:
	Likewise.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/miscellaneous-register-hooks.rst:
	Likewise.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/passing-arguments-in-registers.rst:
	Likewise.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/passing-function-arguments-on-the-stack.rst:
	Likewise.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/permitting-tail-calls.rst:
	Likewise.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/registers-that-address-the-stack-frame.rst:
	Likewise.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/shrink-wrapping-separate-components.rst:
	Likewise.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/specifying-how-stack-checking-is-done.rst:
	Likewise.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/stack-smashing-protection.rst:
	Likewise.
	* doc/gccint/target-macros/storage-layout.rst: Likewise.
	* doc/gccint/target-macros/support-for-nested-functions.rst: Likewise.

2022-11-09  Martin Liska  <mliska@suse.cz>

	* common/common-target.def: Port to RST.
	* target.def: Port to RST.

2022-11-09  Martin Liska  <mliska@suse.cz>

	* doc/cpp/character-sets.rst: New file.
	* doc/cpp/conditional-syntax.rst: New file.
	* doc/cpp/conditional-uses.rst: New file.
	* doc/cpp/conditionals.rst: New file.
	* doc/cpp/conf.py: New file.
	* doc/cpp/copyright.rst: New file.
	* doc/cpp/deleted-code.rst: New file.
	* doc/cpp/diagnostics.rst: New file.
	* doc/cpp/environment-variables.rst: New file.
	* doc/cpp/gnu-free-documentation-license.rst: New file.
	* doc/cpp/header-files.rst: New file.
	* doc/cpp/header-files/alternatives-to-wrapper-ifndef.rst: New file.
	* doc/cpp/header-files/computed-includes.rst: New file.
	* doc/cpp/header-files/include-operation.rst: New file.
	* doc/cpp/header-files/include-syntax.rst: New file.
	* doc/cpp/header-files/once-only-headers.rst: New file.
	* doc/cpp/header-files/search-path.rst: New file.
	* doc/cpp/header-files/system-headers.rst: New file.
	* doc/cpp/header-files/wrapper-headers.rst: New file.
	* doc/cpp/implementation-defined-behavior.rst: New file.
	* doc/cpp/implementation-details.rst: New file.
	* doc/cpp/implementation-limits.rst: New file.
	* doc/cpp/index.rst: New file.
	* doc/cpp/indices-and-tables.rst: New file.
	* doc/cpp/initial-processing.rst: New file.
	* doc/cpp/invocation.rst: New file.
	* doc/cpp/line-control.rst: New file.
	* doc/cpp/macros.rst: New file.
	* doc/cpp/macros/concatenation.rst: New file.
	* doc/cpp/macros/directives-within-macro-arguments.rst: New file.
	* doc/cpp/macros/function-like-macros.rst: New file.
	* doc/cpp/macros/macro-arguments.rst: New file.
	* doc/cpp/macros/macro-pitfalls.rst: New file.
	* doc/cpp/macros/object-like-macros.rst: New file.
	* doc/cpp/macros/predefined-macros.rst: New file.
	* doc/cpp/macros/stringizing.rst: New file.
	* doc/cpp/macros/undefining-and-redefining-macros.rst: New file.
	* doc/cpp/macros/variadic-macros.rst: New file.
	* doc/cpp/obsolete-features.rst: New file.
	* doc/cpp/other-directives.rst: New file.
	* doc/cpp/overview.rst: New file.
	* doc/cpp/pragmas.rst: New file.
	* doc/cpp/preprocessor-output.rst: New file.
	* doc/cpp/the-preprocessing-language.rst: New file.
	* doc/cpp/tokenization.rst: New file.
	* doc/cpp/traditional-lexical-analysis.rst: New file.
	* doc/cpp/traditional-macros.rst: New file.
	* doc/cpp/traditional-miscellany.rst: New file.
	* doc/cpp/traditional-mode.rst: New file.
	* doc/cpp/traditional-warnings.rst: New file.
	* doc/cppinternals/conf.py: New file.
	* doc/cppinternals/copyright.rst: New file.
	* doc/cppinternals/cppinternals.rst: New file.
	* doc/cppinternals/cpplib.rst: New file.
	* doc/cppinternals/files.rst: New file.
	* doc/cppinternals/index.rst: New file.
	* doc/cppinternals/indices-and-tables.rst: New file.
	* doc/cppinternals/internal-representation-of-macros.rst: New file.
	* doc/cppinternals/just-which-line-number-anyway.rst: New file.
	* doc/cppinternals/lexing-a-line.rst: New file.
	* doc/cppinternals/lexing-a-token.rst: New file.
	* doc/cppinternals/looking-for-a-function-like-macros-opening-parenthesis.rst: New file.
	* doc/cppinternals/macro-expansion-overview.rst: New file.
	* doc/cppinternals/marking-tokens-ineligible-for-future-expansion.rst: New file.
	* doc/cppinternals/multiple-include-optimization.rst: New file.
	* doc/cppinternals/overview.rst: New file.
	* doc/cppinternals/representation-of-line-numbers.rst: New file.
	* doc/cppinternals/scanning-the-replacement-list-for-macros-to-expand.rst: New file.
	* doc/gcc/binary-compatibility.rst: New file.
	* doc/gcc/c++-implementation-defined-behavior.rst: New file.
	* doc/gcc/c-implementation-defined-behavior.rst: New file.
	* doc/gcc/c-implementation-defined-behavior/architecture.rst: New file.
	* doc/gcc/c-implementation-defined-behavior/arrays-and-pointers.rst: New file.
	* doc/gcc/c-implementation-defined-behavior/characters.rst: New file.
	* doc/gcc/c-implementation-defined-behavior/declarators.rst: New file.
	* doc/gcc/c-implementation-defined-behavior/environment.rst: New file.
	* doc/gcc/c-implementation-defined-behavior/floating-point.rst: New file.
	* doc/gcc/c-implementation-defined-behavior/hints.rst: New file.
	* doc/gcc/c-implementation-defined-behavior/identifiers.rst: New file.
	* doc/gcc/c-implementation-defined-behavior/integers.rst: New file.
	* doc/gcc/c-implementation-defined-behavior/library-functions.rst: New file.
	* doc/gcc/c-implementation-defined-behavior/locale-specific-behavior.rst: New file.
	* doc/gcc/c-implementation-defined-behavior/preprocessing-directives.rst: New file.
	* doc/gcc/c-implementation-defined-behavior/qualifiers.rst: New file.
	* doc/gcc/c-implementation-defined-behavior/statements.rst: New file.
	* doc/gcc/c-implementation-defined-behavior/structures-unions-enumerations-and-bit-fields.rst:
	New file.
	* doc/gcc/c-implementation-defined-behavior/translation.rst: New file.
	* doc/gcc/conditionally-supported-behavior.rst: New file.
	* doc/gcc/conf.py: New file.
	* doc/gcc/contributing-to-gcc-development.rst: New file.
	* doc/gcc/contributors-to-gcc.rst: New file.
	* doc/gcc/copyright.rst: New file.
	* doc/gcc/exception-handling.rst: New file.
	* doc/gcc/extensions-to-the-c++-language.rst: New file.
	* doc/gcc/extensions-to-the-c++-language/backwards-compatibility.rst: New file.
	* doc/gcc/extensions-to-the-c++-language/c++-concepts.rst: New file.
	* doc/gcc/extensions-to-the-c++-language/c++-interface-and-implementation-pragmas.rst:
	New file.
	* doc/gcc/extensions-to-the-c++-language/c++-specific-variable-function-and-type-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c++-language/deprecated-features.rst: New file.
	* doc/gcc/extensions-to-the-c++-language/extracting-the-function-pointer-from-a-bound-pointer-to-member-function.rst:
	New file.
	* doc/gcc/extensions-to-the-c++-language/function-multiversioning.rst: New file.
	* doc/gcc/extensions-to-the-c++-language/restricting-pointer-aliasing.rst: New file.
	* doc/gcc/extensions-to-the-c++-language/type-traits.rst: New file.
	* doc/gcc/extensions-to-the-c++-language/vague-linkage.rst: New file.
	* doc/gcc/extensions-to-the-c++-language/when-is-a-volatile-c++-object-accessed.rst:
	New file.
	* doc/gcc/extensions-to-the-c++-language/wheres-the-template.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/128-bit-integers.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/additional-floating-types.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/alternate-keywords.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/an-inline-function-is-as-fast-as-a-macro.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/arithmetic-on-void-and-function-pointers.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/arrays-of-length-zero.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/arrays-of-variable-length.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/attribute-syntax.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/binary-constants-using-the-0b-prefix.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/built-in-functions-for-memory-model-aware-atomic-operations.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/built-in-functions-to-perform-arithmetic-with-overflow-checking.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/c++-style-comments.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/case-ranges.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/cast-to-a-union-type.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/complex-numbers.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/compound-literals.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/conditionals-with-omitted-operands.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/constructing-function-calls.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/decimal-floating-types.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/aarch64-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/amd-gcn-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/arc-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/arm-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/avr-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/blackfin-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/bpf-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/c-sky-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/common-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/epiphany-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/h8-300-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/ia-64-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/m32c-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/m32r-d-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/m68k-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/mcore-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/mep-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/microblaze-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/microsoft-windows-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/mips-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/msp430-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/nds32-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/nios-ii-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/nvidia-ptx-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/powerpc-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/risc-v-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/rl78-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/rx-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/s-390-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/sh-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/symbian-os-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/v850-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/visium-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/x86-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/declaring-attributes-of-functions/xstormy16-function-attributes.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/designated-initializers.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/determining-the-alignment-of-functions-types-or-variables.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/dollar-signs-in-identifier-names.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/double-word-integers.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/enumerator-attributes.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/fixed-point-types.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/format-checks-specific-to-particular-target-machines.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/function-names-as-strings.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/getting-the-return-or-frame-address-of-a-function.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/half-precision-floating-point.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/hex-floats.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/how-to-use-inline-assembly-language-in-c-code.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/incomplete-enum-types.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/label-attributes.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/labels-as-values.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/legacy-sync-built-in-functions-for-atomic-memory-access.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/locally-declared-labels.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/macros-with-a-variable-number-of-arguments.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/mixed-declarations-labels-and-code.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/named-address-spaces.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/nested-functions.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/non-constant-initializers.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/non-lvalue-arrays-may-have-subscripts.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/nonlocal-gotos.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/object-size-checking-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/other-built-in-functions-provided-by-gcc.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/pointer-arguments-in-variadic-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/pointers-to-arrays-with-qualifiers-work-as-expected.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/pragmas-accepted-by-gcc.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/prototypes-and-old-style-function-definitions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/referring-to-a-type-with-typeof.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/slightly-looser-rules-for-escaped-newlines.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/specifying-attributes-of-types.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/specifying-attributes-of-variables.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/statement-attributes.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/statements-and-declarations-in-expressions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/structures-with-no-members.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/support-for-offsetof.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/aarch64-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/alpha-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/altera-nios-ii-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/arc-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/arc-simd-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/arm-armv8-m-security-extensions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/arm-c-language-extensions-acle.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/arm-floating-point-status-and-control-intrinsics.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/arm-iwmmxt-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/avr-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/basic-powerpc-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/blackfin-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/bpf-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/fr-v-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/mips-dsp-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/mips-loongson-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/mips-paired-single-support.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/mips-simd-architecture-msa-support.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/msp430-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/nds32-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/other-mips-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/picochip-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/powerpc-altivec-vsx-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/powerpc-atomic-memory-operation-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/powerpc-hardware-transactional-memory-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/powerpc-matrix-multiply-assist-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/pru-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/risc-v-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/rx-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/s-390-system-z-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/sh-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/sparc-vis-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/ti-c6x-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/x86-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/x86-control-flow-protection-intrinsics.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/target-builtins/x86-transactional-memory-intrinsics.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/the-character-esc-in-constants.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/thread-local-storage.rst: New file.
	* doc/gcc/extensions-to-the-c-language-family/unnamed-structure-and-union-fields.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/using-vector-instructions-through-built-in-functions.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/when-is-a-volatile-object-accessed.rst:
	New file.
	* doc/gcc/extensions-to-the-c-language-family/x86-specific-memory-model-extensions-for-transactional-memory.rst:
	New file.
	* doc/gcc/funding.rst: New file.
	* doc/gcc/gcc-command-options.rst: New file.
	* doc/gcc/gcc-command-options/c++-modules.rst: New file.
	* doc/gcc/gcc-command-options/compiling-c++-programs.rst: New file.
	* doc/gcc/gcc-command-options/description.rst: New file.
	* doc/gcc/gcc-command-options/environment-variables-affecting-gcc.rst: New file.
	* doc/gcc/gcc-command-options/gcc-developer-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/aarch64-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/adapteva-epiphany-options.rst:
	New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/amd-gcn-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/arc-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/arm-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/avr-mmcu.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/avr-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/blackfin-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/c-sky-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/c6x-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/cris-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/darwin-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/dec-alpha-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/ebpf-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/fr30-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/frv-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/ft32-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/gnu-linux-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/h8-300-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/hppa-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/ia-64-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/ibm-rs-6000-and-powerpc-options.rst:
	New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/lm32-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/loongarch-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/m32c-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/m32r-d-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/m680x0-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/mcore-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/mep-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/microblaze-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/mips-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/mmix-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/mn10300-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/moxie-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/msp430-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/nds32-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/nios-ii-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/nvidia-ptx-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/openrisc-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/options-for-system-v.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/pdp-11-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/picochip-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/powerpc-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/pru-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/risc-v-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/rl78-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/rx-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/s-390-and-zseries-options.rst:
	New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/score-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/sh-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/solaris-2-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/sparc-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/v850-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/vax-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/visium-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/vms-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/vxworks-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/x86-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/x86-windows-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/xstormy16-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/xtensa-options.rst: New file.
	* doc/gcc/gcc-command-options/machine-dependent-options/zseries-options.rst: New file.
	* doc/gcc/gcc-command-options/option-summary.rst: New file.
	* doc/gcc/gcc-command-options/options-controlling-c++-dialect.rst: New file.
	* doc/gcc/gcc-command-options/options-controlling-c-dialect.rst: New file.
	* doc/gcc/gcc-command-options/options-controlling-objective-c-and-objective-c++-dialects.rst:
	New file.
	* doc/gcc/gcc-command-options/options-controlling-the-kind-of-output.rst: New file.
	* doc/gcc/gcc-command-options/options-controlling-the-preprocessor.rst: New file.
	* doc/gcc/gcc-command-options/options-for-code-generation-conventions.rst: New file.
	* doc/gcc/gcc-command-options/options-for-debugging-your-program.rst: New file.
	* doc/gcc/gcc-command-options/options-for-directory-search.rst: New file.
	* doc/gcc/gcc-command-options/options-for-linking.rst: New file.
	* doc/gcc/gcc-command-options/options-that-control-optimization.rst: New file.
	* doc/gcc/gcc-command-options/options-that-control-static-analysis.rst: New file.
	* doc/gcc/gcc-command-options/options-to-control-diagnostic-messages-formatting.rst:
	New file.
	* doc/gcc/gcc-command-options/options-to-request-or-suppress-warnings.rst: New file.
	* doc/gcc/gcc-command-options/passing-options-to-the-assembler.rst: New file.
	* doc/gcc/gcc-command-options/program-instrumentation-options.rst: New file.
	* doc/gcc/gcc-command-options/specifying-subprocesses-and-the-switches-to-pass-to-them.rst:
	New file.
	* doc/gcc/gcc-command-options/using-precompiled-headers.rst: New file.
	* doc/gcc/gcc.rst: New file.
	* doc/gcc/gcov-dump.rst: New file.
	* doc/gcc/gcov-tool.rst: New file.
	* doc/gcc/gcov.rst: New file.
	* doc/gcc/gcov/brief-description-of-gcov-data-files.rst: New file.
	* doc/gcc/gcov/data-file-relocation-to-support-cross-profiling.rst: New file.
	* doc/gcc/gcov/introduction-to-gcov.rst: New file.
	* doc/gcc/gcov/invoking-gcov.rst: New file.
	* doc/gcc/gcov/profiling-and-test-coverage-in-freestanding-environments.rst: New file.
	* doc/gcc/gcov/using-gcov-with-gcc-optimization.rst: New file.
	* doc/gcc/general-public-license-3.rst: New file.
	* doc/gcc/gnu-free-documentation-license.rst: New file.
	* doc/gcc/gnu-objective-c-features.rst: New file.
	* doc/gcc/gnu-objective-c-features/compatibilityalias.rst: New file.
	* doc/gcc/gnu-objective-c-features/constant-string-objects.rst: New file.
	* doc/gcc/gnu-objective-c-features/exceptions.rst: New file.
	* doc/gcc/gnu-objective-c-features/fast-enumeration.rst: New file.
	* doc/gcc/gnu-objective-c-features/garbage-collection.rst: New file.
	* doc/gcc/gnu-objective-c-features/gnu-objective-c-runtime-api.rst: New file.
	* doc/gcc/gnu-objective-c-features/load-executing-code-before-main.rst: New file.
	* doc/gcc/gnu-objective-c-features/messaging-with-the-gnu-objective-c-runtime.rst: New file.
	* doc/gcc/gnu-objective-c-features/synchronization.rst: New file.
	* doc/gcc/gnu-objective-c-features/type-encoding.rst: New file.
	* doc/gcc/gnu.rst: New file.
	* doc/gcc/have-you-found-a-bug.rst: New file.
	* doc/gcc/how-and-where-to-report-bugs.rst: New file.
	* doc/gcc/how-to-get-help-with-gcc.rst: New file.
	* doc/gcc/index.rst: New file.
	* doc/gcc/indices-and-tables.rst: New file.
	* doc/gcc/known-causes-of-trouble-with-gcc.rst: New file.
	* doc/gcc/known-causes-of-trouble-with-gcc/actual-bugs-we-havent-fixed-yet.rst: New file.
	* doc/gcc/known-causes-of-trouble-with-gcc/certain-changes-we-dont-want-to-make.rst:
	New file.
	* doc/gcc/known-causes-of-trouble-with-gcc/common-misunderstandings-with-gnu-c.rst:
	New file.
	* doc/gcc/known-causes-of-trouble-with-gcc/disappointments-and-misunderstandings.rst:
	New file.
	* doc/gcc/known-causes-of-trouble-with-gcc/fixed-header-files.rst: New file.
	* doc/gcc/known-causes-of-trouble-with-gcc/incompatibilities-of-gcc.rst: New file.
	* doc/gcc/known-causes-of-trouble-with-gcc/interoperation.rst: New file.
	* doc/gcc/known-causes-of-trouble-with-gcc/standard-libraries.rst: New file.
	* doc/gcc/known-causes-of-trouble-with-gcc/warning-messages-and-error-messages.rst:
	New file.
	* doc/gcc/language-standards-supported-by-gcc.rst: New file.
	* doc/gcc/language-standards-supported-by-gcc/c++-language.rst: New file.
	* doc/gcc/language-standards-supported-by-gcc/c-language.rst: New file.
	* doc/gcc/language-standards-supported-by-gcc/d-language.rst: New file.
	* doc/gcc/language-standards-supported-by-gcc/go-language.rst: New file.
	* doc/gcc/language-standards-supported-by-gcc/objective-c-and-objective-c++-languages.rst:
	New file.
	* doc/gcc/language-standards-supported-by-gcc/references-for-other-languages.rst: New file.
	* doc/gcc/lto-dump.rst: New file.
	* doc/gcc/programming-languages-supported-by-gcc.rst: New file.
	* doc/gcc/reporting-bugs.rst: New file.
	* doc/gccint/analysis-and-optimization-of-gimple-tuples.rst: New file.
	* doc/gccint/analysis-and-optimization-of-gimple-tuples/alias-analysis.rst: New file.
	* doc/gccint/analysis-and-optimization-of-gimple-tuples/annotations.rst: New file.
	* doc/gccint/analysis-and-optimization-of-gimple-tuples/memory-model.rst: New file.
	* doc/gccint/analysis-and-optimization-of-gimple-tuples/ssa-operands.rst: New file.
	* doc/gccint/analysis-and-optimization-of-gimple-tuples/static-single-assignment.rst:
	New file.
	* doc/gccint/analysis-and-representation-of-loops.rst: New file.
	* doc/gccint/analysis-and-representation-of-loops/data-dependency-analysis.rst: New file.
	* doc/gccint/analysis-and-representation-of-loops/iv-analysis-on-rtl.rst: New file.
	* doc/gccint/analysis-and-representation-of-loops/loop-closed-ssa-form.rst: New file.
	* doc/gccint/analysis-and-representation-of-loops/loop-manipulation.rst: New file.
	* doc/gccint/analysis-and-representation-of-loops/loop-querying.rst: New file.
	* doc/gccint/analysis-and-representation-of-loops/loop-representation.rst: New file.
	* doc/gccint/analysis-and-representation-of-loops/number-of-iterations-analysis.rst:
	New file.
	* doc/gccint/analysis-and-representation-of-loops/scalar-evolutions.rst: New file.
	* doc/gccint/analyzer-internals.rst: New file.
	* doc/gccint/collect2.rst: New file.
	* doc/gccint/conf.py: New file.
	* doc/gccint/contributing-to-gcc-development.rst: New file.
	* doc/gccint/contributors-to-gcc.rst: New file.
	* doc/gccint/control-flow-graph.rst: New file.
	* doc/gccint/control-flow-graph/basic-blocks.rst: New file.
	* doc/gccint/control-flow-graph/edges.rst: New file.
	* doc/gccint/control-flow-graph/liveness-information.rst: New file.
	* doc/gccint/control-flow-graph/maintaining-the-cfg.rst: New file.
	* doc/gccint/control-flow-graph/profile-information.rst: New file.
	* doc/gccint/copyright.rst: New file.
	* doc/gccint/debugging-the-analyzer.rst: New file.
	* doc/gccint/funding.rst: New file.
	* doc/gccint/gcc-and-portability.rst: New file.
	* doc/gccint/general-public-license-3.rst: New file.
	* doc/gccint/generic.rst: New file.
	* doc/gccint/generic/attributes-in-trees.rst: New file.
	* doc/gccint/generic/c-and-c++-trees.rst: New file.
	* doc/gccint/generic/declarations.rst: New file.
	* doc/gccint/generic/deficiencies.rst: New file.
	* doc/gccint/generic/expressions.rst: New file.
	* doc/gccint/generic/functions.rst: New file.
	* doc/gccint/generic/language-dependent-trees.rst: New file.
	* doc/gccint/generic/overview.rst: New file.
	* doc/gccint/generic/statements.rst: New file.
	* doc/gccint/generic/types.rst: New file.
	* doc/gccint/gimple-api.rst: New file.
	* doc/gccint/gimple.rst: New file.
	* doc/gccint/gimple/adding-a-new-gimple-statement-code.rst: New file.
	* doc/gccint/gimple/class-hierarchy-of-gimple-statements.rst: New file.
	* doc/gccint/gimple/exception-handling.rst: New file.
	* doc/gccint/gimple/gimple-instruction-set.rst: New file.
	* doc/gccint/gimple/gimple-sequences.rst: New file.
	* doc/gccint/gimple/manipulating-gimple-statements.rst: New file.
	* doc/gccint/gimple/operands.rst: New file.
	* doc/gccint/gimple/sequence-iterators.rst: New file.
	* doc/gccint/gimple/statement-and-operand-traversals.rst: New file.
	* doc/gccint/gimple/temporaries.rst: New file.
	* doc/gccint/gimple/tuple-representation.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleasm.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleassign.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimplebind.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimplecall.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimplecatch.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimplecond.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimpledebug.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleehfilter.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimplegoto.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimplelabel.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimplenop.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompatomicload.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompatomicstore.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompcontinue.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompcritical.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompfor.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompmaster.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompordered.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompparallel.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompreturn.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompsection.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompsections.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleompsingle.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimplephi.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleresx.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimplereturn.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimpleswitch.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimpletry.rst: New file.
	* doc/gccint/gimple/tuple-specific-accessors/gimplewithcleanupexpr.rst: New file.
	* doc/gccint/gnu-free-documentation-license.rst: New file.
	* doc/gccint/guidelines-for-diagnostics.rst: New file.
	* doc/gccint/guidelines-for-options.rst: New file.
	* doc/gccint/host-common.rst: New file.
	* doc/gccint/host-configuration.rst: New file.
	* doc/gccint/host-filesystem.rst: New file.
	* doc/gccint/host-makefile-fragments.rst: New file.
	* doc/gccint/host-misc.rst: New file.
	* doc/gccint/index.rst: New file.
	* doc/gccint/indices-and-tables.rst: New file.
	* doc/gccint/interfacing-to-gcc-output.rst: New file.
	* doc/gccint/introduction.rst: New file.
	* doc/gccint/language-front-ends-in-gcc.rst: New file.
	* doc/gccint/link-time-optimization.rst: New file.
	* doc/gccint/link-time-optimization/design-overview.rst: New file.
	* doc/gccint/link-time-optimization/internal-flags-controlling-lto1.rst: New file.
	* doc/gccint/link-time-optimization/lto-file-sections.rst: New file.
	* doc/gccint/link-time-optimization/using-summary-information-in-ipa-passes.rst: New file.
	* doc/gccint/link-time-optimization/whole-program-assumptions-linker-plugin-and-symbol-visibilities.rst:
	New file.
	* doc/gccint/machine-descriptions.rst: New file.
	* doc/gccint/machine-descriptions/c-statements-for-assembler-output.rst: New file.
	* doc/gccint/machine-descriptions/canonicalization-of-instructions.rst: New file.
	* doc/gccint/machine-descriptions/conditional-execution.rst: New file.
	* doc/gccint/machine-descriptions/constant-definitions.rst: New file.
	* doc/gccint/machine-descriptions/defining-how-to-split-instructions.rst: New file.
	* doc/gccint/machine-descriptions/defining-jump-instruction-patterns.rst: New file.
	* doc/gccint/machine-descriptions/defining-looping-instruction-patterns.rst: New file.
	* doc/gccint/machine-descriptions/defining-rtl-sequences-for-code-generation.rst: New file.
	* doc/gccint/machine-descriptions/everything-about-instruction-patterns.rst: New file.
	* doc/gccint/machine-descriptions/example-of-defineinsn.rst: New file.
	* doc/gccint/machine-descriptions/including-patterns-in-machine-descriptions.rst: New file.
	* doc/gccint/machine-descriptions/instruction-attributes.rst: New file.
	* doc/gccint/machine-descriptions/interdependence-of-patterns.rst: New file.
	* doc/gccint/machine-descriptions/iterators.rst: New file.
	* doc/gccint/machine-descriptions/machine-specific-peephole-optimizers.rst: New file.
	* doc/gccint/machine-descriptions/operand-constraints.rst: New file.
	* doc/gccint/machine-descriptions/output-templates-and-operand-substitution.rst: New file.
	* doc/gccint/machine-descriptions/overview-of-how-the-machine-description-is-used.rst:
	New file.
	* doc/gccint/machine-descriptions/predicates.rst: New file.
	* doc/gccint/machine-descriptions/rtl-template.rst: New file.
	* doc/gccint/machine-descriptions/rtl-templates-transformations.rst: New file.
	* doc/gccint/machine-descriptions/standard-pattern-names-for-generation.rst: New file.
	* doc/gccint/machine-descriptions/when-the-order-of-patterns-matters.rst: New file.
	* doc/gccint/makefile-fragments.rst: New file.
	* doc/gccint/match-and-simplify.rst: New file.
	* doc/gccint/memory-management-and-type-information.rst: New file.
	* doc/gccint/memory-management-and-type-information/how-to-invoke-the-garbage-collector.rst:
	New file.
	* doc/gccint/memory-management-and-type-information/marking-roots-for-the-garbage-collector.rst:
	New file.
	* doc/gccint/memory-management-and-type-information/source-files-containing-type-information.rst:
	New file.
	* doc/gccint/memory-management-and-type-information/support-for-inheritance.rst: New file.
	* doc/gccint/memory-management-and-type-information/support-for-user-provided-gc-marking-routines.rst:
	New file.
	* doc/gccint/memory-management-and-type-information/the-inside-of-a-gty.rst: New file.
	* doc/gccint/memory-management-and-type-information/troubleshooting-the-garbage-collector.rst:
	New file.
	* doc/gccint/option-file-format.rst: New file.
	* doc/gccint/option-properties.rst: New file.
	* doc/gccint/option-specification-files.rst: New file.
	* doc/gccint/passes-and-files-of-the-compiler.rst: New file.
	* doc/gccint/passes-and-files-of-the-compiler/gimplification-pass.rst: New file.
	* doc/gccint/passes-and-files-of-the-compiler/inter-procedural-optimization-passes.rst:
	New file.
	* doc/gccint/passes-and-files-of-the-compiler/optimization-info.rst: New file.
	* doc/gccint/passes-and-files-of-the-compiler/parsing-pass.rst: New file.
	* doc/gccint/passes-and-files-of-the-compiler/pass-manager.rst: New file.
	* doc/gccint/passes-and-files-of-the-compiler/rtl-passes.rst: New file.
	* doc/gccint/passes-and-files-of-the-compiler/tree-ssa-passes.rst: New file.
	* doc/gccint/plugins.rst: New file.
	* doc/gccint/plugins/building-gcc-plugins.rst: New file.
	* doc/gccint/plugins/controlling-which-passes-are-being-run.rst: New file.
	* doc/gccint/plugins/giving-information-about-a-plugin.rst: New file.
	* doc/gccint/plugins/interacting-with-the-gcc-garbage-collector.rst: New file.
	* doc/gccint/plugins/interacting-with-the-pass-manager.rst: New file.
	* doc/gccint/plugins/keeping-track-of-available-passes.rst: New file.
	* doc/gccint/plugins/loading-plugins.rst: New file.
	* doc/gccint/plugins/plugin-api.rst: New file.
	* doc/gccint/plugins/recording-information-about-pass-execution.rst: New file.
	* doc/gccint/plugins/registering-custom-attributes-or-pragmas.rst: New file.
	* doc/gccint/rtl-representation.rst: New file.
	* doc/gccint/rtl-representation/access-to-operands.rst: New file.
	* doc/gccint/rtl-representation/access-to-special-operands.rst: New file.
	* doc/gccint/rtl-representation/assembler-instructions-as-expressions.rst: New file.
	* doc/gccint/rtl-representation/bit-fields.rst: New file.
	* doc/gccint/rtl-representation/comparison-operations.rst: New file.
	* doc/gccint/rtl-representation/constant-expression-types.rst: New file.
	* doc/gccint/rtl-representation/conversions.rst: New file.
	* doc/gccint/rtl-representation/declarations.rst: New file.
	* doc/gccint/rtl-representation/embedded-side-effects-on-addresses.rst: New file.
	* doc/gccint/rtl-representation/flags-in-an-rtl-expression.rst: New file.
	* doc/gccint/rtl-representation/insns.rst: New file.
	* doc/gccint/rtl-representation/machine-modes.rst: New file.
	* doc/gccint/rtl-representation/on-the-side-ssa-form-for-rtl.rst: New file.
	* doc/gccint/rtl-representation/reading-rtl.rst: New file.
	* doc/gccint/rtl-representation/registers-and-memory.rst: New file.
	* doc/gccint/rtl-representation/rtl-classes-and-formats.rst: New file.
	* doc/gccint/rtl-representation/rtl-expressions-for-arithmetic.rst: New file.
	* doc/gccint/rtl-representation/rtl-object-types.rst: New file.
	* doc/gccint/rtl-representation/rtl-representation-of-function-call-insns.rst: New file.
	* doc/gccint/rtl-representation/side-effect-expressions.rst: New file.
	* doc/gccint/rtl-representation/structure-sharing-assumptions.rst: New file.
	* doc/gccint/rtl-representation/variable-location-debug-information-in-rtl.rst: New file.
	* doc/gccint/rtl-representation/vector-operations.rst: New file.
	* doc/gccint/sizes-and-offsets-as-runtime-invariants.rst: New file.
	* doc/gccint/sizes-and-offsets-as-runtime-invariants/alignment-of-polyints.rst: New file.
	* doc/gccint/sizes-and-offsets-as-runtime-invariants/arithmetic-on-polyints.rst: New file.
	* doc/gccint/sizes-and-offsets-as-runtime-invariants/comparisons-involving-polyint.rst:
	New file.
	* doc/gccint/sizes-and-offsets-as-runtime-invariants/computing-bounds-on-polyints.rst:
	New file.
	* doc/gccint/sizes-and-offsets-as-runtime-invariants/consequences-of-using-polyint.rst:
	New file.
	* doc/gccint/sizes-and-offsets-as-runtime-invariants/converting-polyints.rst: New file.
	* doc/gccint/sizes-and-offsets-as-runtime-invariants/guidelines-for-using-polyint.rst:
	New file.
	* doc/gccint/sizes-and-offsets-as-runtime-invariants/miscellaneous-polyint-routines.rst:
	New file.
	* doc/gccint/sizes-and-offsets-as-runtime-invariants/overview-of-polyint.rst: New file.
	* doc/gccint/source-tree-structure-and-build-system.rst: New file.
	* doc/gccint/source-tree-structure-and-build-system/configure-terms-and-history.rst:
	New file.
	* doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory.rst: New file.
	* doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/anatomy-of-a-language-front-end.rst:
	New file.
	* doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/anatomy-of-a-target-back-end.rst:
	New file.
	* doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/build-system-in-the-gcc-directory.rst:
	New file.
	* doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/building-documentation.rst:
	New file.
	* doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/configuration-in-the-gcc-directory.rst:
	New file.
	* doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/headers-installed-by-gcc.rst:
	New file.
	* doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/library-source-files-and-headers-under-the-gcc-directory.rst:
	New file.
	* doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/makefile-targets.rst:
	New file.
	* doc/gccint/source-tree-structure-and-build-system/the-gcc-subdirectory/subdirectories-of-gcc.rst:
	New file.
	* doc/gccint/source-tree-structure-and-build-system/top-level-source-directory.rst:
	New file.
	* doc/gccint/standard-header-file-directories.rst: New file.
	* doc/gccint/static-analyzer.rst: New file.
	* doc/gccint/target-macros.rst: New file.
	* doc/gccint/target-macros/adding-support-for-named-address-spaces.rst: New file.
	* doc/gccint/target-macros/addressing-modes.rst: New file.
	* doc/gccint/target-macros/adjusting-the-instruction-scheduler.rst: New file.
	* doc/gccint/target-macros/anchored-addresses.rst: New file.
	* doc/gccint/target-macros/c++-abi-parameters.rst: New file.
	* doc/gccint/target-macros/condition-code-status.rst: New file.
	* doc/gccint/target-macros/controlling-debugging-information-format.rst: New file.
	* doc/gccint/target-macros/controlling-the-compilation-driver-gcc.rst: New file.
	* doc/gccint/target-macros/cross-compilation-and-floating-point.rst: New file.
	* doc/gccint/target-macros/d-abi-parameters.rst: New file.
	* doc/gccint/target-macros/defining-coprocessor-specifics-for-mips-targets.rst: New file.
	* doc/gccint/target-macros/defining-data-structures-for-per-function-information.rst:
	New file.
	* doc/gccint/target-macros/defining-target-specific-uses-of-attribute.rst: New file.
	* doc/gccint/target-macros/defining-the-output-assembler-language.rst: New file.
	* doc/gccint/target-macros/defining-the-output-assembler-language/assembler-commands-for-alignment.rst:
	New file.
	* doc/gccint/target-macros/defining-the-output-assembler-language/assembler-commands-for-exception-regions.rst:
	New file.
	* doc/gccint/target-macros/defining-the-output-assembler-language/how-initialization-functions-are-handled.rst:
	New file.
	* doc/gccint/target-macros/defining-the-output-assembler-language/macros-controlling-initialization-routines.rst:
	New file.
	* doc/gccint/target-macros/defining-the-output-assembler-language/output-and-generation-of-labels.rst:
	New file.
	* doc/gccint/target-macros/defining-the-output-assembler-language/output-of-assembler-instructions.rst:
	New file.
	* doc/gccint/target-macros/defining-the-output-assembler-language/output-of-data.rst:
	New file.
	* doc/gccint/target-macros/defining-the-output-assembler-language/output-of-dispatch-tables.rst:
	New file.
	* doc/gccint/target-macros/defining-the-output-assembler-language/output-of-uninitialized-variables.rst:
	New file.
	* doc/gccint/target-macros/defining-the-output-assembler-language/the-overall-framework-of-an-assembler-file.rst:
	New file.
	* doc/gccint/target-macros/describing-relative-costs-of-operations.rst: New file.
	* doc/gccint/target-macros/dividing-the-output-into-sections-texts-data.rst: New file.
	* doc/gccint/target-macros/emulating-tls.rst: New file.
	* doc/gccint/target-macros/implementing-the-varargs-macros.rst: New file.
	* doc/gccint/target-macros/implicit-calls-to-library-routines.rst: New file.
	* doc/gccint/target-macros/layout-of-source-language-data-types.rst: New file.
	* doc/gccint/target-macros/miscellaneous-parameters.rst: New file.
	* doc/gccint/target-macros/mode-switching-instructions.rst: New file.
	* doc/gccint/target-macros/parameters-for-precompiled-header-validity-checking.rst:
	New file.
	* doc/gccint/target-macros/position-independent-code.rst: New file.
	* doc/gccint/target-macros/register-classes.rst: New file.
	* doc/gccint/target-macros/register-usage.rst: New file.
	* doc/gccint/target-macros/run-time-target-specification.rst: New file.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions.rst: New file.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/basic-stack-layout.rst:
	New file.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/caller-saves-register-allocation.rst:
	New file.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/eliminating-frame-pointer-and-arg-pointer.rst:
	New file.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/exception-handling-support.rst:
	New file.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/function-entry-and-exit.rst:
	New file.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/generating-code-for-profiling.rst:
	New file.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/how-large-values-are-returned.rst:
	New file.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/how-scalar-function-values-are-returned.rst:
	New file.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/miscellaneous-register-hooks.rst:
	New file.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/passing-arguments-in-registers.rst:
	New file.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/passing-function-arguments-on-the-stack.rst:
	New file.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/permitting-tail-calls.rst:
	New file.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/registers-that-address-the-stack-frame.rst:
	New file.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/shrink-wrapping-separate-components.rst:
	New file.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/specifying-how-stack-checking-is-done.rst:
	New file.
	* doc/gccint/target-macros/stack-layout-and-calling-conventions/stack-smashing-protection.rst:
	New file.
	* doc/gccint/target-macros/storage-layout.rst: New file.
	* doc/gccint/target-macros/support-for-nested-functions.rst: New file.
	* doc/gccint/target-macros/the-global-targetm-variable.rst: New file.
	* doc/gccint/target-makefile-fragments.rst: New file.
	* doc/gccint/testsuites.rst: New test.
	* doc/gccint/testsuites/ada-language-testsuites.rst: New test.
	* doc/gccint/testsuites/c-language-testsuites.rst: New test.
	* doc/gccint/testsuites/directives-used-within-dejagnu-tests.rst: New test.
	* doc/gccint/testsuites/directives-used-within-dejagnu-tests/commands-for-use-in-dg-final.rst:
	New test.
	* doc/gccint/testsuites/directives-used-within-dejagnu-tests/features-for-dg-add-options.rst:
	New test.
	* doc/gccint/testsuites/directives-used-within-dejagnu-tests/keywords-describing-target-attributes.rst:
	New test.
	* doc/gccint/testsuites/directives-used-within-dejagnu-tests/selecting-targets-to-which-a-test-applies.rst:
	New test.
	* doc/gccint/testsuites/directives-used-within-dejagnu-tests/syntax-and-descriptions-of-test-directives.rst:
	New test.
	* doc/gccint/testsuites/directives-used-within-dejagnu-tests/variants-of-dg-require-support.rst:
	New test.
	* doc/gccint/testsuites/idioms-used-in-testsuite-code.rst: New test.
	* doc/gccint/testsuites/support-for-testing-binary-compatibility.rst: New test.
	* doc/gccint/testsuites/support-for-testing-gcov.rst: New test.
	* doc/gccint/testsuites/support-for-testing-gimple-passes.rst: New test.
	* doc/gccint/testsuites/support-for-testing-link-time-optimizations.rst: New test.
	* doc/gccint/testsuites/support-for-testing-profile-directed-optimizations.rst: New test.
	* doc/gccint/testsuites/support-for-testing-rtl-passes.rst: New test.
	* doc/gccint/testsuites/support-for-torture-testing-using-multiple-options.rst: New test.
	* doc/gccint/the-gcc-low-level-runtime-library.rst: New file.
	* doc/gccint/the-gcc-low-level-runtime-library/language-independent-routines-for-exception-handling.rst:
	New file.
	* doc/gccint/the-gcc-low-level-runtime-library/miscellaneous-runtime-library-routines.rst:
	New file.
	* doc/gccint/the-gcc-low-level-runtime-library/routines-for-decimal-floating-point-emulation.rst:
	New file.
	* doc/gccint/the-gcc-low-level-runtime-library/routines-for-fixed-point-fractional-emulation.rst:
	New file.
	* doc/gccint/the-gcc-low-level-runtime-library/routines-for-floating-point-emulation.rst:
	New file.
	* doc/gccint/the-gcc-low-level-runtime-library/routines-for-integer-arithmetic.rst:
	New file.
	* doc/gccint/the-language.rst: New file.
	* doc/gccint/user-experience-guidelines.rst: New file.
	* doc/install/binaries.rst: New file.
	* doc/install/building.rst: New file.
	* doc/install/building/building-a-cross-compiler.rst: New file.
	* doc/install/building/building-a-native-compiler.rst: New file.
	* doc/install/building/building-in-parallel.rst: New file.
	* doc/install/building/building-the-ada-compiler.rst: New file.
	* doc/install/building/building-the-d-compiler.rst: New file.
	* doc/install/building/building-with-profile-feedback.rst: New file.
	* doc/install/conf.py: New file.
	* doc/install/configuration.rst: New file.
	* doc/install/copyright.rst: New file.
	* doc/install/downloading-gcc.rst: New file.
	* doc/install/final-installation.rst: New file.
	* doc/install/gnu-free-documentation-license.rst: New file.
	* doc/install/host-target-specific-installation-notes-for-gcc.rst: New file.
	* doc/install/how-can-you-run-the-testsuite-on-selected-tests.rst: New test.
	* doc/install/how-to-interpret-test-results.rst: New file.
	* doc/install/index.rst: New file.
	* doc/install/indices-and-tables.rst: New file.
	* doc/install/installing-gcc.rst: New file.
	* doc/install/passing-options-and-running-multiple-testsuites.rst: New test.
	* doc/install/prerequisites.rst: New file.
	* doc/install/submitting-test-results.rst: New file.
	* doc/install/testing.rst: New file.

2022-11-09  Aldy Hernandez  <aldyh@redhat.com>

	* range-op-float.cc (class foperator_minus): New.
	(floating_op_table::floating_op_table): Add MINUS_EXPR entry.

2022-11-09  Aldy Hernandez  <aldyh@redhat.com>

	* range-op-float.cc (range_operator_float::fold_range): Abstract
	out from foperator_plus.
	(range_operator_float::rv_fold): New.
	(foperator_plus::fold_range): Remove.
	(foperator_plus::rv_fold): New.
	(propagate_nans): Remove.
	* range-op.h (class range_operator_float): Add rv_fold.

2022-11-09  Aldy Hernandez  <aldyh@redhat.com>

	* range-op-float.cc (foperator_plus::fold_range): Set NAN for
	addition of different signed infinities.
	(range_op_float_tests): New test.

2022-11-09  liuhongt  <hongtao.liu@intel.com>

	PR target/107540
	* config/i386/sse.md (avx512f_movddup512<mask_name>): Change
	type from sselog to sselog1.
	(avx_movddup256<mask_name>): Ditto.

2022-11-08  David Faust  <david.faust@oracle.com>

	* config/bpf/bpf.cc (struct core_walk_data): Add field `which'...
	(bpf_resolve_overloaded_builtin): ... set it here. Use values of enum
	bpf_builtins for error checks.
	(bpf_core_walk): Use values of enum bpf_builtins.
	(bpf_core_newdecl): Likewise.
	(bpf_expand_builtin): Likewise.

2022-11-08  Aldy Hernandez  <aldyh@redhat.com>

	PR tree-optimization/24021
	* range-op-float.cc (propagate_nans): New.
	(frange_nextafter): New.
	(frange_arithmetic): New.
	(class foperator_plus): New.
	(floating_op_table::floating_op_table): Add PLUS_EXPR entry.

2022-11-08  Aldy Hernandez  <aldyh@redhat.com>

	* real.cc (real_isdenormal): New.
	(encode_ieee_single): Call real_isdenormal.
	(encode_ieee_double): Same.
	(encode_ieee_extended): Same.
	(encode_ieee_quad): Same.
	(encode_ieee_half): Same.
	(encode_arm_bfloat_half): Same.
	* real.h (real_isdenormal): Add mode argument.  Rewrite for
	normalized values.
	* value-range.cc (frange::flush_denormals_to_zero): Pass mode to
	real_isdenormal.

2022-11-08  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/107389
	* gimple-low.cc (lower_builtin_assume_aligned): New.
	(lower_stmt): Call it.

2022-11-08  Aldy Hernandez  <aldyh@redhat.com>

	* range-op.cc (operator_div::fold_range): Call
	update_known_bitmask.
	* tree-ssa-ccp.cc (bit_value_binop): Handle divisions by powers of
	2 as a right shift.

2022-11-08  Kwok Cheung Yeung  <kcy@codesourcery.com>

	* config/gcn/gcn.cc (gcn_expand_builtin_1): Expand first argument
	of GCN_BUILTIN_LDEXPV to V64DFmode.

2022-11-08  Kwok Cheung Yeung  <kcy@codesourcery.com>

	* config/gcn/gcn-builtins.def (FABSV, FLOORVF, FLOORV): New builtins.
	* config/gcn/gcn.cc (gcn_expand_builtin_1): Expand GCN_BUILTIN_FABSV,
	GCN_BUILTIN_FLOORVF and GCN_BUILTIN_FLOORV.

2022-11-08  Aldy Hernandez  <aldyh@redhat.com>

	* range-op.cc (irange_to_masked_value): New.
	(update_known_bitmask): New.
	(operator_mult::fold_range): Call update_known_bitmask.

2022-11-08  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/107547
	* tree-call-cdce.cc (get_no_error_domain): Handle CASE_FLT_FN_FLOATN_NX
	of BUILT_IN_{ACOS,ASIN,ACOSH,ATANH,LOG,LOG2,LOG10,LOG1P}.  Handle
	BUILT_IN_{COSH,SINH,EXP,EXPM1,EXP2}F{16,32,64,128}.

2022-11-08  Jakub Jelinek  <jakub@redhat.com>

	PR target/107546
	* config/i386/predicates.md (vector_or_const_vector_operand): New
	predicate.
	* config/i386/sse.md (vec_cmp<mode><sseintvecmodelower>,
	vec_cmpv2div2di, vec_cmpu<mode><sseintvecmodelower>,
	vec_cmpuv2div2di): Use nonimmediate_or_const_vector_operand
	predicate instead of nonimmediate_operand and
	vector_or_const_vector_operand instead of vector_operand.
	* config/i386/i386-expand.cc (ix86_expand_int_sse_cmp): For
	LE/LEU or GE/GEU with CONST_VECTOR cop1 try to transform those
	into LE/LEU or GT/GTU with larger or smaller by one cop1 if
	there is no wrap-around.  Force CONST_VECTOR cop0 or cop1 into
	REG.  Formatting fix.

2022-11-08  Max Filippov  <jcmvbkbc@gmail.com>

	PR rtl-optimization/107482
	* ira-color.cc (assign_hard_reg): Only call
	update_costs_from_copies when retry_p is false.

2022-11-08  konglin1  <lingling.kong@intel.com>

	Revert:
	2022-11-07  konglin1  <lingling.kong@intel.com>

	* config/i386/i386.opt:Add -mprefer-remote-atomic.
	* config/i386/sync.md (atomic_<plus_logic><mode>):
	New define_expand.
	(atomic_add<mode>): Rename to below one.
	(atomic_add<mode>_1): To this.
	(atomic_<logic><mode>): Ditto.
	(atomic_<logic><mode>_1): Ditto.
	* doc/invoke.texi: Add -mprefer-remote-atomic.

2022-11-08  Haochen Jiang  <haochen.jiang@intel.com>

	* config/i386/i386-options.cc (m_CORE_ATOM): New.
	* config/i386/x86-tune.def
	(X86_TUNE_SCHEDULE): Initial tune for CORE_ATOM.
	(X86_TUNE_PARTIAL_REG_DEPENDENCY): Ditto.
	(X86_TUNE_SSE_PARTIAL_REG_DEPENDENCY): Ditto.
	(X86_TUNE_SSE_PARTIAL_REG_FP_CONVERTS_DEPENDENCY): Ditto.
	(X86_TUNE_SSE_PARTIAL_REG_CONVERTS_DEPENDENCY): Ditto.
	(X86_TUNE_DEST_FALSE_DEP_FOR_GLC): Ditto.
	(X86_TUNE_MEMORY_MISMATCH_STALL): Ditto.
	(X86_TUNE_USE_LEAVE): Ditto.
	(X86_TUNE_PUSH_MEMORY): Ditto.
	(X86_TUNE_USE_INCDEC): Ditto.
	(X86_TUNE_INTEGER_DFMODE_MOVES): Ditto.
	(X86_TUNE_PREFER_KNOWN_REP_MOVSB_STOSB): Ditto.
	(X86_TUNE_MISALIGNED_MOVE_STRING_PRO_EPILOGUES): Ditto.
	(X86_TUNE_USE_SAHF): Ditto.
	(X86_TUNE_USE_BT): Ditto.
	(X86_TUNE_AVOID_FALSE_DEP_FOR_BMI): Ditto.
	(X86_TUNE_ONE_IF_CONV_INSN): Ditto.
	(X86_TUNE_AVOID_MFENCE): Ditto.
	(X86_TUNE_USE_SIMODE_FIOP): Ditto.
	(X86_TUNE_EXT_80387_CONSTANTS): Ditto.
	(X86_TUNE_SSE_UNALIGNED_LOAD_OPTIMAL): Ditto.
	(X86_TUNE_SSE_UNALIGNED_STORE_OPTIMAL): Ditto.
	(X86_TUNE_SSE_TYPELESS_STORES): Ditto.
	(X86_TUNE_SSE_LOAD0_BY_PXOR): Ditto.
	(X86_TUNE_AVOID_4BYTE_PREFIXES): Ditto.
	(X86_TUNE_USE_GATHER_2PARTS): Ditto.
	(X86_TUNE_USE_GATHER_4PARTS): Ditto.
	(X86_TUNE_USE_GATHER): Ditto.

2022-11-08  Andrew MacLeod  <amacleod@redhat.com>

	PR tree-optimization/104530
	* gimple-range-cache.cc (ranger_cache::register_inferred_value):
	New.  Split from:
	(ranger_cache::apply_inferred_ranges): Move setting cache to
	separate function.
	* gimple-range-cache.h (register_inferred_value): New prototype.
	* gimple-range-infer.cc (infer_range_manager::has_range_p): New.
	* gimple-range-infer.h (has_range_p): New prototype.
	* gimple-range.cc (register_transitive_inferred_ranges): New.
	* gimple-range.h (register_transitive_inferred_ranges): New proto.
	* tree-vrp.cc (rvrp_folder::fold_stmt): Check for transitive inferred
	ranges at the end of the block before folding final stmt.

2022-11-07  David Faust  <david.faust@oracle.com>

	* config/bpf/bpf.cc (handle_attr_preserve): Use maybe_make_core_relo().

2022-11-07  Aldy Hernandez  <aldyh@redhat.com>

	PR tree-optimization/55157
	* range-op.cc (operator_mult::wi_fold): Optimize multiplications
	by powers of 2.

2022-11-07  H.J. Lu  <hjl.tools@gmail.com>

	PR middle-end/102566
	* tree-ssa-ccp.cc (optimize_atomic_bit_test_and): Also handle
	if (_5 < 0) and if (_5 >= 0).

2022-11-07  Richard Purdie  <richard.purdie@linuxfoundation.org>

	* file-prefix-map.cc (remap_filename): Handle NULL filenames.

2022-11-07  Alexander Monakov  <amonakov@ispras.ru>

	PR tree-optimization/107505
	* tree-ssa-sink.cc (statement_sink_location): Additionally
	reject ECF_RETURNS_TWICE calls.

2022-11-07  Aldy Hernandez  <aldyh@redhat.com>

	PR tree-optimization/107541
	* range-op.cc (operator_div::fold_range): Restrict power of 2
	optimization to positive numbers.

2022-11-07  Richard Biener  <rguenther@suse.de>

	* tree-ssa-loop-unswitch.cc (unswitch_predicate::count): New.
	(unswitch_predicate::unswitch_predicate): Initialize count.
	(init_loop_unswitch_info): First collect candidates and
	determine the outermost loop to unswitch.
	(tree_ssa_unswitch_loops): First perform all guard hoisting,
	then perform unswitching on innermost loop predicates.
	(find_unswitching_predicates_for_bb): Keep track of the
	most profitable predicate to unswitch on.
	(tree_unswitch_single_loop): Unswitch given predicate if
	not NULL.

2022-11-07  Martin Liska  <mliska@suse.cz>
	    Gerald Pfeifer  <gerald@pfeifer.com>

	* doc/invoke.texi: Improve wording.

2022-11-07  Martin Liska  <mliska@suse.cz>

	* range-op.cc: Add final override keywords.

2022-11-07  Kewen Lin  <linkw@linux.ibm.com>

	PR tree-optimization/107412
	* gimple-fold.cc (gimple_fold_mask_load_store_mem_ref): Rename to ...
	(gimple_fold_partial_load_store_mem_ref): ... this, add one parameter
	mask_p indicating it's for mask or length, and add some handlings for
	IFN LEN_{LOAD,STORE}.
	(gimple_fold_mask_load): Rename to ...
	(gimple_fold_partial_load): ... this, add one parameter mask_p.
	(gimple_fold_mask_store): Rename to ...
	(gimple_fold_partial_store): ... this, add one parameter mask_p.
	(gimple_fold_call): Add the handlings for IFN LEN_{LOAD,STORE},
	and adjust calls on gimple_fold_mask_load_store_mem_ref to
	gimple_fold_partial_load_store_mem_ref.

2022-11-07  Hu, Lin1  <lin1.hu@intel.com>

	* common/config/i386/cpuinfo.h
	(get_intel_cpu): Handle Grand Ridge.
	* common/config/i386/i386-common.cc
	(processor_names): Add grandridge.
	(processor_alias_table): Ditto.
	* common/config/i386/i386-cpuinfo.h:
	(enum processor_types): Add INTEL_GRANDRIDGE.
	* config.gcc: Add -march=grandridge.
	* config/i386/driver-i386.cc (host_detect_local_cpu):
	Handle grandridge.
	* config/i386/i386-c.cc (ix86_target_macros_internal):
	Ditto.
	* config/i386/i386-options.cc (m_GRANDRIDGE): New define.
	(processor_cost_table): Add grandridge.
	* config/i386/i386.h (enum processor_type):
	Add PROCESSOR_GRANDRIDGE.
	(PTA_GRANDRIDGE): Ditto.
	* doc/extend.texi: Add grandridge.
	* doc/invoke.texi: Ditto.

2022-11-07  konglin1  <lingling.kong@intel.com>

	* config/i386/i386.opt:Add -mprefer-remote-atomic.
	* config/i386/sync.md (atomic_<plus_logic><mode>):
	New define_expand.
	(atomic_add<mode>): Rename to below one.
	(atomic_add<mode>_1): To this.
	(atomic_<logic><mode>): Ditto.
	(atomic_<logic><mode>_1): Ditto.
	* doc/invoke.texi: Add -mprefer-remote-atomic.

2022-11-07  konglin1  <lingling.kong@intel.com>

	* common/config/i386/cpuinfo.h (get_available_features):
	Detect raoint.
	* common/config/i386/i386-common.cc (OPTION_MASK_ISA2_RAOINT_SET,
	OPTION_MASK_ISA2_RAOINT_UNSET): New.
	(ix86_handle_option): Handle -mraoint.
	* common/config/i386/i386-cpuinfo.h (enum processor_features):
	Add FEATURE_RAOINT.
	* common/config/i386/i386-isas.h: Add ISA_NAME_TABLE_ENTRY for
	raoint.
	* config.gcc: Add raointintrin.h
	* config/i386/cpuid.h (bit_RAOINT): New.
	* config/i386/i386-builtin.def (BDESC): Add new builtins.
	* config/i386/i386-c.cc (ix86_target_macros_internal): Define
	__RAOINT__.
	* config/i386/i386-isa.def (RAOINT): Add DEF_PTA(RAOINT).
	* config/i386/i386-options.cc (ix86_valid_target_attribute_inner_p):
	Add -mraoint.
	* config/i386/sync.md (rao_a<raointop><mode>): New define insn.
	* config/i386/i386.opt: Add option -mraoint.
	* config/i386/x86gprintrin.h: Include raointintrin.h.
	* doc/extend.texi: Document raoint.
	* doc/invoke.texi: Document -mraoint.
	* doc/sourcebuild.texi: Document target raoint.
	* config/i386/raointintrin.h: New file.

2022-11-07  Haochen Jiang  <haochen.jiang@intel.com>

	* common/config/i386/cpuinfo.h
	(get_intel_cpu): Handle Granite Rapids.
	* common/config/i386/i386-common.cc:
	(processor_names): Add graniterapids.
	(processor_alias_table): Ditto.
	* common/config/i386/i386-cpuinfo.h
	(enum processor_subtypes): Add INTEL_GRANTIERAPIDS.
	* config.gcc: Add -march=graniterapids.
	* config/i386/driver-i386.cc (host_detect_local_cpu):
	Handle graniterapids.
	* config/i386/i386-c.cc (ix86_target_macros_internal):
	Ditto.
	* config/i386/i386-options.cc (m_GRANITERAPIDS): New.
	(processor_cost_table): Add graniterapids.
	* config/i386/i386.h (enum processor_type):
	Add PROCESSOR_GRANITERAPIDS.
	(PTA_GRANITERAPIDS): Ditto.
	* doc/extend.texi: Add graniterapids.
	* doc/invoke.texi: Ditto.

2022-11-07  Haochen Jiang  <haochen.jiang@intel.com>
	    Hongtao Liu  <hongtao.liu@intel.com>

	* common/config/i386/cpuinfo.h (get_available_features):
	Detect PREFETCHI.
	* common/config/i386/i386-common.cc
	(OPTION_MASK_ISA2_PREFETCHI_SET,
	OPTION_MASK_ISA2_PREFETCHI_UNSET): New.
	(ix86_handle_option): Handle -mprefetchi.
	* common/config/i386/i386-cpuinfo.h
	(enum processor_features): Add FEATURE_PREFETCHI.
	* common/config/i386/i386-isas.h: Add ISA_NAME_TABLE_ENTRY
	for prefetchi.
	* config.gcc: Add prfchiintrin.h.
	* config/i386/cpuid.h (bit_PREFETCHI): New.
	* config/i386/i386-builtin-types.def:
	Add DEF_FUNCTION_TYPE (VOID, PCVOID, INT)
	and DEF_FUNCTION_TYPE (VOID, PCVOID, INT, INT, INT).
	* config/i386/i386-builtin.def (BDESC): Add new builtins.
	* config/i386/i386-c.cc (ix86_target_macros_internal):
	Define __PREFETCHI__.
	* config/i386/i386-expand.cc: Handle new builtins.
	* config/i386/i386-isa.def (PREFETCHI):
	Add DEF_PTA(PREFETCHI).
	* config/i386/i386-options.cc
	(ix86_valid_target_attribute_inner_p): Handle prefetchi.
	* config/i386/i386.md (prefetchi): New define_insn.
	* config/i386/i386.opt: Add option -mprefetchi.
	* config/i386/predicates.md (local_func_symbolic_operand):
	New predicates.
	* config/i386/x86gprintrin.h: Include prfchiintrin.h.
	* config/i386/xmmintrin.h (enum _mm_hint): New enum for
	prefetchi.
	(_mm_prefetch): Handle the highest bit of enum.
	* doc/extend.texi: Document prefetchi.
	* doc/invoke.texi: Document -mprefetchi.
	* doc/sourcebuild.texi: Document target prefetchi.
	* config/i386/prfchiintrin.h: New file.

2022-11-06  Uroš Bizjak  <ubizjak@gmail.com>

	* optabs.cc (can_vec_set_var_idx_p): Use operand[2]
	mode when checking vec_set_optab.

2022-11-06  Xi Ruoyao  <xry111@xry111.site>

	* config/loongarch/loongarch.md (UNSPEC_FCOPYSIGN): New unspec.
	(type): Add fcopysign.
	(copysign<mode>3): New instruction template.

2022-11-06  Bernhard Reutner-Fischer  <aldot@gcc.gnu.org>

	* multiple_target.cc (expand_target_clones): Free memory.

2022-11-06  Bernhard Reutner-Fischer  <aldot@gcc.gnu.org>

	* cgraph.cc (cgraph_node::make_local): Remove redundant set_section.
	* multiple_target.cc (create_dispatcher_calls): Likewise.

2022-11-05  Jonathan Wakely  <jwakely@redhat.com>

	PR c/41041
	* doc/cppopts.texi: Document -fwide-exec-charset defaults
	correctly.

2022-11-05  Alexandre Oliva  <oliva@adacore.com>

	* common.opt (fmultiflags): New.
	* doc/invoke.texi: Document it.
	* gcc.cc (driver_self_specs): Discard it.
	* opts.cc (common_handle_option): Ignore it in the driver.

2022-11-04  Jeff Chapman II  <jchapman@lock3software.com>
	    Jason Merrill   <jason@redhat.com>

	* input.cc (get_source_text_between): New fn.
	* input.h (get_source_text_between): Declare.

2022-11-04  Aldy Hernandez  <aldyh@redhat.com>

	PR tree-optimization/107342
	* range-op.cc (operator_mult::fold_range): New.
	(operator_div::fold_range): New.

2022-11-04  Eric Botcazou  <ebotcazou@adacore.com>

	* fold-const.cc (operand_compare::operand_equal_p) <COMPONENT_REF>:
	Do not take into account operand 2.
	(operand_compare::hash_operand) <COMPONENT_REF>: Likewise.

2022-11-04  Eric Botcazou  <ebotcazou@adacore.com>

	* expr.cc (emit_group_store): Do not use subword paradoxical subregs

2022-11-04  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* config/aarch64/aarch64-sve2.md: Fix typo in Cryptographic
	extensions comment.

2022-11-04  Thomas Schwinge  <thomas@codesourcery.com>

	* config.gcc [target *-intelmic-* | *-intelmicemul-*]: Remove.
	* config/i386/i386-options.cc (ix86_omp_device_kind_arch_isa)
	[ACCEL_COMPILER]: Remove.
	* config/i386/intelmic-mkoffload.cc: Remove.
	* config/i386/intelmic-offload.h: Likewise.
	* config/i386/t-intelmic: Likewise.
	* config/i386/t-omp-device: Likewise.
	* configure.ac [target *-intelmic-* | *-intelmicemul-*]: Remove.
	* configure: Regenerate.
	* doc/install.texi (--enable-offload-targets=[...]): Update.
	* doc/sourcebuild.texi: Remove 'liboffloadmic' documentation.

2022-11-04  Thomas Schwinge  <thomas@codesourcery.com>

	* Makefile.in (OBJS): Remove 'dbxout.o'.
	* config/nvptx/nvptx.cc: Don't '#include "dbxout.h"'.
	* dbxout.cc: Remove.
	* dbxout.h: Likewise.
	* target-def.h (TARGET_ASM_CONSTRUCTOR, TARGET_ASM_DESTRUCTOR):
	Default to 'default_asm_out_constructor',
	'default_asm_out_destructor'.
	* targhooks.cc (default_asm_out_constructor)
	(default_asm_out_destructor): New.
	* targhooks.h (default_asm_out_constructor)
	(default_asm_out_destructor): Declare.

2022-11-04  Thomas Schwinge  <thomas@codesourcery.com>

	* Makefile.in (OBJS): Add 'dbxout.o'.
	* config/nvptx/nvptx.cc: '#include "dbxout.h"'.
	* dbxout.cc: New.
	* dbxout.h: Likewise.
	* target-def.h (TARGET_ASM_CONSTRUCTOR, TARGET_ASM_DESTRUCTOR):
	Default to 'default_stabs_asm_out_constructor',
	'default_stabs_asm_out_destructor'.

2022-11-04  Hongyu Wang  <hongyu.wang@intel.com>
	    Haochen Jiang  <haochen.jiang@intel.com>

	* common/config/i386/cpuinfo.h (get_available_features): Detect
	amx-fp16.
	* common/config/i386/i386-common.cc (OPTION_MASK_ISA2_AMX_FP16_SET,
	OPTION_MASK_ISA2_AMX_FP16_UNSET): New macros.
	(ix86_handle_option): Handle -mamx-fp16.
	* common/config/i386/i386-cpuinfo.h (enum processor_features):
	Add FEATURE_AMX_FP16.
	* common/config/i386/i386-isas.h: Add ISA_NAME_TABLE_ENTRY for
	amx-fp16.
	* config.gcc: Add amxfp16intrin.h.
	* config/i386/cpuid.h (bit_AMX_FP16): New.
	* config/i386/i386-c.cc (ix86_target_macros_internal): Define
	__AMX_FP16__.
	* config/i386/i386-isa.def: Add DEF_PTA for AMX_FP16.
	* config/i386/i386-options.cc (isa2_opts): Add -mamx-fp16.
	(ix86_valid_target_attribute_inner_p): Add new ATTR.
	(ix86_option_override_internal): Handle AMX-FP16.
	* config/i386/i386.opt: Add -mamx-fp16.
	* config/i386/immintrin.h: Include amxfp16intrin.h.
	* doc/extend.texi: Document -mamx-fp16.
	* doc/invoke.texi: Document amx-fp16.
	* doc/sourcebuild.texi: Document amx_fp16.
	* config/i386/amxfp16intrin.h: New file.

2022-11-04  Haochen Jiang  <haochen.jiang@intel.com>

	* common/config/i386/cpuinfo.h (get_intel_cpu):
	Add Sierra Forest.
	* common/config/i386/i386-common.cc
	(processor_names): Add Sierra Forest.
	(processor_alias_table): Ditto.
	* common/config/i386/i386-cpuinfo.h
	(enum processor_types): Add INTEL_SIERRAFOREST.
	* config.gcc: Add -march=sierraforest.
	* config/i386/driver-i386.cc (host_detect_local_cpu):
	Handle Sierra Forest.
	* config/i386/i386-c.cc (ix86_target_macros_internal):
	Ditto.
	* config/i386/i386-options.cc (m_SIERRAFOREST): New define.
	(processor_cost_table): Add sierra forest.
	* config/i386/i386.h (enum processor_type):
	Add PROCESSOR_SIERRA_FOREST.
	(PTA_SIERRAFOREST): Ditto.
	* doc/extend.texi: Add sierra forest.
	* doc/invoke.texi: Ditto.

2022-11-04  Haochen Jiang  <haochen.jiang@intel.com>

	* common/config/i386/cpuinfo.h (get_available_features):
	Detect cmpccxadd.
	* common/config/i386/i386-common.cc
	(OPTION_MASK_ISA2_CMPCCXADD_SET,
	OPTION_MASK_ISA2_CMPCCXADD_UNSET): New.
	(ix86_handle_option): Handle -mcmpccxadd.
	* common/config/i386/i386-cpuinfo.h (enum processor_features):
	Add FEATURE_CMPCCXADD.
	* common/config/i386/i386-isas.h: Add ISA_NAME_TABLE_ENTRY for
	cmpccxadd.
	* config.gcc: Add cmpccxaddintrin.h.
	* config/i386/cpuid.h (bit_CMPCCXADD): New.
	* config/i386/i386-builtin-types.def:
	Add DEF_FUNCTION_TYPE(INT, PINT, INT, INT, INT)
	and DEF_FUNCTION_TYPE(LONGLONG, PLONGLONG, LONGLONG, LONGLONG, INT).
	* config/i386/i386-builtin.def (BDESC): Add new builtins.
	* config/i386/i386-c.cc (ix86_target_macros_internal): Define
	__CMPCCXADD__.
	* config/i386/i386-expand.cc (ix86_expand_special_args_builtin):
	Add new parameter to indicate constant position.
	Handle INT_FTYPE_PINT_INT_INT_INT
	and LONGLONG_FTYPE_PLONGLONG_LONGLONG_LONGLONG_INT.
	* config/i386/i386-isa.def (CMPCCXADD): Add DEF_PTA(CMPCCXADD).
	* config/i386/i386-options.cc (isa2_opts): Add -mcmpccxadd.
	(ix86_valid_target_attribute_inner_p): Handle cmpccxadd.
	* config/i386/i386.opt: Add option -mcmpccxadd.
	* config/i386/sync.md (cmpccxadd_<mode>): New define insn.
	* config/i386/x86gprintrin.h: Include cmpccxaddintrin.h.
	* doc/extend.texi: Document cmpccxadd.
	* doc/invoke.texi: Document -mcmpccxadd.
	* doc/sourcebuild.texi: Document target cmpccxadd.
	* config/i386/cmpccxaddintrin.h: New file.

2022-11-03  Jason Merrill  <jason@redhat.com>

	* doc/invoke.texi: -fconcepts no longer implies
	-fconcepts-ts before C++20.

2022-11-03  Kwok Cheung Yeung  <kcy@codesourcery.com>

	* config/gcn/gcn-valu.md (math_unop_insn): New attribute.
	(<math_unop><mode>2, <math_unop><mode>2<exec>, <math_unop><mode>2,
	<math_unop><mode>2<exec>, *<math_unop><mode>2_insn,
	*<math_unop><mode>2<exec>_insn): Use math_unop_insn to generate
	assembler output.

2022-11-03  Andrew MacLeod  <amacleod@redhat.com>

	* gimple-range.cc (gimple_ranger::update_stmt): New.
	* gimple-range.h (gimple_ranger::update_stmt): New prototype.
	* tree-ssa-operands.cc (update_stmt_operands): Notify range
	query that stmt has changed.
	* value-query.h (range_query::update_stmt): New.

2022-11-03  David Malcolm  <dmalcolm@redhat.com>

	* make-unique.h: New file.

2022-11-03  Uroš Bizjak  <ubizjak@gmail.com>

	PR target/107404
	* config/i386/i386.md (eliminate reg-reg move by inverting the
	condition of a cmove #2 peephole2): Check if eliminated move
	initialized a register, used in the moved instruction.

2022-11-03  Andrew Stubbs  <ams@codesourcery.com>

	PR target/107510
	* config/gcn/gcn.cc (gcn_expand_reduc_scalar): Remove duplicate
	UNSPEC_SMIN_DPP_SHR conditionals.

2022-11-02  Christoph Müllner  <christoph.muellner@vrull.eu>

	* common/config/riscv/riscv-common.cc: Add zawrs extension.
	* config/riscv/riscv-opts.h (MASK_ZAWRS): New.
	(TARGET_ZAWRS): New.
	* config/riscv/riscv.opt: New.

2022-11-02  Rasmus Villemoes  <rv@rasmusvillemoes.dk>

	PR driver/93371
	* gcc.cc (ASM_MAP): Honour -ffile-prefix-map.

2022-11-02  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.cc (frange::contains_p): Fix signed zero handling.
	(range_tests_signed_zeros): New test.

2022-11-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

	* builtins.cc (mathfn_built_in_2): #undef HUGE_VAL, NAN.

2022-11-02  Xionghu Luo  <xionghuluo@tencent.com>

	PR target/100866
	* config/rs6000/altivec.md: (*altivec_vrl<VI_char>): Named to...
	(altivec_vrl<VI_char>): ...this.
	* config/rs6000/vsx.md (revb_<mode>): Call vspltish and vrlh when
	target is Power8 and mode is V8HI.

2022-11-01  David Seifert  <soap@gentoo.org>

	* configure.ac: Add AC_CACHE_CHECK(..., gcc_cv_sys_sdt_h).
	* configure: Regenerate.

2022-11-01  Richard Purdie  <richard.purdie@linuxfoundation.org>

	* file-prefix-map.cc (remap_filename): Allow remapping of relative paths.

2022-11-01  Aldy Hernandez  <aldyh@redhat.com>

	PR tree-optimization/107490
	* range-op-float.cc (foperator_unordered_lt::op1_range): Handle
	NANs.
	(foperator_unordered_lt::op2_range): Same.
	(foperator_unordered_le::op1_range): Same.
	(foperator_unordered_le::op2_range): Same.
	(foperator_unordered_gt::op1_range): Same.
	(foperator_unordered_gt::op2_range): Same.
	(foperator_unordered_ge::op1_range): Same.
	(foperator_unordered_ge::op2_range): Same.

2022-11-01  Andrew MacLeod  <amacleod@redhat.com>

	PR tree-optimization/107497
	* tree-vrp.cc (remove_unreachable::remove_and_update_globals):
	Check that ssa-name still exists before accessing it.

2022-11-01  Andrew MacLeod  <amacleod@redhat.com>

	* params.opt (param_vrp1_mode): Make ranger default.

2022-11-01  Andrew MacLeod  <amacleod@redhat.com>

	* tree-vrp.cc (class remove_unreachable): New.
	(remove_unreachable::maybe_register_block): New.
	(remove_unreachable::remove_and_update_globals): New.
	(rvrp_folder::rvrp_folder): Initialize m_unreachable.
	(rvrp_folder::post_fold_bb): Maybe register unreachable block.
	(rvrp_folder::m_unreachable): New member.
	(execute_ranger_vrp): Add final_pass flag, remove unreachables.

2022-11-01  Andrew MacLeod  <amacleod@redhat.com>

	* gimple-range-cache.cc (ranger_cache::fill_block_cache): Allow
	exit block to be specified.
	(ranger_cache::range_from_dom): If exit block is specified, use
	the immediate predecessor instead of the dominator to start.
	* gimple-range.cc (gimple_ranger::range_on_exit): Allow query
	for exit block.

2022-11-01  Andrew MacLeod  <amacleod@redhat.com>

	* value-range.cc (irange::intersect_nonzero_bits): If new
	non-zero mask is the same as original, flag no change.

2022-11-01  Alexander Monakov  <amonakov@ispras.ru>

	PR target/87832
	* config/i386/znver.md (znver1_idiv): New automaton.
	(znver1-idiv): New unit.
	(znver1_idiv_DI): Correct unit and cycles in the reservation.
	(znver1_idiv_SI): Ditto.
	(znver1_idiv_HI): Ditto.
	(znver1_idiv_QI): Ditto.
	(znver1_idiv_mem_DI): Ditto.
	(znver1_idiv_mem_SI): Ditto.
	(znver1_idiv_mem_HI): Ditto.
	(znver1_idiv_mem_QI): Ditto.
	(znver3_idiv_DI): Ditto.
	(znver3_idiv_SI): Ditto.
	(znver3_idiv_HI): Ditto.
	(znver3_idiv_QI): Ditto.
	(znver3_idiv_mem_DI): Ditto.
	(znver3_idiv_mem_SI): Ditto.
	(znver3_idiv_mem_HI): Ditto.
	(znver3_idiv_mem_QI): Ditto.

2022-11-01  liuhongt  <hongtao.liu@intel.com>

	PR target/107057
	* config/i386/sse.md (*vec_interleave_highv2df): Remove
	constraint 1.
	(*vec_interleave_lowv2df): Ditto.
	(vec_concatv2df): Ditto.
	(*avx512f_unpcklpd512<mask_name>): Ditto and renamed to ..
	(avx512f_unpcklpd512<mask_name>): .. this.
	(avx512f_movddup512<mask_name>): Change to define_insn.
	(avx_movddup256<mask_name>): Ditto.
	(*avx_unpcklpd256<mask_name>): Remove constraint 1 and renamed
	to ..
	(avx_unpcklpd256<mask_name>): .. this.
	* config/i386/i386.cc (ix86_vec_interleave_v2df_operator_ok):
	Disallow MEM_P (op1) && MEM_P (op2).

2022-11-01  liuhongt  <hongtao.liu@intel.com>

	PR target/55583
	* config/i386/i386.md (*x86_64_shld_1): Rename to ..
	(x86_64_shld_1): .. this.
	(*x86_shld_1): Rename to ..
	(x86_shld_1): .. this.
	(*x86_64_shrd_1): Rename to ..
	(x86_64_shrd_1): .. this.
	(*x86_shrd_1): Rename to ..
	(x86_shrd_1): .. this.
	(*x86_64_shld_shrd_1_nozext): New pre_reload splitter.
	(*x86_shld_shrd_1_nozext): Ditto.
	(*x86_64_shrd_shld_1_nozext): Ditto.
	(*x86_shrd_shld_1_nozext): Ditto.

2022-11-01  Cui,Lili  <lili.cui@intel.com>

	* ipa-inline-analysis.cc (do_estimate_edge_time): Add function attribute
	judgement for INLINE_HINT_known_hot hint.

2022-10-31  Guillermo E. Martinez  <guillermo.e.martinez@oracle.com>

	* btfout.cc (btf_calc_num_vbytes): Compute enumeration size depending of
	enumerator type btf_enum{,64}.
	(btf_asm_type): Update btf_kflag according to enumeration type sign
	using dtd_enum_unsigned field for both:  BTF_KIND_ENUM{,64}.
	(btf_asm_enum_const): New argument to represent the size of
	the BTF enum type, writing the enumerator constant value for
	32 bits, if it's 64 bits then explicitly writes lower 32-bits
	value and higher 32-bits value.
	(output_asm_btf_enum_list): Add enumeration size argument.
	* ctfc.cc (ctf_add_enum): New argument to represent CTF enum
	basic information.
	(ctf_add_generic): Use of ei_{name. size, unsigned} to build the
	dtd structure containing enumeration information.
	(ctf_add_enumerator): Update comment mention support for BTF
	enumeration in 64-bits.
	* dwarf2ctf.cc (gen_ctf_enumeration_type): Extract signedness
	for enumeration type and use it in ctf_add_enum.
	* ctfc.h (ctf_dmdef): Update dmd_value to HOST_WIDE_INT to allow
	use 32/64 bits enumerators.
	information.
	(ctf_dtdef): New field to describe enum signedness.

2022-10-31  Ju-Zhe Zhong  <juzhe.zhong@rivai.ai>

	* config/riscv/riscv-vector-builtins-bases.cc: Change constexpr back to CONSTEXPR.
	* config/riscv/riscv-vector-builtins-shapes.cc (SHAPE): Ditto.
	* config/riscv/riscv-vector-builtins.cc (struct registered_function_hasher): Ditto.
	* config/riscv/riscv-vector-builtins.h (struct rvv_arg_type_info): Ditto.

2022-10-31  Andrew Stubbs  <ams@codesourcery.com>

	* config/gcn/gcn-valu.md (fminmaxop): New iterator.
	(<fexpander><mode>3): New define_expand.
	(<fexpander><mode>3<exec>): Likewise.
	(reduc_<fexpander>_scal_<mode>): Likewise.
	* config/gcn/gcn.md (fexpander): New attribute.

2022-10-31  Andrew Stubbs  <ams@codesourcery.com>

	* config/gcn/gcn-valu.md (V64_SI): Delete iterator.
	(V64_DI): Likewise.
	(V64_1REG): Likewise.
	(V64_INT_1REG): Likewise.
	(V64_2REG): Likewise.
	(V64_ALL): Likewise.
	(V64_FP): Likewise.
	(reduc_<reduc_op>_scal_<mode>): Use V_ALL. Use gen_vec_extract.
	(fold_left_plus_<mode>): Use V_FP.
	(*<reduc_op>_dpp_shr_<mode>): Use V_1REG.
	(*<reduc_op>_dpp_shr_<mode>): Use V_DI.
	(*plus_carry_dpp_shr_<mode>): Use V_INT_1REG.
	(*plus_carry_in_dpp_shr_<mode>): Use V_SI.
	(*plus_carry_dpp_shr_<mode>): Use V_DI.
	(mov_from_lane63_<mode>): Delete.
	(mov_from_lane63_<mode>): Delete.
	* config/gcn/gcn.cc (gcn_expand_reduc_scalar): Support partial vectors.
	* config/gcn/gcn.md (unspec): Remove UNSPEC_MOV_FROM_LANE63.

2022-10-31  Andrew Stubbs  <ams@codesourcery.com>

	* config/gcn/gcn.cc (gcn_simd_clone_compute_vecsize_and_simdlen):
	Set base_type as ARG_UNUSED.

2022-10-31  Jakub Jelinek  <jakub@redhat.com>

	* builtin-types.def (BT_COMPLEX_FLOAT16, BT_COMPLEX_FLOAT32,
	BT_COMPLEX_FLOAT64, BT_COMPLEX_FLOAT128, BT_COMPLEX_FLOAT32X,
	BT_COMPLEX_FLOAT64X, BT_COMPLEX_FLOAT128X,
	BT_FN_COMPLEX_FLOAT16_COMPLEX_FLOAT16,
	BT_FN_COMPLEX_FLOAT32_COMPLEX_FLOAT32,
	BT_FN_COMPLEX_FLOAT64_COMPLEX_FLOAT64,
	BT_FN_COMPLEX_FLOAT128_COMPLEX_FLOAT128,
	BT_FN_COMPLEX_FLOAT32X_COMPLEX_FLOAT32X,
	BT_FN_COMPLEX_FLOAT64X_COMPLEX_FLOAT64X,
	BT_FN_COMPLEX_FLOAT128X_COMPLEX_FLOAT128X,
	BT_FN_FLOAT16_COMPLEX_FLOAT16, BT_FN_FLOAT32_COMPLEX_FLOAT32,
	BT_FN_FLOAT64_COMPLEX_FLOAT64, BT_FN_FLOAT128_COMPLEX_FLOAT128,
	BT_FN_FLOAT32X_COMPLEX_FLOAT32X, BT_FN_FLOAT64X_COMPLEX_FLOAT64X,
	BT_FN_FLOAT128X_COMPLEX_FLOAT128X,
	BT_FN_COMPLEX_FLOAT16_COMPLEX_FLOAT16_COMPLEX_FLOAT16,
	BT_FN_COMPLEX_FLOAT32_COMPLEX_FLOAT32_COMPLEX_FLOAT32,
	BT_FN_COMPLEX_FLOAT64_COMPLEX_FLOAT64_COMPLEX_FLOAT64,
	BT_FN_COMPLEX_FLOAT128_COMPLEX_FLOAT128_COMPLEX_FLOAT128,
	BT_FN_COMPLEX_FLOAT32X_COMPLEX_FLOAT32X_COMPLEX_FLOAT32X,
	BT_FN_COMPLEX_FLOAT64X_COMPLEX_FLOAT64X_COMPLEX_FLOAT64X,
	BT_FN_COMPLEX_FLOAT128X_COMPLEX_FLOAT128X_COMPLEX_FLOAT128X): New.
	* builtins.def (CABS_TYPE, CACOSH_TYPE, CARG_TYPE, CASINH_TYPE,
	CPOW_TYPE, CPROJ_TYPE): Define and undefine later.
	(BUILT_IN_CABS, BUILT_IN_CACOSH, BUILT_IN_CACOS, BUILT_IN_CARG,
	BUILT_IN_CASINH, BUILT_IN_CASIN, BUILT_IN_CATANH, BUILT_IN_CATAN,
	BUILT_IN_CCOSH, BUILT_IN_CCOS, BUILT_IN_CEXP, BUILT_IN_CLOG,
	BUILT_IN_CPOW, BUILT_IN_CPROJ, BUILT_IN_CSINH, BUILT_IN_CSIN,
	BUILT_IN_CSQRT, BUILT_IN_CTANH, BUILT_IN_CTAN): Add
	DEF_EXT_LIB_FLOATN_NX_BUILTINS.
	* fold-const-call.cc (fold_const_call_sc, fold_const_call_cc,
	fold_const_call_ccc): Add various CASE_CFN_*_FN: cases when
	CASE_CFN_* is present.
	* gimple-ssa-backprop.cc (backprop::process_builtin_call_use):
	Likewise.
	* builtins.cc (expand_builtin, fold_builtin_1): Likewise.
	* fold-const.cc (negate_mathfn_p, tree_expr_finite_p,
	tree_expr_maybe_signaling_nan_p, tree_expr_maybe_nan_p,
	tree_expr_maybe_real_minus_zero_p, tree_call_nonnegative_warnv_p):
	Likewise.

2022-10-31  Jakub Jelinek  <jakub@redhat.com>

	* builtin-types.def (BT_FN_BFLOAT16_BFLOAT16_BFLOAT16): New.
	* builtins.def (BUILT_IN_NEXTAFTERF16B): New builtin.
	* fold-const-call.cc (fold_const_call_sss): Handle
	CFN_BUILT_IN_NEXTAFTERF16B.

2022-10-31  Jakub Jelinek  <jakub@redhat.com>

	* builtin-types.def (BT_FLOAT16_PTR, BT_FLOAT32_PTR, BT_FLOAT64_PTR,
	BT_FLOAT128_PTR, BT_FLOAT32X_PTR, BT_FLOAT64X_PTR, BT_FLOAT128X_PTR):
	New DEF_PRIMITIVE_TYPE.
	(BT_FN_INT_FLOAT16, BT_FN_INT_FLOAT32, BT_FN_INT_FLOAT64,
	BT_FN_INT_FLOAT128, BT_FN_INT_FLOAT32X, BT_FN_INT_FLOAT64X,
	BT_FN_INT_FLOAT128X, BT_FN_LONG_FLOAT16, BT_FN_LONG_FLOAT32,
	BT_FN_LONG_FLOAT64, BT_FN_LONG_FLOAT128, BT_FN_LONG_FLOAT32X,
	BT_FN_LONG_FLOAT64X, BT_FN_LONG_FLOAT128X, BT_FN_LONGLONG_FLOAT16,
	BT_FN_LONGLONG_FLOAT32, BT_FN_LONGLONG_FLOAT64,
	BT_FN_LONGLONG_FLOAT128, BT_FN_LONGLONG_FLOAT32X,
	BT_FN_LONGLONG_FLOAT64X, BT_FN_LONGLONG_FLOAT128X): New
	DEF_FUNCTION_TYPE_1.
	(BT_FN_FLOAT16_FLOAT16_FLOAT16PTR, BT_FN_FLOAT32_FLOAT32_FLOAT32PTR,
	BT_FN_FLOAT64_FLOAT64_FLOAT64PTR, BT_FN_FLOAT128_FLOAT128_FLOAT128PTR,
	BT_FN_FLOAT32X_FLOAT32X_FLOAT32XPTR,
	BT_FN_FLOAT64X_FLOAT64X_FLOAT64XPTR,
	BT_FN_FLOAT128X_FLOAT128X_FLOAT128XPTR, BT_FN_FLOAT16_FLOAT16_INT,
	BT_FN_FLOAT32_FLOAT32_INT, BT_FN_FLOAT64_FLOAT64_INT,
	BT_FN_FLOAT128_FLOAT128_INT, BT_FN_FLOAT32X_FLOAT32X_INT,
	BT_FN_FLOAT64X_FLOAT64X_INT, BT_FN_FLOAT128X_FLOAT128X_INT,
	BT_FN_FLOAT16_FLOAT16_INTPTR, BT_FN_FLOAT32_FLOAT32_INTPTR,
	BT_FN_FLOAT64_FLOAT64_INTPTR, BT_FN_FLOAT128_FLOAT128_INTPTR,
	BT_FN_FLOAT32X_FLOAT32X_INTPTR, BT_FN_FLOAT64X_FLOAT64X_INTPTR,
	BT_FN_FLOAT128X_FLOAT128X_INTPTR, BT_FN_FLOAT16_FLOAT16_LONG,
	BT_FN_FLOAT32_FLOAT32_LONG, BT_FN_FLOAT64_FLOAT64_LONG,
	BT_FN_FLOAT128_FLOAT128_LONG, BT_FN_FLOAT32X_FLOAT32X_LONG,
	BT_FN_FLOAT64X_FLOAT64X_LONG, BT_FN_FLOAT128X_FLOAT128X_LONG): New
	DEF_FUNCTION_TYPE_2.
	(BT_FN_FLOAT16_FLOAT16_FLOAT16_INTPTR,
	BT_FN_FLOAT32_FLOAT32_FLOAT32_INTPTR,
	BT_FN_FLOAT64_FLOAT64_FLOAT64_INTPTR,
	BT_FN_FLOAT128_FLOAT128_FLOAT128_INTPTR,
	BT_FN_FLOAT32X_FLOAT32X_FLOAT32X_INTPTR,
	BT_FN_FLOAT64X_FLOAT64X_FLOAT64X_INTPTR,
	BT_FN_FLOAT128X_FLOAT128X_FLOAT128X_INTPTR): New DEF_FUNCTION_TYPE_3.
	* builtins.def (ACOSH_TYPE, ATAN2_TYPE, ATANH_TYPE, COSH_TYPE,
	FDIM_TYPE, HUGE_VAL_TYPE, HYPOT_TYPE, ILOGB_TYPE, LDEXP_TYPE,
	LGAMMA_TYPE, LLRINT_TYPE, LOG10_TYPE, LRINT_TYPE, MODF_TYPE,
	NEXTAFTER_TYPE, REMQUO_TYPE, SCALBLN_TYPE, SCALBN_TYPE, SINH_TYPE):
	Define and undefine later.
	(FMIN_TYPE, SQRT_TYPE): Undefine at a later line.
	(INF_TYPE): Define at a later line.
	(BUILT_IN_ACOSH, BUILT_IN_ACOS, BUILT_IN_ASINH, BUILT_IN_ASIN,
	BUILT_IN_ATAN2, BUILT_IN_ATANH, BUILT_IN_ATAN, BUILT_IN_CBRT,
	BUILT_IN_COSH, BUILT_IN_COS, BUILT_IN_ERFC, BUILT_IN_ERF,
	BUILT_IN_EXP2, BUILT_IN_EXP, BUILT_IN_EXPM1, BUILT_IN_FDIM,
	BUILT_IN_FMOD, BUILT_IN_FREXP, BUILT_IN_HYPOT, BUILT_IN_ILOGB,
	BUILT_IN_LDEXP, BUILT_IN_LGAMMA, BUILT_IN_LLRINT, BUILT_IN_LLROUND,
	BUILT_IN_LOG10, BUILT_IN_LOG1P, BUILT_IN_LOG2, BUILT_IN_LOGB,
	BUILT_IN_LOG, BUILT_IN_LRINT, BUILT_IN_LROUND, BUILT_IN_MODF,
	BUILT_IN_NEXTAFTER, BUILT_IN_POW, BUILT_IN_REMAINDER, BUILT_IN_REMQUO,
	BUILT_IN_SCALBLN, BUILT_IN_SCALBN, BUILT_IN_SINH, BUILT_IN_SIN,
	BUILT_IN_TANH, BUILT_IN_TAN, BUILT_IN_TGAMMA): Add
	DEF_EXT_LIB_FLOATN_NX_BUILTINS.
	(BUILT_IN_HUGE_VAL): Use HUGE_VAL_TYPE instead of INF_TYPE in
	DEF_GCC_FLOATN_NX_BUILTINS.
	* fold-const-call.cc (fold_const_call_ss): Add various CASE_CFN_*_FN:
	cases when CASE_CFN_* is present.
	(fold_const_call_sss): Likewise.
	* builtins.cc (mathfn_built_in_2): Use CASE_MATHFN_FLOATN instead of
	CASE_MATHFN for various builtins in SEQ_OF_CASE_MATHFN macro.
	(builtin_with_linkage_p): Add CASE_FLT_FN_FLOATN_NX for various
	builtins next to CASE_FLT_FN.
	* fold-const.cc (tree_call_nonnegative_warnv_p): Add CASE_CFN_*_FN:
	next to CASE_CFN_*: for various builtins.
	* tree-call-cdce.cc (can_test_argument_range): Add
	CASE_FLT_FN_FLOATN_NX next to CASE_FLT_FN for various builtins.
	(edom_only_function): Likewise.

2022-10-31  konglin1  <lingling.kong@intel.com>

	* common/config/i386/i386-common.cc
	(OPTION_MASK_ISA2_AVXNECONVERT_SET,
	OPTION_MASK_ISA2_AVXNECONVERT_UNSET): New.
	(ix86_handle_option): Handle -mavxneconvert, unset
	avxneconvert when avx2 is disabled.
	* common/config/i386/i386-cpuinfo.h (processor_types): Add
	FEATURE_AVXNECONVERT.
	* common/config/i386/i386-isas.h: Add ISA_NAME_TABLE_ENTRY for
	avxneconvert.
	* common/config/i386/cpuinfo.h (get_available_features):
	Detect avxneconvert.
	* config.gcc: Add avxneconvertintrin.h
	* config/i386/avxneconvertintrin.h: New.
	* config/i386/avx512bf16vlintrin.h (_mm256_cvtneps_pbh):
	Unified builtin with avxneconvert.
	(_mm_cvtneps_pbh): Ditto.
	* config/i386/cpuid.h (bit_AVXNECONVERT): New.
	* config/i386/i386-builtin-types.def: Add
	DEF_POINTER_TYPE (PCV8HF, V8HF, CONST),
	DEF_POINTER_TYPE (PCV8BF, V8BF, CONST),
	DEF_POINTER_TYPE (PCV16HF, V16HF, CONST),
	DEF_POINTER_TYPE (PCV16BF, V16BF, CONST),
	DEF_FUNCTION_TYPE (V4SF, PCBFLOAT16),
	DEF_FUNCTION_TYPE (V4SF, PCFLOAT16),
	DEF_FUNCTION_TYPE (V8SF, PCBFLOAT16),
	DEF_FUNCTION_TYPE (V8SF, PCFLOAT16),
	DEF_FUNCTION_TYPE (V4SF, PCV8BF),
	DEF_FUNCTION_TYPE (V4SF, PCV8HF),
	DEF_FUNCTION_TYPE (V8SF, PCV16HF),
	DEF_FUNCTION_TYPE (V8SF, PCV16BF),
	* config/i386/i386-builtin.def: Add new builtins.
	* config/i386/i386-c.cc (ix86_target_macros_internal): Define
	__AVXNECONVERT__.
	* config/i386/i386-expand.cc (ix86_expand_special_args_builtin):
	Handle V4SF_FTYPE_PCBFLOAT16,V8SF_FTYPE_PCBFLOAT16, V4SF_FTYPE_PCFLOAT16,
	V8SF_FTYPE_PCFLOAT16,V4SF_FTYPE_PCV8BF,
	V4SF_FTYPE_PCV8HF,V8SF_FTYPE_PCV16BF,V8SF_FTYPE_PCV16HF.
	* config/i386/i386-isa.def : Add DEF_PTA(AVXNECONVERT) New.
	* config/i386/i386-options.cc (isa2_opts): Add -mavxneconvert.
	(ix86_valid_target_attribute_inner_p): Handle avxneconvert.
	* config/i386/i386.md: Add attr avx512bf16vl and avxneconvert.
	* config/i386/i386.opt: Add option -mavxneconvert.
	* config/i386/immintrin.h: Inculde avxneconvertintrin.h.
	* config/i386/sse.md (vbcstnebf162ps_<mode>): New define_insn.
	(vbcstnesh2ps_<mode>): Ditto.
	(vcvtnee<bf16_ph>2ps_<mode>):Ditto.
	(vcvtneo<bf16_ph>2ps_<mode>):Ditto.
	(vcvtneps2bf16_v4sf): Ditto.
	(*vcvtneps2bf16_v4sf): Ditto.
	(vcvtneps2bf16_v8sf): Ditto.
	* doc/invoke.texi: Document -mavxneconvert.
	* doc/extend.texi: Document avxneconvert.
	* doc/sourcebuild.texi: Document target avxneconvert.

2022-10-31  konglin1  <lingling.kong@intel.com>

	* config/i386/avx512bf16intrin.h (__attribute__): Change short to bf16.
	(_mm_cvtsbh_ss): Ditto.
	(_mm512_cvtne2ps_pbh): Ditto.
	(_mm512_mask_cvtne2ps_pbh): Ditto.
	(_mm512_maskz_cvtne2ps_pbh): Ditto.
	* config/i386/avx512bf16vlintrin.h (__attribute__): Ditto.
	(_mm256_cvtne2ps_pbh): Ditto.
	(_mm256_mask_cvtne2ps_pbh): Ditto.
	(_mm256_maskz_cvtne2ps_pbh): Ditto.
	(_mm_cvtne2ps_pbh): Ditto.
	(_mm_mask_cvtne2ps_pbh): Ditto.
	(_mm_maskz_cvtne2ps_pbh): Ditto.
	(_mm_cvtness_sbh): Ditto.
	* config/i386/i386-builtin-types.def (V8BF): Add new
	DEF_VECTOR_TYPE for BFmode.
	(V16BF): Ditto.
	(V32BF): Ditto.
	* config/i386/i386-builtin.def (BDESC): Fixed builtins.
	* config/i386/i386-expand.cc (ix86_expand_args_builtin): Changed
	avx512bf16 ix86_builtin_func_type included HI to BF.
	* config/i386/immintrin.h: Add SSE2 depend for avx512bf16.
	* config/i386/sse.md (TARGET_AVX512VL): Changed HI vector to BF
	vector.
	(avx512f_cvtneps2bf16_v4sf): New define_expand.
	(*avx512f_cvtneps2bf16_v4sf): New define_insn.
	(avx512f_cvtneps2bf16_v4sf_maskz):Ditto.
	(avx512f_cvtneps2bf16_v4sf_mask): Ditto.
	(avx512f_cvtneps2bf16_v4sf_mask_1): Ditto.

2022-10-31  liuhongt  <hongtao.liu@intel.com>

	PR target/107261
	* config/i386/i386-modes.def (VECTOR_MODE): Support V2BFmode.
	* config/i386/i386.cc (classify_argument): Handle V4BFmode and
	V2BFmode.
	(ix86_convert_const_vector_to_integer): Ditto.
	* config/i386/i386.h (VALID_AVX512FP16_REG_MODE): Remove
	V2BFmode.
	(VALID_SSE2_REG_MODE): Add V4BFmode and V2BFmode.
	(VALID_MMX_REG_MODE): Add V4BFmode.
	* config/i386/i386.md (mode): Add V4BF and V2BF.
	(MODE_SIZE): Ditto.
	* config/i386/mmx.md (MMXMODE) Add V4BF.
	(V_32): Add V2BF.
	(V_16_32_64): Add V4BF and V2BF.
	(mmxinsnmode): Add V4BF and V2BF.
	(*mov<mode>_internal): Hanlde V4BFmode and V2BFmode.

2022-10-29  Eric Botcazou  <ebotcazou@adacore.com>

	* configure.ac (sjlj-exceptions): Restore dropped line.
	* configure: Regenerate.

2022-10-29  Eric Botcazou  <ebotcazou@adacore.com>

	* alias.cc (init_alias_analysis): Do not record sets to the hard
	frame pointer if the frame pointer has not been eliminated.

2022-10-29  Iain Buclaw  <ibuclaw@gdcproject.org>

	* config/darwin-d.cc (TARGET_D_MINFO_START_NAME): Rename to ...
	(TARGET_D_MINFO_SECTION_START): ...this.
	(TARGET_D_MINFO_END_NAME): Rename to ...
	(TARGET_D_MINFO_SECTION_END): ... this.
	* config/elfos.h (TARGET_D_MINFO_SECTION): Remove.
	(TARGET_D_MINFO_START_NAME): Remove.
	(TARGET_D_MINFO_END_NAME): Remove.
	* config/i386/cygwin-d.cc (TARGET_D_MINFO_SECTION): Remove.
	(TARGET_D_MINFO_START_NAME): Remove.
	(TARGET_D_MINFO_END_NAME): Remove.
	* config/i386/winnt-d.cc (TARGET_D_MINFO_SECTION): Remove.
	(TARGET_D_MINFO_START_NAME): Remove.
	(TARGET_D_MINFO_END_NAME): Remove.
	* doc/tm.texi: Regenerate.
	* doc/tm.texi.in (TARGET_D_MINFO_START_NAME): Rename to ...
	(TARGET_D_MINFO_SECTION_START): ...this.
	(TARGET_D_MINFO_END_NAME): Rename to ...
	(TARGET_D_MINFO_SECTION_END): ...this.

2022-10-29  Iain Buclaw  <ibuclaw@gdcproject.org>

	* config.gcc: Split out glibc-d.o into linux-d.o, kfreebsd-d.o,
	kopensolaris-d.o, and gnu-d.o.  Split out cygwin-d.o from winnt-d.o.
	* config/arm/linux-eabi.h (EXTRA_TARGET_D_OS_VERSIONS): Remove.
	* config/gnu.h (GNU_USER_TARGET_D_OS_VERSIONS): Remove.
	* config/i386/cygwin.h (EXTRA_TARGET_D_OS_VERSIONS): Remove.
	* config/i386/linux-common.h (EXTRA_TARGET_D_OS_VERSIONS): Remove.
	* config/i386/mingw32.h (EXTRA_TARGET_D_OS_VERSIONS): Remove.
	* config/i386/t-cygming: Add cygwin-d.o.
	* config/i386/winnt-d.cc (winnt_d_os_builtins): Only add
	MinGW-specific version condition.
	* config/kfreebsd-gnu.h (GNU_USER_TARGET_D_OS_VERSIONS): Remove.
	* config/kopensolaris-gnu.h (GNU_USER_TARGET_D_OS_VERSIONS): Remove.
	* config/linux-android.h (ANDROID_TARGET_D_OS_VERSIONS): Remove.
	* config/linux.h (GNU_USER_TARGET_D_OS_VERSIONS): Remove.
	* config/mips/linux-common.h (EXTRA_TARGET_D_OS_VERSIONS): Remove.
	* config/t-glibc: Remove glibc-d.o, add gnu-d.o, kfreebsd-d.o,
	kopensolaris-d.o.
	* config/t-linux: Add linux-d.o.
	* config/glibc-d.cc: Remove file.
	* config/gnu-d.cc: New file.
	* config/i386/cygwin-d.cc: New file.
	* config/kfreebsd-d.cc: New file.
	* config/kopensolaris-d.cc: New file.
	* config/linux-d.cc: New file.

2022-10-29  Jeff Law  <jeffreyalaw@gmail.com>

	* config/h8300/h8300.cc (pre_incdec_with_reg): Make reg argument
	an unsigned int
	* config/h8300/h8300-protos.h (pre_incdec_with_reg): Adjust prototype.

2022-10-28  Joseph Myers  <joseph@codesourcery.com>

	* config/aarch64/aarch64.cc (aarch64_setup_incoming_varargs):
	Check TYPE_NO_NAMED_ARGS_STDARG_P.
	* config/alpha/alpha.cc (alpha_setup_incoming_varargs): Likewise.
	* config/arc/arc.cc (arc_setup_incoming_varargs): Likewise.
	* config/arm/arm.cc (arm_setup_incoming_varargs): Likewise.
	* config/csky/csky.cc (csky_setup_incoming_varargs): Likewise.
	* config/epiphany/epiphany.cc (epiphany_setup_incoming_varargs):
	Likewise.
	* config/fr30/fr30.cc (fr30_setup_incoming_varargs): Likewise.
	* config/frv/frv.cc (frv_setup_incoming_varargs): Likewise.
	* config/ft32/ft32.cc (ft32_setup_incoming_varargs): Likewise.
	* config/i386/i386.cc (ix86_setup_incoming_varargs): Likewise.
	* config/ia64/ia64.cc (ia64_setup_incoming_varargs): Likewise.
	* config/loongarch/loongarch.cc
	(loongarch_setup_incoming_varargs): Likewise.
	* config/m32r/m32r.cc (m32r_setup_incoming_varargs): Likewise.
	* config/mcore/mcore.cc (mcore_setup_incoming_varargs): Likewise.
	* config/mips/mips.cc (mips_setup_incoming_varargs): Likewise.
	* config/mmix/mmix.cc (mmix_setup_incoming_varargs): Likewise.
	* config/nds32/nds32.cc (nds32_setup_incoming_varargs): Likewise.
	* config/nios2/nios2.cc (nios2_setup_incoming_varargs): Likewise.
	* config/riscv/riscv.cc (riscv_setup_incoming_varargs): Likewise.
	* config/rs6000/rs6000-call.cc (setup_incoming_varargs): Likewise.
	* config/sh/sh.cc (sh_setup_incoming_varargs): Likewise.
	* config/visium/visium.cc (visium_setup_incoming_varargs):
	Likewise.
	* config/vms/vms-c.cc (vms_c_common_override_options): Do not set
	flag_allow_parameterless_variadic_functions.
	* doc/invoke.texi (-fallow-parameterless-variadic-functions): Do
	not document option.
	* function.cc (assign_parms): Call assign_parms_setup_varargs for
	TYPE_NO_NAMED_ARGS_STDARG_P case.
	* ginclude/stdarg.h [__STDC_VERSION__ > 201710L] (va_start): Make
	variadic macro.  Pass second argument of 0 to __builtin_va_start.
	* target.def (setup_incoming_varargs): Update documentation.
	* doc/tm.texi: Regenerate.
	* tree-core.h (struct tree_type_common): Add
	no_named_args_stdarg_p.
	* tree-streamer-in.cc (unpack_ts_type_common_value_fields): Unpack
	TYPE_NO_NAMED_ARGS_STDARG_P.
	* tree-streamer-out.cc (pack_ts_type_common_value_fields): Pack
	TYPE_NO_NAMED_ARGS_STDARG_P.
	* tree.cc (type_cache_hasher::equal): Compare
	TYPE_NO_NAMED_ARGS_STDARG_P.
	(build_function_type): Add argument no_named_args_stdarg_p.
	(build_function_type_list_1, build_function_type_array_1)
	(reconstruct_complex_type): Update calls to build_function_type.
	(stdarg_p, prototype_p): Return true for (...) functions.
	(gimple_canonical_types_compatible_p): Compare
	TYPE_NO_NAMED_ARGS_STDARG_P.
	* tree.h (TYPE_NO_NAMED_ARGS_STDARG_P): New.
	(build_function_type): Update prototype.

2022-10-28  Andre Vieira  <andre.simoesdiasvieira@arm.com>

	PR tree-optimization/107346
	* tree-vect-data-refs.cc (vect_check_gather_scatter): Reject offsets
	that aren't multiples of BITS_PER_UNIT.

2022-10-28  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/107407
	* tree-ssa-dse.cc (dse_classify_store): Perform backedge
	varying index check when collecting PHI uses rather than
	after optimizing processing of the candidate defs.

2022-10-28  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/107447
	* tree-ssa-loop-im.cc (determine_max_movement): Do not
	hoist returns-twice calls.

2022-10-28  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/107435
	* tree-vect-loop.cc (vectorizable_recurr): Convert initial
	value to vector component type.

2022-10-28  Julian Brown  <julian@codesourcery.com>
	    Thomas Schwinge  <thomas@codesourcery.com>

	PR middle-end/90115
	* omp-low.cc (oacc_privatization_candidate_p): Artificial vars are not
	privatization candidates.

2022-10-28  Martin Liska  <mliska@suse.cz>

	PR sanitizer/107298
	* doc/invoke.texi: Document sanitizers can trigger warnings.

2022-10-28  Thomas Schwinge  <thomas@codesourcery.com>

	* doc/makefile.texi (Makefile Targets): Document
	'distclean-stage[N]'.

2022-10-28  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.cc (range_tests_floats): Use HONOR_INFINITIES.

2022-10-27  Eric Botcazou  <ebotcazou@adacore.com>

	* config/aarch64/aarch64.h (DONT_USE_BUILTIN_SETJMP): Delete.

2022-10-27  H.J. Lu  <hjl.tools@gmail.com>

	PR target/107172
	* config/i386/i386.md (UNSPEC_CC_NE): New.
	Replace ne:CCC/ne:CCO with UNSPEC_CC_NE in neg patterns.

2022-10-27  Andrew Pinski  <apinski@marvell.com>

	* tree-ssa-phiopt.cc: Include tree-ssa-dce.h
	(replace_phi_edge_with_variable):
	New argument, dce_ssa_names. Call simple_dce_from_worklist.
	(match_simplify_replacement): If we inserted a sequence,
	mark the lhs of the new sequence to be possible dce.
	Always move the statement and mark the lhs (if it is a name)
	as possible to remove.

2022-10-27  Richard Sandiford  <richard.sandiford@arm.com>

	* config/aarch64/aarch64-protos.h: Replace constexpr with
	CONSTEXPR.
	* config/aarch64/aarch64-sve-builtins-base.cc: Likewise.
	* config/aarch64/aarch64-sve-builtins-functions.h: Likewise.
	* config/aarch64/aarch64-sve-builtins-shapes.cc: Likewise.
	* config/aarch64/aarch64-sve-builtins-sve2.cc: Likewise.
	* config/aarch64/aarch64-sve-builtins.cc: Likewise.
	* config/aarch64/aarch64.cc: Likewise.
	* config/aarch64/driver-aarch64.cc: Likewise

2022-10-27  Aldy Hernandez  <aldyh@redhat.com>

	PR tree-optimization/107394
	* value-range-storage.cc (frange_storage_slot::get_frange): Use
	frange constructor.

2022-10-27  Thomas Schwinge  <thomas@codesourcery.com>

	* optc-save-gen.awk: Clarify 'Init' option property usage for
	streaming optimization.

2022-10-27  Torbjörn SVENSSON  <torbjorn.svensson@foss.st.com>
	    Yvan ROUX  <yvan.roux@foss.st.com>

	* ira.cc: Resize array after reg number increased.

2022-10-27  Jiawei  <jiawei@iscas.ac.cn>
	    Sinan Lin  <sinan@isrc.iscas.ac.cn>

	* config/riscv/constraints.md (TARGET_ZFINX ? GR_REGS): Set GPRS
	use while Zfinx is enable.
	* config/riscv/riscv.cc (riscv_hard_regno_mode_ok): Limit odd
	registers use when Zdinx enable in RV32 cases.
	(riscv_option_override): New target enable MASK_FDIV.
	(riscv_libgcc_floating_mode_supported_p): New error info when
	use incompatible arch&abi.
	(riscv_excess_precision): New target enable FLOAT16.

2022-10-27  Jiawei  <jiawei@iscas.ac.cn>

	* config/riscv/iterators.md (TARGET_ZFINX):New target.
	(TARGET_ZDINX): Ditto.
	(TARGET_ZHINX): Ditto.
	* config/riscv/riscv-builtins.cc (AVAIL): Ditto.
	(riscv_atomic_assign_expand_fenv): Ditto.
	* config/riscv/riscv-c.cc (riscv_cpu_cpp_builtins): Ditto.
	* config/riscv/riscv.md: Ditto.

2022-10-27  Jiawei  <jiawei@iscas.ac.cn>
	    Sinan Lin  <sinan@isrc.iscas.ac.cn>

	* common/config/riscv/riscv-common.cc: New extensions.
	* config/riscv/arch-canonicalize: New imply relations.
	* config/riscv/riscv-opts.h (MASK_ZFINX): New mask.
	(MASK_ZDINX): Ditto.
	(MASK_ZHINX): Ditto.
	(MASK_ZHINXMIN): Ditto.
	(TARGET_ZFINX): New target.
	(TARGET_ZDINX): Ditto.
	(TARGET_ZHINX): Ditto.
	(TARGET_ZHINXMIN): Ditto.
	* config/riscv/riscv.opt: New target variable.

2022-10-26  David Faust  <david.faust@oracle.com>

	* config/bpf/bpf.cc: Support __builtin_preserve_field_info.
	(enum bpf_builtins): Add new builtin.
	(bpf_init_builtins): Likewise.
	(bpf_core_field_info): New function.
	(bpf_expand_builtin): Accomodate new builtin. Refactor adding new
	relocation to...
	(maybe_make_core_relo): ... here. New function.
	(bpf_resolve_overloaded_builtin): Accomodate new builtin.
	(bpf_core_newdecl): Likewise.
	(bpf_core_walk): Likewise.
	(bpf_core_is_maybe_aggregate_access): Improve logic.
	(struct core_walk_data): New.
	* config/bpf/coreout.cc (bpf_core_reloc_add): Allow adding different
	relocation kinds.
	* config/bpf/coreout.h: Analogous change.
	* doc/extend.texi: Document BPF __builtin_preserve_field_info.

2022-10-26  Marek Polacek  <polacek@redhat.com>

	PR c++/106393
	* doc/invoke.texi: Document -Wdangling-reference.

2022-10-26  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/xtensa.md (movdi):
	Copy operands[0...1] to ops[0...3] and then use the latter before
	calling xtensa_split_DI_reg_imm() and emitting insns.

2022-10-26  Alexander Monakov  <amonakov@ispras.ru>

	PR other/107353
	* ipa-visibility.cc (function_and_variable_visibility):
	Conditionally upgrade TLS model instead of asserting.

2022-10-26  Andrew MacLeod  <amacleod@redhat.com>

	* gimple-range-fold.cc (fold_using_range::fold_stmt): Check if
	stmt is non-negative and adjust the range.

2022-10-26  Martin Liska  <mliska@suse.cz>

	* common/config/i386/cpuinfo.h (has_cpu_feature): Add comment.
	(reset_cpu_feature): New.
	(get_zhaoxin_cpu): Use reset_cpu_feature.

2022-10-26  Ju-Zhe Zhong  <juzhe.zhong@rivai.ai>

	* config/riscv/riscv.cc (riscv_expand_epilogue): Fix statement.

2022-10-26  Ju-Zhe Zhong  <juzhe.zhong@rivai.ai>

	PR target/107357
	* config/riscv/riscv-modes.def (VECTOR_BOOL_MODE): Set to minimum size.
	(ADJUST_NUNITS): Adjust according to -march.
	(ADJUST_BYTESIZE): Ditto.
	* config/riscv/riscv-protos.h (riscv_v_ext_enabled_vector_mode_p):
	Remove.
	(riscv_v_ext_vector_mode_p): Change function implementation.
	* config/riscv/riscv-vector-builtins.cc (rvv_switcher::rvv_switcher):
	Change to riscv_v_ext_vector_mode_p.
	(register_builtin_type): Ditto.
	* config/riscv/riscv.cc (riscv_v_ext_vector_mode_p): Change to enabled
	modes.
	(ENTRY): Ditto.
	(riscv_v_ext_enabled_vector_mode_p): Remove.
	(riscv_v_adjust_nunits): New function.
	(riscv_vector_mode_supported_p): Use riscv_v_ext_vector_mode_p instead.
	* config/riscv/riscv.h (riscv_v_adjust_nunits): New function.

2022-10-26  Ju-Zhe Zhong  <juzhe.zhong@rivai.ai>

	* config.gcc (riscv*): Add riscv-v.o to extra_objs.
	* config/riscv/constraints.md (vu): New constraint.
	(vi): Ditto.
	(Wc0): Ditto.
	(Wc1): Ditto.
	* config/riscv/predicates.md (vector_length_operand): New.
	(reg_or_mem_operand): Ditto.
	(vector_move_operand): Ditto.
	(vector_mask_operand): Ditto.
	(vector_merge_operand): Ditto.
	* config/riscv/riscv-protos.h (riscv_regmode_natural_size) New.
	(riscv_vector::const_vec_all_same_in_range_p): Ditto.
	(riscv_vector::legitimize_move): Ditto.
	(tail_policy): Ditto.
	(mask_policy): Ditto.
	* config/riscv/riscv-v.cc: New.
	* config/riscv/riscv-vector-builtins-bases.cc
	(vsetvl::expand): Refactor how LMUL encoding.
	* config/riscv/riscv.cc (riscv_print_operand): Update how LMUL
	print and mask operand print.
	(riscv_regmode_natural_size): New.
	* config/riscv/riscv.h (REGMODE_NATURAL_SIZE): New.
	* config/riscv/riscv.md (mode): Add vector modes.
	* config/riscv/t-riscv (riscv-v.o) New.
	* config/riscv/vector-iterators.md: New.
	* config/riscv/vector.md (vundefined<mode>): New.
	(mov<mode>): New.
	(*mov<mode>): New.
	(@vsetvl<mode>_no_side_effects): New.
	(@pred_mov<mode>): New.

2022-10-26  Monk Chiang  <monk.chiang@sifive.com>

	* common/config/riscv/riscv-common.cc (riscv_ext_version_table):
	Add svinval and svnapot extension.
	(riscv_ext_flag_table): Ditto.
	* config/riscv/riscv-opts.h (MASK_SVINVAL): New.
	(MASK_SVNAPOT): Ditto.
	(TARGET_SVINVAL): Ditto.
	(TARGET_SVNAPOT): Ditto.
	* config/riscv/riscv.opt (riscv_sv_subext): New.

2022-10-26  Ju-Zhe Zhong  <juzhe.zhong@rivai.ai>

	* config/riscv/riscv-modes.def: Adjust table indentation in commnet.

2022-10-26  Martin Liska  <mliska@suse.cz>

	* configure: Regenerate.

2022-10-26  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.cc (frange::set): Use HONOR_*.
	(frange::verify_range): Same.
	* value-range.h (frange_val_min): Same.
	(frange_val_max): Same.

2022-10-26  Jiufu Guo  <guojiufu@linux.ibm.com>

	PR target/106460
	* config/rs6000/rs6000.cc (rs6000_cannot_force_const_mem): Return true
	for HIGH code rtx.

2022-10-26  Kito Cheng  <kito.cheng@sifive.com>

	* common/config/riscv/riscv-common.cc (riscv_ext_version_table):
	Add `h`.
	(riscv_supported_std_ext): Ditto.
	(multi_letter_subset_rank): Remove `h`.
	(riscv_subset_list::parse_std_ext): Handle `h` as single letter
	extension.
	(riscv_subset_list::parse): Ditto.

2022-10-25  Eugene Rozenfeld  <erozen@microsoft.com>

	* auto-profile.cc (get_combined_location): Include discriminator in the
	returned combined location.
	(read_function_instance): Read discriminators from profiles.

2022-10-25  H.J. Lu  <hjl.tools@gmail.com>

	PR target/107304
	* expr.cc (get_inner_reference): Always use TYPE_MODE for vector
	field with vector raw mode.

2022-10-25  Segher Boessenkool  <segher@kernel.crashing.org>

	* config/rs6000/rs6000.md (CCEITHER): Delete.
	(CCANY): New.
	(un): Delete.
	(isel_<un>signed_<GPR:mode>): Rename to...
	(isel_<CCANY:mode>_<GPR:mode>): ... this.  Adjust.
	(*isel_reversed_<un>signed_<GPR:mode>): Rename to...
	(*isel_reversed_<CCANY:mode>_<GPR:mode>): ... this.  Adjust.
	(setbc_<un>signed_<GPR:mode>): Rename to...
	(setbc_<CCANY:mode>_<GPR:mode>C): ... this.  Adjust."
	(*setbcr_<un>signed_<GPR:mode>): Rename to ...
	(*setbcr_<CCANY:mode>_<GPR:mode>): ... this.  Adjust.
	(*setnbc_<un>signed_<GPR:mode>): Rename to ...
	(*setnbc_<CCANY:mode>_<GPR:mode>): ... this.  Adjust.
	(*setnbcr_<un>signed_<GPR:mode>): Rename to ...
	(*setnbcr_<CCANY:mode>_<GPR:mode>): ... this.  Adjust.
	(eq<mode>3 for GPR): Adjust.
	(ne<mode>3 for GPR): Adjust.
	* config/rs6000/rs6000-string.cc (do_isel): Adjust.
	* config/rs6000/rs6000.cc (rs6000_emit_int_cmove): Adjust.

2022-10-25  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/107176
	PR tree-optimization/66375
	PR tree-optimization/42512
	* tree-scalar-evolution.cc (follow_ssa_edge_expr): Revert
	the PR66375 fix, do not not associate PLUS_EXPR to be able
	to use tail-recursion.
	(follow_ssa_edge_binary): Likewise.
	(interpret_loop_phi): Revert PR42512 fix, do not throw
	away analyze_evolution_in_loop result after the fact.
	(follow_ssa_edge_expr): When reaching halting_phi initalize
	the evolution to the symbolic value of the PHI result.
	(add_to_evolution_1): When adding the first evolution verify
	we can handle the expression wrapping the symbolic evolution
	and replace that in full using the initial condition.
	(class scev_dfs): New, contains ...
	(follow_ssa_edge_expr, follow_ssa_edge_binary,
	follow_ssa_edge_in_condition_phi_branch,
	follow_ssa_edge_in_condition_phi,
	follow_ssa_edge_inner_loop_phi,
	add_to_evolution, add_to_evolution_1): ... these with
	loop and halting_phi arguments in class data.
	(scev_dfs::get_ev): New toplevel DFS entry, start with
	a chrec_dont_know evolution.
	(analyze_evolution_in_loop): Use scev_dfs.

2022-10-25  Eric Botcazou  <ebotcazou@adacore.com>

	* profile.cc (branch_prob): Be prepared for ignored functions with
	DECL_SOURCE_LOCATION set to UNKNOWN_LOCATION.

2022-10-25  Richard Biener  <rguenther@suse.de>

	* tree-scalar-evolution.cc (follow_ssa_edge_expr): Move
	STRIP_USELESS_TYPE_CONVERSIONS to where it matters.

2022-10-25  Tejas Joshi  <TejasSanjay.Joshi@amd.com>

	* common/config/i386/i386-common.cc (processor_alias_table): Use
	CPU_ZNVER3 for znver4.
	* config/i386/znver.md: Remove znver4 reservations.

2022-10-25  Jakub Jelinek  <jakub@redhat.com>

	* gimplify.cc (gimple_boolify): Fix comment typos, prduce -> produce
	and There -> These.

2022-10-25  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/107368
	* gimplify.cc (gimplify_call_expr): For complex IFN_ASSUME
	conditions call gimple_boolify on the condition.

2022-10-25  YunQiang Su  <yunqiang.su@cipunited.com>

	* config.gcc: add -with-compact-branches=policy build option.
	* doc/install.texi: Likewise.
	* config/mips/mips.h: Likewise.

2022-10-25  YunQiang Su  <yunqiang.su@cipunited.com>

	* config/mips/mips.cc (mips_option_override): not trigger error
	for compact-branches=always for pre-R6.
	* config/mips/mips.h (TARGET_RTP_PIC): not trigger error for
	compact-branches=always for pre-R6.
	(TARGET_CB_NEVER): Likewise.
	(TARGET_CB_ALWAYS): Likewise.
	(struct mips_cpu_info): define macros for compact branch policy.
	* doc/invoke.texi: Document "always" with pre-R6.

2022-10-25  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/107369
	* gimplify.cc (gimplify_call_expr): If seen_error, handle complex
	IFN_ASSUME the same as for -O0.

2022-10-25  YunQiang Su  <yunqiang.su@cipunited.com>

	* configure.ac: AC_DEFINE(ENABLE_MULTIARCH, 1)
	* configure: Regenerated.
	* config.in: Regenerated.
	* config/mips/mips.h: don't define STANDARD_STARTFILE_PREFIX_1
	if ENABLE_MULTIARCH is defined.
	* config/mips/t-linux64: define correct multiarch path when
	multiarch is enabled.

2022-10-25  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/100756
	* tree-ssa-loop-niter.cc (expand_simple_operations): Also
	expand multiplications by invariants.

2022-10-25  Kewen Lin  <linkw@linux.ibm.com>

	PR tree-optimization/107338
	* tree-vect-patterns.cc (vect_recog_bitfield_ref_pattern): Move
	shfit_n calculation before the adjustments for widening loads.

2022-10-25  Martin Liska  <mliska@suse.cz>

	* common/config/riscv/riscv-common.cc
	(riscv_get_valid_option_values): Get out of ifdef.

2022-10-25  Martin Liska  <mliska@suse.cz>

	PR target/107364
	* common/config/i386/i386-cpuinfo.h (enum processor_vendor):
	Fix pedantic warning.

2022-10-24  Martin Liska  <mliska@suse.cz>

	PR analyzer/107366
	* diagnostic-format-sarif.cc
	(sarif_builder::maybe_make_physical_location_object): Gracefully
	reject locations with NULL filename.

2022-10-24  David Malcolm  <dmalcolm@redhat.com>

	PR analyzer/106300
	* doc/invoke.texi (Static Analyzer Options): Add "pipe" and
	"pipe2" to the list of functions the analyzer has hardcoded
	knowledge of.

2022-10-24  Jason Merrill  <jason@redhat.com>

	* tree.h (build_string_literal): New one-argument overloads that
	take tree (identifier) and const char *.
	* builtins.cc (fold_builtin_FILE)
	(fold_builtin_FUNCTION)
	* gimplify.cc (gimple_add_init_for_auto_var)
	* vtable-verify.cc (verify_bb_vtables): Simplify calls.

2022-10-24  Martin Liska  <mliska@suse.cz>

	PR target/107364
	* common/config/i386/i386-cpuinfo.h (enum processor_vendor):
	Reorder enum values as BUILTIN_VENDOR_MAX should not point
	in the middle of the valid enum values.

2022-10-24  Marek Polacek  <polacek@redhat.com>

	PR c++/107276
	* tree.cc (maybe_wrap_with_location): Don't create a location wrapper
	when the type is erroneous.

2022-10-24  Wilco Dijkstra  <wdijkstr@arm.com>

	PR target/106583
	* config/aarch64/aarch64.cc (aarch64_internal_mov_immediate)
	Add support for a bitmask immediate with 2 MOVKs.
	(aarch64_check_bitmask): New function after refactorization.
	(aarch64_bitmask_imm): Simplify replication of small modes.
	Split function into 64-bit only version for efficiency.
	(aarch64_move_imm): Move near other immediate functions.
	(aarch64_uimm12_shift): Likewise.
	(aarch64_clamp_to_uimm12_shift): Likewise.
	(aarch64_movk_shift): Likewise.
	(aarch64_replicate_bitmask_imm): Likewise.
	(aarch64_and_split_imm1): Likewise.
	(aarch64_and_split_imm2): Likewise.
	(aarch64_and_bitmask_imm): Likewise.
	(aarch64_movw_imm): Likewise.

2022-10-24  Aldy Hernandez  <aldyh@redhat.com>

	PR tree-optimization/107355
	* range-op-float.cc (foperator_abs::op1_range): Handle NAN.

2022-10-24  Tobias Burnus  <tobias@codesourcery.com>

	PR middle-end/107236
	* omp-expand.cc (expand_omp_target): Set calls_declare_variant_alt
	in DECL_CONTEXT and not to cfun->decl.
	* cgraphclones.cc (cgraph_node::create_clone): Copy also the
	node's calls_declare_variant_alt value.

2022-10-24  Kito Cheng  <kito.cheng@sifive.com>

	* common/config/riscv/riscv-common.cc (riscv_tunes): New.
	(riscv_get_valid_option_values): New.
	(TARGET_GET_VALID_OPTION_VALUES): New.
	* config/riscv/riscv-cores.def (RISCV_TUNE): New, define options
	for tune here.
	(RISCV_CORE): Fix comment.
	* config/riscv/riscv.cc (riscv_tune_info_table): Move definition to
	riscv-cores.def.

2022-10-24  Aldy Hernandez  <aldyh@redhat.com>

	PR tree-optimization/107365
	* value-range.cc (frange::verify_range): Predicate NAN check in
	VARYING range on HONOR_NANS instead of flag_finite_math_only.
	(range_tests_floats): Same.
	(range_tests_floats_various): New.
	(range_tests): Call range_tests_floats_various.

2022-10-24  Torbjörn SVENSSON  <torbjorn.svensson@foss.st.com>
	    Yvan ROUX  <yvan.roux@foss.st.com>

	* lto-wrapper.cc: Quote paths in makefile.

2022-10-24  Ju-Zhe Zhong  <juzhe.zhong@rivai.ai>

	* config/riscv/riscv.cc (riscv_legitimize_move): Support (set (mem) (const_poly_int)).

2022-10-24  Ju-Zhe Zhong  <juzhe.zhong@rivai.ai>

	* config/riscv/riscv-vector-builtins-bases.cc: Replace CONSTEXPR
	with constexpr throughout.
	* config/riscv/riscv-vector-builtins-shapes.cc (SHAPE): Likewise.
	* config/riscv/riscv-vector-builtins.cc
	(struct registered_function_hasher): Likewise.
	* config/riscv/riscv-vector-builtins.h (struct rvv_arg_type_info):
	Likewise.

2022-10-24  Ju-Zhe Zhong  <juzhe.zhong@rivai.ai>

	* config/riscv/riscv-vector-switch.def (ENTRY): Remove unused TI/TF vector modes.

2022-10-24  Ju-Zhe Zhong  <juzhe.zhong@rivai.ai>

	* config/riscv/riscv.h (REG_CLASS_CONTENTS): Fix ALL_REGS.

2022-10-22  Michael Eager  <eager@eagercon.com>

	* config/microblaze/microblaze.cc
	(microblaze_legitimize_address): Initialize 'reg' to NULL, check for NULL.
	(microblaze_address_insns): Replace abort() with gcc_unreachable().
	(print_operand_address): Same.
	(microblaze_expand_move): Initialize 'p1' to NULL, check for NULL.
	(get_branch_target): Replace abort() with gcc_unreachable().

2022-10-22  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.cc (range_tests_floats): Predicate [-Inf, +Inf] test
	with !flag_finite_math_only.

2022-10-22  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/xtensa.cc (xtensa_conditional_register_usage):
	Remove register A0 from FIXED_REGS if the CALL0 ABI.
	(xtensa_expand_epilogue): Change to emit '(use (reg:SI A0_REG))'
	unconditionally after restoring callee-saved registers for
	sibling-call functions, in order to prevent misleading that
	register A0 is free to use.

2022-10-21  Jakub Jelinek  <jakub@redhat.com>

	PR target/107322
	* config/i386/i386-expand.cc (ix86_prepare_fp_compare_args): For
	BFmode comparisons promote arguments to SFmode and recurse.
	(ix86_expand_int_movcc, ix86_expand_fp_movcc): Return false early
	if comparison operands are BFmode and operands[1] is not
	ix86_fp_comparison_operator.

2022-10-21  Tejas Joshi  <TejasSanjay.Joshi@amd.com>

	* common/config/i386/cpuinfo.h (get_amd_cpu): Recognize znver4.
	* common/config/i386/i386-common.cc (processor_names): Add znver4.
	(processor_alias_table): Add znver4 and modularize old znvers.
	* common/config/i386/i386-cpuinfo.h (processor_subtypes):
	AMDFAM19H_ZNVER4.
	* config.gcc (x86_64-*-* |...): Likewise.
	* config/i386/driver-i386.cc (host_detect_local_cpu): Let
	-march=native recognize znver4 cpus.
	* config/i386/i386-c.cc (ix86_target_macros_internal): Add znver4.
	* config/i386/i386-options.cc (m_ZNVER4): New definition.
	(m_ZNVER): Include m_ZNVER4.
	(processor_cost_table): Add znver4.
	* config/i386/i386.cc (ix86_reassociation_width): Likewise.
	* config/i386/i386.h (processor_type): Add PROCESSOR_ZNVER4.
	(PTA_ZNVER1): New definition.
	(PTA_ZNVER2): Likewise.
	(PTA_ZNVER3): Likewise.
	(PTA_ZNVER4): Likewise.
	* config/i386/i386.md (define_attr "cpu"): Add znver4 and rename
	md file.
	* config/i386/x86-tune-costs.h (znver4_cost): New definition.
	* config/i386/x86-tune-sched.cc (ix86_issue_rate): Add znver4.
	(ix86_adjust_cost): Likewise.
	* config/i386/znver1.md: Rename to znver.md.
	* config/i386/znver.md: Add new reservations for znver4.
	* doc/extend.texi: Add details about znver4.
	* doc/invoke.texi: Likewise.

2022-10-21  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/107323
	* tree-loop-distribution.cc (pg_unmark_merged_alias_ddrs):
	New function.
	(loop_distribution::break_alias_scc_partitions): Revert
	postorder save/restore from the PR94125 fix.  Instead
	make sure to not ignore edges from SCCs we are going to
	merge.

2022-10-21  Monk Chiang  <monk.chiang@sifive.com>

	* config/riscv/riscv.md: Add atomic type attribute.
	* config/riscv/sync.md: Add atomic type for atomic instructions.

2022-10-21  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/54346
	* match.pd ((vec_perm (vec_perm@0 @1 @2 VECTOR_CST) @0 VECTOR_CST)):
	Optimize nested VEC_PERM_EXPRs even if target can't handle the
	new one provided we don't increase number of VEC_PERM_EXPRs the
	target can't handle.

2022-10-21  Ju-Zhe Zhong  <juzhe.zhong@rivai.ai>

	* config.gcc: Add riscv-vector-builtins-bases.o and riscv-vector-builtins-shapes.o
	* config/riscv/riscv-vector-builtins.cc (DEF_RVV_I_OPS): New macro.
	(DEF_RVV_FUNCTION): Ditto.
	(handle_pragma_vector): Add intrinsic framework.
	* config/riscv/riscv.cc (riscv_print_operand): Add operand print for vsetvl/vsetvlmax.
	* config/riscv/riscv.md: include vector.md.
	* config/riscv/t-riscv: Add riscv-vector-builtins-bases.o and riscv-vector-builtins-shapes.o
	* config/riscv/riscv-vector-builtins-bases.cc: New file.
	* config/riscv/riscv-vector-builtins-bases.h: New file.
	* config/riscv/riscv-vector-builtins-functions.def: New file.
	* config/riscv/riscv-vector-builtins-shapes.cc: New file.
	* config/riscv/riscv-vector-builtins-shapes.h: New file.
	* config/riscv/riscv-vector-builtins-types.def: New file.
	* config/riscv/vector.md: New file.

2022-10-21  Ju-Zhe Zhong  <juzhe.zhong@rivai.ai>

	* config.gcc: Add gt files since function_instance is GTY ((user)).
	* config/riscv/riscv-builtins.cc (riscv_init_builtins): Add RVV intrinsic framework.
	(riscv_builtin_decl): Ditto.
	(riscv_expand_builtin): Ditto.
	* config/riscv/riscv-protos.h (builtin_decl): New function.
	(expand_builtin): Ditto.
	(enum riscv_builtin_class): New enum to classify RVV intrinsic and RISC-V general built-in.
	* config/riscv/riscv-vector-builtins.cc (class GTY): New declaration.
	(struct registered_function_hasher): New struct.
	(DEF_RVV_OP_TYPE): New macro.
	(DEF_RVV_TYPE): Ditto.
	(DEF_RVV_PRED_TYPE): Ditto.
	(GTY): New declaration.
	(add_attribute): New function.
	(check_required_extensions): Ditto.
	(rvv_arg_type_info::get_tree_type): Ditto.
	(function_instance::function_instance): Ditto.
	(function_instance::operator==): Ditto.
	(function_instance::any_type_float_p): Ditto.
	(function_instance::get_return_type): Ditto.
	(function_instance::get_arg_type): Ditto.
	(function_instance::hash): Ditto.
	(function_instance::call_properties): Ditto.
	(function_instance::reads_global_state_p): Ditto.
	(function_instance::modifies_global_state_p): Ditto.
	(function_instance::could_trap_p): Ditto.
	(function_builder::function_builder): Ditto.
	(function_builder::~function_builder): Ditto.
	(function_builder::allocate_argument_types): Ditto.
	(function_builder::register_function_group): Ditto.
	(function_builder::append_name): Ditto.
	(function_builder::finish_name): Ditto.
	(function_builder::get_attributes): Ditto.
	(function_builder::add_function): Ditto.
	(function_builder::add_unique_function): Ditto.
	(function_call_info::function_call_info): Ditto.
	(function_expander::function_expander): Ditto.
	(function_expander::add_input_operand): Ditto.
	(function_expander::generate_insn): Ditto.
	(registered_function_hasher::hash): Ditto.
	(registered_function_hasher::equal): Ditto.
	(builtin_decl): Ditto.
	(expand_builtin): Ditto.
	(gt_ggc_mx): Define for using GCC garbage collect.
	(gt_pch_nx): Define for using GCC garbage collect.
	* config/riscv/riscv-vector-builtins.def (DEF_RVV_OP_TYPE): New macro.
	(DEF_RVV_PRED_TYPE): Ditto.
	(vbool64_t): Add suffix.
	(vbool32_t): Ditto.
	(vbool16_t): Ditto.
	(vbool8_t): Ditto.
	(vbool4_t): Ditto.
	(vbool2_t): Ditto.
	(vbool1_t): Ditto.
	(vint8mf8_t): Ditto.
	(vuint8mf8_t): Ditto.
	(vint8mf4_t): Ditto.
	(vuint8mf4_t): Ditto.
	(vint8mf2_t): Ditto.
	(vuint8mf2_t): Ditto.
	(vint8m1_t): Ditto.
	(vuint8m1_t): Ditto.
	(vint8m2_t): Ditto.
	(vuint8m2_t): Ditto.
	(vint8m4_t): Ditto.
	(vuint8m4_t): Ditto.
	(vint8m8_t): Ditto.
	(vuint8m8_t): Ditto.
	(vint16mf4_t): Ditto.
	(vuint16mf4_t): Ditto.
	(vint16mf2_t): Ditto.
	(vuint16mf2_t): Ditto.
	(vint16m1_t): Ditto.
	(vuint16m1_t): Ditto.
	(vint16m2_t): Ditto.
	(vuint16m2_t): Ditto.
	(vint16m4_t): Ditto.
	(vuint16m4_t): Ditto.
	(vint16m8_t): Ditto.
	(vuint16m8_t): Ditto.
	(vint32mf2_t): Ditto.
	(vuint32mf2_t): Ditto.
	(vint32m1_t): Ditto.
	(vuint32m1_t): Ditto.
	(vint32m2_t): Ditto.
	(vuint32m2_t): Ditto.
	(vint32m4_t): Ditto.
	(vuint32m4_t): Ditto.
	(vint32m8_t): Ditto.
	(vuint32m8_t): Ditto.
	(vint64m1_t): Ditto.
	(vuint64m1_t): Ditto.
	(vint64m2_t): Ditto.
	(vuint64m2_t): Ditto.
	(vint64m4_t): Ditto.
	(vuint64m4_t): Ditto.
	(vint64m8_t): Ditto.
	(vuint64m8_t): Ditto.
	(vfloat32mf2_t): Ditto.
	(vfloat32m1_t): Ditto.
	(vfloat32m2_t): Ditto.
	(vfloat32m4_t): Ditto.
	(vfloat32m8_t): Ditto.
	(vfloat64m1_t): Ditto.
	(vfloat64m2_t): Ditto.
	(vfloat64m4_t): Ditto.
	(vfloat64m8_t): Ditto.
	(vv): Ditto.
	(vx): Ditto.
	(v): Ditto.
	(wv): Ditto.
	(wx): Ditto.
	(x_x_v): Ditto.
	(vf2): Ditto.
	(vf4): Ditto.
	(vf8): Ditto.
	(vvm): Ditto.
	(vxm): Ditto.
	(x_x_w): Ditto.
	(v_v): Ditto.
	(v_x): Ditto.
	(vs): Ditto.
	(mm): Ditto.
	(m): Ditto.
	(vf): Ditto.
	(vm): Ditto.
	(wf): Ditto.
	(vfm): Ditto.
	(v_f): Ditto.
	(ta): Ditto.
	(tu): Ditto.
	(ma): Ditto.
	(mu): Ditto.
	(tama): Ditto.
	(tamu): Ditto.
	(tuma): Ditto.
	(tumu): Ditto.
	(tam): Ditto.
	(tum): Ditto.
	* config/riscv/riscv-vector-builtins.h (GCC_RISCV_VECTOR_BUILTINS_H): New macro.
	(RVV_REQUIRE_RV64BIT): Ditto.
	(RVV_REQUIRE_ZVE64): Ditto.
	(RVV_REQUIRE_ELEN_FP_32): Ditto.
	(RVV_REQUIRE_ELEN_FP_64): Ditto.
	(enum operand_type_index): New enum.
	(DEF_RVV_OP_TYPE): New macro.
	(enum predication_type_index): New enum.
	(DEF_RVV_PRED_TYPE): New macro.
	(enum rvv_base_type): New enum.
	(struct rvv_builtin_suffixes): New struct.
	(struct rvv_arg_type_info): Ditto.
	(struct rvv_type_info): Ditto.
	(struct rvv_op_info): Ditto.
	(class registered_function): New class.
	(class function_base): Ditto.
	(class function_shape): Ditto.
	(struct function_group_info): New struct.
	(class GTY): New class.
	(class function_builder): Ditto.
	(class function_call_info): Ditto.
	(function_call_info::function_returns_void_p): New function.
	(class function_expander): New class.
	(function_instance::operator!=): New function.
	(function_expander::expand): Ditto.
	(function_expander::add_input_operand): Ditto.
	(function_base::call_properties): Ditto.

2022-10-21  Haochen Jiang  <haochen.jiang@intel.com>

	* config/i386/sse.md (ssedvecmode): Rename from VI1SI.
	(ssedvecmodelower): Rename from vi1si.
	(sdot_prod<mode>): New define_expand.
	(udot_prod<mode>): Ditto.

2022-10-21  Kong Lingling  <lingling.kong@intel.com>
	    Hongyu Wang  <hongyu.wang@intel.com>
	    Haochen Jiang  <haochen.jiang@intel.com>

	* common/config/i386/cpuinfo.h (get_available_features): Detect
	avxvnniint8.
	* common/config/i386/i386-common.cc
	(OPTION_MASK_ISA2_AVXVNNIINT8_SET): New.
	(OPTION_MASK_ISA2_AVXVNNIINT8_UNSET): Ditto.
	(ix86_handle_option): Handle -mavxvnniint8.
	* common/config/i386/i386-cpuinfo.h (enum processor_features):
	Add FEATURE_AVXVNNIINT8.
	* common/config/i386/i386-isas.h: Add ISA_NAME_TABLE_ENTRY for
	avxvnniint8.
	* config.gcc: Add avxvnniint8intrin.h.
	* config/i386/avxvnniint8intrin.h: New file.
	* config/i386/cpuid.h (bit_AVXVNNIINT8): New.
	* config/i386/i386-builtin.def: Add new builtins.
	* config/i386/i386-c.cc (ix86_target_macros_internal): Define
	__AVXVNNIINT8__.
	* config/i386/i386-options.cc (isa2_opts): Add -mavxvnniint8.
	(ix86_valid_target_attribute_inner_p): Handle avxvnniint8.
	* config/i386/i386-isa.def: Add DEF_PTA(AVXVNNIINT8) New..
	* config/i386/i386.opt: Add option -mavxvnniint8.
	* config/i386/immintrin.h: Include avxvnniint8intrin.h.
	* config/i386/sse.md (UNSPEC_VPMADDUBSWACCD
	UNSPEC_VPMADDUBSWACCSSD,UNSPEC_VPMADDWDACCD,
	UNSPEC_VPMADDWDACCSSD): Rename according to new style.
	(vpdp<vpdotprodtype>_<mode>): New define_insn.
	* doc/extend.texi: Document avxvnniint8.
	* doc/invoke.texi: Document -mavxvnniint8.
	* doc/sourcebuild.texi: Document target avxvnniint8.

2022-10-21  Hongyu Wang  <hongyu.wang@intel.com>

	* common/config/i386/i386-common.cc
	(OPTION_MASK_ISA_AVXIFMA_SET, OPTION_MASK_ISA2_AVXIFMA_UNSET,
	OPTION_MASK_ISA2_AVX2_UNSET): New macro.
	(ix86_handle_option): Handle -mavxifma.
	* common/config/i386/i386-cpuinfo.h (processor_types): Add
	FEATURE_AVXIFMA.
	* common/config/i386/i386-isas.h: Add ISA_NAME_TABLE_ENTRY for
	avxifma.
	* common/config/i386/cpuinfo.h (get_available_features):
	Detect avxifma.
	* config.gcc: Add avxifmaintrin.h
	* config/i386/avx512ifmavlintrin.h: (_mm_madd52lo_epu64): Change
	to macro.
	(_mm_madd52hi_epu64): Likewise.
	(_mm256_madd52lo_epu64): Likewise.
	(_mm256_madd52hi_epu64): Likewise.
	* config/i386/avxifmaintrin.h: New header.
	* config/i386/cpuid.h (bit_AVXIFMA): New.
	* config/i386/i386-builtin.def: Add new builtins, and correct
	pattern names for AVX512IFMA.
	* config/i386/i386-builtins.cc (def_builtin): Handle AVX-IFMA
	builtins like AVX-VNNI.
	* config/i386/i386-c.cc (ix86_target_macros_internal): Define
	__AVXIFMA__.
	* config/i386/i386-expand.cc (ix86_check_builtin_isa_match):
	Relax ISA masks for AVXIFMA.
	* config/i386/i386-isa.def: Add AVXIFMA.
	* config/i386/i386-options.cc (isa2_opts): Add -mavxifma.
	(ix86_valid_target_attribute_inner_p): Handle avxifma.
	* config/i386/i386.md (isa): Add attr avxifma and avxifmavl.
	* config/i386/i386.opt: Add option -mavxifma.
	* config/i386/immintrin.h: Inculde avxifmaintrin.h.
	* config/i386/sse.md (avx_vpmadd52<vpmadd52type>_<mode>):
	Remove.
	(vpamdd52<vpmadd52type><mode><sd_maskz_name>): Remove.
	(vpamdd52huq<mode>_maskz): Rename to ...
	(vpmadd52huq<mode>_maskz): ... this.
	(vpamdd52luq<mode>_maskz): Rename to ...
	(vpmadd52luq<mode>_maskz): ... this.
	(vpmadd52<vpmadd52type><mode>): New define_insn.
	(vpmadd52<vpmadd52type>v8di): Likewise.
	(vpmadd52<vpmadd52type><mode>_maskz_1): Likewise.
	(vpamdd52<vpmadd52type><mode>_mask): Rename to ...
	(vpmadd52<vpmadd52type><mode>_mask): ... this.
	* doc/invoke.texi: Document -mavxifma.
	* doc/extend.texi: Document avxifma.
	* doc/sourcebuild.texi: Document target avxifma.

2022-10-20  Aldy Hernandez  <aldyh@redhat.com>

	PR c++/106654
	* value-query.cc (get_range_global): Handle non integer ranges for
	default def SSA names.

2022-10-20  Aldy Hernandez  <aldyh@redhat.com>

	* range-op-float.cc (foperator_unordered_lt::op1_range): New.
	(foperator_unordered_lt::op2_range): New.

2022-10-20  Artem Klimov  <jakmobius@gmail.com>
	    Alexander Monakov   <amonakov@gcc.gnu.org>

	PR middle-end/99619
	* ipa-visibility.cc (function_and_variable_visibility): Promote
	TLS access model afer visibility optimizations.
	* varasm.cc (have_optimized_refs): New helper.
	(optimize_dyn_tls_for_decl_p): New helper. Use it ...
	(decl_default_tls_model): ... here in place of 'optimize' check.

2022-10-20  Aldy Hernandez  <aldyh@redhat.com>

	* range-op-float.cc (foperator_unordered_le::op1_range): Adjust
	false side with a NAN operand.
	(foperator_unordered_le::op2_range): Same.
	(foperator_unordered_gt::op1_range): Same.
	(foperator_unordered_gt::op2_range): Same.
	(foperator_unordered_ge::op1_range): Same.
	(foperator_unordered_ge::op2_range): Same.
	(foperator_unordered_equal::op1_range): Same.

2022-10-20  Andre Vieira  <andre.simoesdiasvieira@arm.com>

	PR tree-optimization/107326
	* tree-vect-patterns.cc (vect_recog_bitfield_ref_pattern): Change
	vectype when widening container.

2022-10-20  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.h (frange::set_varying): Do not set NAN flags for
	!HONOR_NANS.
	* value-range.cc (frange::normalize_kind): Adjust for no NAN when
	!HONOR_NANS.
	(frange::verify_range): Same.
	* range-op-float.cc (maybe_isnan): Remove flag_finite_math_only check.

2022-10-20  Aldy Hernandez  <aldyh@redhat.com>

	* range-op-float.cc (finite_operand_p): Remove.
	(finite_operands_p): Rename to...
	(maybe_isnan): ...this.
	(frelop_early_resolve): Use maybe_isnan instead of finite_operands_p.
	(foperator_equal::fold_range): Same.
	(foperator_equal::op1_range): Same.
	(foperator_not_equal::fold_range): Same.
	(foperator_lt::fold_range): Same.
	(foperator_le::fold_range): Same.
	(foperator_gt::fold_range): Same.
	(foperator_ge::fold_range): Same.

2022-10-20  Jakub Jelinek  <jakub@redhat.com>

	* passes.cc (pass_manager::register_pass): Fix a comment
	typo - copmilation -> compilation.

2022-10-20  Richard Biener  <rguenther@suse.de>

	* tree-vect-loop.cc (vect_phi_first_order_recurrence_p):
	Disallow latch PHI defs.
	(vectorizable_recurr): Revert previous change.

2022-10-20  Julian Brown  <julian@codesourcery.com>

	PR target/105421
	* config/gcn/gcn.cc (gcn_detect_incoming_pointer_arg): Any pointer
	argument forces FLAT addressing mode, not just
	pointer-to-non-aggregate.

2022-10-20  Thomas Schwinge  <thomas@codesourcery.com>

	* configure.ac (AC_CONFIG_MACRO_DIRS): Instantiate.
	* configure: Regenerate.

2022-10-20  Richard Sandiford  <richard.sandiford@arm.com>

	* config/aarch64/aarch64-sve-builtins.h
	(gimple_folder::fold_to_cstu): New member function.
	* config/aarch64/aarch64-sve-builtins.cc
	(gimple_folder::fold_to_cstu): Define.
	* config/aarch64/aarch64-sve-builtins-base.cc
	(svcnt_bhwd_impl::fold): Use it.

2022-10-20  Richard Sandiford  <richard.sandiford@arm.com>

	* config/aarch64/aarch64-sve-builtins-functions.h (quiet)
	(rtx_code_function, rtx_code_function_rotated, unspec_based_function)
	(unspec_based_function_rotated, unspec_based_function_exact_insn)
	(unspec_based_fused_function, unspec_based_fused_lane_function):
	Replace constructors with using directives.
	* config/aarch64/aarch64-sve-builtins-base.cc (svcnt_bhwd_pat_impl)
	(svcreate_impl, svdotprod_lane_impl, svget_impl, svld1_extend_impl)
	(svld1_gather_extend_impl, svld234_impl, svldff1_gather_extend)
	(svset_impl, svst1_scatter_truncate_impl, svst1_truncate_impl)
	(svst234_impl, svundef_impl): Likewise.
	* config/aarch64/aarch64-sve-builtins-sve2.cc
	(svldnt1_gather_extend_impl, svmovl_lb_impl): Likewise.
	(svstnt1_scatter_truncate_impl): Likewise.

2022-10-20  Richard Sandiford  <richard.sandiford@arm.com>

	* config/aarch64/aarch64-sve-builtins-base.cc: Replace CONSTEXPR
	with constexpr throughout.
	* config/aarch64/aarch64-sve-builtins-functions.h: Likewise.
	* config/aarch64/aarch64-sve-builtins-shapes.cc: Likewise.
	* config/aarch64/aarch64-sve-builtins-sve2.cc: Likewise.
	* config/aarch64/aarch64-sve-builtins.cc: Likewise.

2022-10-20  Richard Sandiford  <richard.sandiford@arm.com>

	* config/aarch64/aarch64-sve.md (*aarch64_brk<brk_op>_cc): Remove
	merging alternative.
	(*aarch64_brk<brk_op>_ptest): Likewise.

2022-10-20  Richard Sandiford  <richard.sandiford@arm.com>

	* config/aarch64/iterators.md (SVE_BRKP): New iterator.
	* config/aarch64/aarch64-sve.md (*aarch64_brkn_cc): New pattern.
	(*aarch64_brkn_ptest): Likewise.
	(*aarch64_brk<brk_op>_cc): Restrict to SVE_BRKP.
	(*aarch64_brk<brk_op>_ptest): Likewise.

2022-10-20  Richard Biener  <rguenther@suse.de>

	PR c/107305
	PR c/107306
	* tree-cfg.h (verify_gimple_in_seq): Add parameter to
	indicate whether to emit an ICE.  Add return value.
	(verify_gimple_in_cfg): Likewise.
	* tree-cfg.cc (verify_gimple_in_seq): Likewise.
	(verify_gimple_in_cfg): Likewise.

2022-10-20  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/107240
	* tree-vect-patterns.cc (vect_recog_bit_insert_pattern): Attempt to
	simplify shifted value first.

2022-10-20  Andrew MacLeod  <amacleod@redhat.com>

	* gimple-range-gori.h (compute_operand_range): Make public.
	* gimple-range-infer.cc (gimple_infer_range::check_assume_func): New.
	(gimple_infer_range::gimple_infer_range): Check for assume calls.
	* gimple-range-infer.h (check_assume_func): Add prototype.
	* gimple-range.cc (assume_query::assume_range_p): New.
	(assume_query::range_of_expr): New.
	(assume_query::assume_query): New.
	(assume_query::calculate_op): New.
	(assume_query::calculate_phi): New.
	(assume_query::check_taken_edge): New.
	(assume_query::calculate_stmt): New.
	(assume_query::dump): New.
	* gimple-range.h (class assume_query): New.
	* tree-vrp.cc (pass_assumptions::execute): Add processing.

2022-10-19  Aldy Hernandez  <aldyh@redhat.com>

	* range-op-float.cc (build_le): Document result.
	(build_lt): Same.
	(build_ge): Same.
	(foperator_ge::op2_range): Check result of build_*.
	(foperator_unordered_le::op1_range): Same.
	(foperator_unordered_le::op2_range): Same.
	(foperator_unordered_gt::op1_range): Same.
	(foperator_unordered_gt::op2_range): Same.
	(foperator_unordered_ge::op1_range): Same.
	(foperator_unordered_ge::op2_range): Same.

2022-10-19  Marek Polacek  <polacek@redhat.com>

	PR c++/85043
	* doc/invoke.texi: Update documentation of -Wuseless-cast.

2022-10-19  Andrew MacLeod  <amacleod@redhat.com>

	* gimple-range-cache.cc (ranger_cache::range_from_dom): Use
	Value_Range not int_range_max.

2022-10-19  Aldy Hernandez  <aldyh@redhat.com>

	PR tree-optimization/107312
	* range.h (range_true_and_false): Special case 1-bit signed types.
	* value-range.cc (range_tests_misc): New test.

2022-10-19  LIU Hao  <lh_mouse@126.com>

	* config/i386/mingw-mcfgthread.h: New file
	* config/i386/mingw32.h: Add builtin macro and default libraries
	for mcfgthread when thread model is `mcf`
	* config.gcc: Include 'i386/mingw-mcfgthread.h' when thread model
	is `mcf`
	* configure.ac: Recognize `mcf` as a valid thread model
	* config.in: Regenerate
	* configure: Regenerate

2022-10-19  Lewis Hyatt  <lhyatt@gmail.com>

	* gengtype.cc (output_escaped_param): Add missing const.
	(get_string_option): Add missing check for option type.
	(walk_type): Support new "string_length" GTY option.
	(write_types_process_field): Likewise.
	* ggc-common.cc (gt_pch_note_object): Add optional length argument.
	* ggc.h (gt_pch_note_object): Adjust prototype for new argument.
	(gt_pch_n_S2): Declare...
	* stringpool.cc (gt_pch_n_S2): ...new function.
	* doc/gty.texi: Document new GTY((string_length)) option.

2022-10-19  Martin Liska  <mliska@suse.cz>

	* doc/extend.texi: Remove useless @tie{} directives.

2022-10-19  Martin Jambor  <mjambor@suse.cz>

	PR tree-optimization/107206
	* tree-sra.cc (struct access): New field grp_result_of_prop_from_lhs.
	(analyze_access_subtree): Do not create replacements for accesses with
	this flag when not toally scalarizing.
	(propagate_subaccesses_from_lhs): Set the new flag.

2022-10-19  Stefan Schulze Frielinghaus  <stefansf@linux.ibm.com>

	PR target/106355
	* config/s390/s390.cc (s390_call_saved_register_used): For a
	parameter with BLKmode fix determining number of consecutive
	registers.

2022-10-19  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/xtensa-protos.h
	(xtensa_split1_finished_p, xtensa_split_DI_reg_imm): New prototypes.
	* config/xtensa/xtensa.cc
	(xtensa_split1_finished_p, xtensa_split_DI_reg_imm, xtensa_lra_p):
	New functions.
	(TARGET_LRA_P): Replace the dummy hook with xtensa_lra_p.
	(xt_true_regnum): Rework.
	* config/xtensa/xtensa.h (CALL_REALLY_USED_REGISTERS):
	Switch from CALL_USED_REGISTERS, and revise the comment.
	* config/xtensa/constraints.md (Y):
	Use !xtensa_split1_finished_p() instead of can_create_pseudo_p().
	* config/xtensa/predicates.md (move_operand): Ditto.
	* config/xtensa/xtensa.md: Add two new split patterns:
	- splits DImode immediate load into two SImode ones
	- puts out-of-constraint SImode constants into the constant pool
	* config/xtensa/xtensa.opt (-mlra): New target-specific option
	for testing purpose.

2022-10-19  Robin Dapp  <rdapp@linux.ibm.com>

	* config/s390/s390.md: Move reload_completed and check operands for REG_P.

2022-10-19  Jakub Jelinek  <jakub@redhat.com>

	PR middle-end/107262
	* expr.cc (convert_mode_scalar): For BFmode -> SFmode conversions
	of constants, use simplify_unary_operation if fromi has VOIDmode
	instead of recursive convert_mode_scalar.

2022-10-19  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/106990
	* match.pd ((~X - ~Y) -> Y - X, -x & 1 -> x & 1): Guard with
	!TYPE_OVERFLOW_SANITIZED (type).

2022-10-19  Jakub Jelinek  <jakub@redhat.com>

	* config/i386/i386-builtins.cc (ix86_bf16_ptr_type_node): Remove.
	(ix86_bf16_type_node): New variable.
	(ix86_register_bf16_builtin_type): If bfloat16_type_node is NULL
	from generic code, set only ix86_bf16_type_node to a new REAL_TYPE
	rather than bfloat16_type_node, otherwise set ix86_bf16_type_node
	to bfloat16_type_node.  Register __bf16 on ix86_bf16_type_node
	rather than bfloat16_type_node.  Don't initialize unused
	ix86_bf16_ptr_type_node.
	* config/i386/i386-builtin-types.def (BFLOAT16): Use
	ix86_bf16_type_node rather than bfloat16_type_node.

2022-10-19  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106781
	* cgraph.cc (cgraph_edge::redirect_call_stmt_to_callee): Copy
	LHS removal from fixup_noreturn_call.

2022-10-19  liuhongt  <hongtao.liu@intel.com>

	PR target/107271
	* config/i386/i386-expand.cc (ix86_vec_perm_index_canon): New.
	(expand_vec_perm_shufps_shufps): Call
	ix86_vec_perm_index_canon

2022-10-18  Martin Jambor  <mjambor@suse.cz>

	* ipa-prop.h (ipa_agg_value): Remove type.
	(ipa_agg_value_set): Likewise.
	(ipa_copy_agg_values): Remove function.
	(ipa_release_agg_values): Likewise.
	(ipa_auto_call_arg_values) Add a forward declaration.
	(ipa_call_arg_values): Likewise.
	(class ipa_argagg_value_list): New constructors, added member function
	value_for_index_p.
	(class ipa_auto_call_arg_values): Removed the destructor and member
	function safe_aggval_at.  Use ipa_argagg_values for m_known_aggs.
	(class ipa_call_arg_values): Removed member function safe_aggval_at.
	Use ipa_argagg_values for m_known_aggs.
	(ipa_get_indirect_edge_target): Removed declaration.
	(ipa_find_agg_cst_for_param): Likewise.
	(ipa_find_agg_cst_from_init): New declaration.
	(ipa_agg_value_from_jfunc): Likewise.
	(ipa_agg_value_set_from_jfunc): Removed declaration.
	(ipa_push_agg_values_from_jfunc): New declaration.
	* ipa-cp.cc (ipa_agg_value_from_node): Renamed to
	ipa_agg_value_from_jfunc, made public.
	(ipa_agg_value_set_from_jfunc): Removed.
	(ipa_push_agg_values_from_jfunc): New function.
	(ipa_get_indirect_edge_target_1): Removed known_aggs parameter, use
	avs for this purpose too.
	(ipa_get_indirect_edge_target): Removed the overload working on
	ipa_auto_call_arg_values, use ipa_argagg_value_list in the remaining
	one.
	(devirtualization_time_bonus): Use ipa_argagg_value_list and
	ipa_get_indirect_edge_target_1 instead of
	ipa_get_indirect_edge_target.
	(context_independent_aggregate_values): Removed function.
	(gather_context_independent_values): Work on ipa_argagg_value_list.
	(estimate_local_effects): Likewise, define some iterator variables
	only in the construct where necessary.
	(ipcp_discover_new_direct_edges): Adjust the call to
	ipa_get_indirect_edge_target_1.
	(push_agg_values_for_index_from_edge): Adjust the call
	ipa_agg_value_from_node which has been renamed to
	ipa_agg_value_from_jfunc.
	* ipa-fnsummary.cc (evaluate_conditions_for_known_args): Work on
	ipa_argagg_value_list.
	(evaluate_properties_for_edge): Replace manual filling in aggregate
	values with call to ipa_push_agg_values_from_jfunc.
	(estimate_calls_size_and_time): Work on ipa_argagg_value_list.
	(ipa_cached_call_context::duplicate_from): Likewise.
	(ipa_cached_call_context::release): Likewise.
	(ipa_call_context::equal_to): Likewise.
	* ipa-prop.cc (ipa_find_agg_cst_from_init): Make public.
	(ipa_find_agg_cst_for_param): Removed function.
	(ipa_find_agg_cst_from_jfunc_items): New function.
	(try_make_edge_direct_simple_call): Replace calls to
	ipa_agg_value_set_from_jfunc and ipa_find_agg_cst_for_param with
	ipa_find_agg_cst_from_init and ipa_find_agg_cst_from_jfunc_items.
	(try_make_edge_direct_virtual_call): Replace calls to
	ipa_agg_value_set_from_jfunc and ipa_find_agg_cst_for_param with
	simple query of constant jump function and a call to
	ipa_find_agg_cst_from_jfunc_items.
	(ipa_auto_call_arg_values::~ipa_auto_call_arg_values): Removed.

2022-10-18  Martin Jambor  <mjambor@suse.cz>

	* ipa-prop.h (IPA_PROP_ARG_INDEX_LIMIT_BITS): New.
	(ipcp_transformation): Added forward declaration.
	(ipa_argagg_value): New type.
	(ipa_argagg_value_list): New type.
	(ipa_agg_replacement_value): Removed type.
	(ipcp_transformation): Switch from using ipa_agg_replacement_value
	to ipa_argagg_value_list.
	(ipa_get_agg_replacements_for_node): Removed.
	(ipa_dump_agg_replacement_values): Removed declaration.
	* ipa-cp.cc: Define INCLUDE_ALGORITHM.
	(values_equal_for_ipcp_p): Moved up in the file.
	(ipa_argagg_value_list::dump): New function.
	(ipa_argagg_value_list::debug): Likewise.
	(ipa_argagg_value_list::get_elt): Likewise.
	(ipa_argagg_value_list::get_elt_for_index): Likewise.
	(ipa_argagg_value_list::get_value): New overloaded functions.
	(ipa_argagg_value_list::superset_of_p): New function.
	(new ipa_argagg_value_list::push_adjusted_values): Likewise.
	(push_agg_values_from_plats): Likewise.
	(intersect_argaggs_with): Likewise.
	(get_clone_agg_value): Removed.
	(ipa_agg_value_from_node): Make last parameter const, use
	ipa_argagg_value_list to search values coming from clones.
	(ipa_get_indirect_edge_target_1): Use ipa_argagg_value_list to search
	values coming from clones.
	(ipcp_discover_new_direct_edges): Pass around a vector of
	ipa_argagg_values rather than a link list of replacement values.
	(cgraph_edge_brings_value_p): Use ipa_argagg_value_list to search
	values coming from clones.
	(create_specialized_node): Work with a vector of ipa_argagg_values
	rather than a link list of replacement values.
	(self_recursive_agg_pass_through_p): Make the pointer parameters
	const.
	(copy_plats_to_inter): Removed.
	(intersect_with_plats): Likewise.
	(agg_replacements_to_vector): Likewise.
	(intersect_with_agg_replacements): Likewise.
	(intersect_aggregates_with_edge): Likewise.
	(push_agg_values_for_index_from_edge): Likewise.
	(push_agg_values_from_edge): Likewise.
	(find_aggregate_values_for_callers_subset): Rewrite.
	(cgraph_edge_brings_all_agg_vals_for_node): Likewise.
	(ipcp_val_agg_replacement_ok_p): Use ipa_argagg_value_list to search
	aggregate values.
	(decide_about_value): Work with a vector of ipa_argagg_values rather
	than a link list of replacement values.
	(decide_whether_version_node): Likewise.
	(ipa_analyze_node): Check number of parameters, assert that there
	are no descriptors when bailing out.
	* ipa-prop.cc (ipa_set_node_agg_value_chain): Switch to a vector of
	ipa_argagg_value.
	(ipa_node_params_t::duplicate): Removed superfluous handling of
	ipa_agg_replacement_values.  Name of src parameter removed because
	it is no longer used.
	(ipcp_transformation_t::duplicate): Replaced duplication of
	ipa_agg_replacement_values with copying vector m_agg_values.
	(ipa_dump_agg_replacement_values): Removed.
	(write_ipcp_transformation_info): Stream the new data-structure
	instead of the old.
	(read_ipcp_transformation_info): Likewise.
	(adjust_agg_replacement_values): Work with ipa_argagg_values instead
	of linked lists of ipa_agg_replacement_values, copy the items and
	truncate the vector as necessary to keep it sorted instead of marking
	items as invalid.  Return one bool if CFG should be updated.
	(ipcp_modif_dom_walker): Store ipcp_transformation instead of
	linked list of ipa_agg_replacement_values.
	(ipcp_modif_dom_walker::before_dom_children): Use
	ipa_argagg_value_list instead of walking a list of
	ipa_agg_replacement_values.
	(ipcp_transform_function): Switch to the new data structure, adjust
	dumping.

2022-10-18  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/107302
	* tree-vect-loop.cc (vectorizable_recurrence): Fix vec_perm
	placement for a PHI latch def.

2022-10-18  Andre Vieira  <andre.simoesdiasvieira@arm.com>

	PR tree-optimization/107275
	* tree-if-conv.cc (if_convertible_loop_p_1): Move
	find_data_references_in_loop call from here...
	(if_convertible_loop_p): And move data-reference vector initialization
	from here...
	(tree_if_conversion):... to here.

2022-10-18  Jakub Jelinek  <jakub@redhat.com>

	PR c++/106654
	* gimple.def (GIMPLE_ASSUME): New statement kind.
	* gimple.h (struct gimple_statement_assume): New type.
	(is_a_helper <gimple_statement_assume *>::test,
	is_a_helper <const gimple_statement_assume *>::test): New.
	(gimple_build_assume): Declare.
	(gimple_has_substatements): Return true for GIMPLE_ASSUME.
	(gimple_assume_guard, gimple_assume_set_guard,
	gimple_assume_guard_ptr, gimple_assume_body_ptr, gimple_assume_body):
	New inline functions.
	* gsstruct.def (GSS_ASSUME): New.
	* gimple.cc (gimple_build_assume): New function.
	(gimple_copy): Handle GIMPLE_ASSUME.
	* gimple-pretty-print.cc (dump_gimple_assume): New function.
	(pp_gimple_stmt_1): Handle GIMPLE_ASSUME.
	* gimple-walk.cc (walk_gimple_op): Handle GIMPLE_ASSUME.
	* omp-low.cc (WALK_SUBSTMTS): Likewise.
	(lower_omp_1): Likewise.
	* omp-oacc-kernels-decompose.cc (adjust_region_code_walk_stmt_fn):
	Likewise.
	* tree-cfg.cc (verify_gimple_stmt, verify_gimple_in_seq_2): Likewise.
	* function.h (struct function): Add assume_function bitfield.
	* gimplify.cc (gimplify_call_expr): If the assumption isn't
	simple enough, expand it into GIMPLE_ASSUME wrapped block or
	for -O0 drop it.
	* gimple-low.cc: Include attribs.h.
	(create_assumption_fn): New function.
	(struct lower_assumption_data): New type.
	(find_assumption_locals_r, assumption_copy_decl,
	adjust_assumption_stmt_r, adjust_assumption_stmt_op,
	lower_assumption): New functions.
	(lower_stmt): Handle GIMPLE_ASSUME.
	* tree-ssa-ccp.cc (pass_fold_builtins::execute): Remove
	IFN_ASSUME calls.
	* lto-streamer-out.cc (output_struct_function_base): Pack
	assume_function bit.
	* lto-streamer-in.cc (input_struct_function_base): And unpack it.
	* cgraphunit.cc (cgraph_node::expand): Don't verify assume_function
	has TREE_ASM_WRITTEN set and don't release its body.
	(symbol_table::compile): Allow assume functions not to have released
	body.
	* internal-fn.cc (expand_ASSUME): Remove gcc_unreachable.
	* passes.cc (execute_one_pass): For TODO_discard_function don't
	release body of assume functions.
	* cgraph.cc (cgraph_node::verify_node): Don't verify cgraph nodes
	of PROP_assumptions_done functions.
	* tree-pass.h (PROP_assumptions_done): Define.
	(TODO_discard_function): Adjust comment.
	(make_pass_assumptions): Declare.
	* passes.def (pass_assumptions): Add.
	* timevar.def (TV_TREE_ASSUMPTIONS): New.
	* tree-inline.cc (remap_gimple_stmt): Handle GIMPLE_ASSUME.
	* tree-vrp.cc (pass_data_assumptions): New variable.
	(pass_assumptions): New class.
	(make_pass_assumptions): New function.

2022-10-18  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/107301
	* gimple-ssa-isolate-paths.cc (handle_return_addr_local_phi_arg):
	Check whether we can duplicate the block.
	(find_implicit_erroneous_behavior): Likewise.

2022-10-18  Andrew MacLeod  <amacleod@redhat.com>

	PR tree-optimization/107273
	* value-relation.cc (equiv_oracle::add_partial_equiv): Merge
	instead of copying precison of each member.

2022-10-17  Jeff Law  <jeffreyalaw@gmail.com>

	PR target/101697
	* config/h8300/combiner.md: Replace '<' preincment constraint with
	ZA/Z1..ZH/Z7 combinations.
	* config/h8300/movepush.md: Similarly

2022-10-17  Jeff Law  <jeffreyalaw@gmail.com>

	* config/h8300/constraints.md (Za..Zh): New constraints for
	autoinc addresses using a specific register.
	* config/h8300/h8300.cc (pre_incdec_with_reg): New function.
	* config/h8300/h8300-protos.h (pre_incdec_with_reg): Add prototype.

2022-10-17  Jeff Law  <jlaw@ventanamicro.com>

	* config/i386/cet.c: Remove accidental commit.
	* config/i386/driver-mingw32.c: Likewise.
	* config/i386/i386-builtins.c: Likewise.
	* config/i386/i386-d.c:  Likewise.
	* config/i386/i386-expand.c: Likewise.
	* config/i386/i386-features.c: Likewise.
	* config/i386/i386-options.c: Likewise.
	* config/i386/t-cet: Likewise.
	* config/i386/x86-tune-sched-atom.c: Likewise.
	* config/i386/x86-tune-sched-bd.c: Likewise.
	* config/i386/x86-tune-sched-core.c: Likewise.
	* config/i386/x86-tune-sched.c: Likewise.

2022-10-17  Jeff Law  <jeffreyalaw@gmail.com>

	* common/config/h8300/h8300-common.cc (h8300_option_optimization_table):
	Enable redundant extension elimination at -O2 and above.
	* config/i386/cet.c: New file.
	* config/i386/driver-mingw32.c: New file.
	* config/i386/i386-builtins.c: New file.
	* config/i386/i386-d.c: New file.
	* config/i386/i386-expand.c: New file.
	* config/i386/i386-features.c: New file.
	* config/i386/i386-options.c: New file.
	* config/i386/t-cet: New file.
	* config/i386/x86-tune-sched-atom.c: New file.
	* config/i386/x86-tune-sched-bd.c: New file.
	* config/i386/x86-tune-sched-core.c: New file.
	* config/i386/x86-tune-sched.c: New file.

2022-10-17  Jeff Law  <jeffreyalaw@gmail.com>

	* config/h8300/extensions.md (CCZN setting zero extended load): Add
	missing splitter.

2022-10-17  Aldy Hernandez  <aldyh@redhat.com>

	PR tree-optimization/107293
	* tree-ssa-dom.cc
	(dom_opt_dom_walker::set_global_ranges_from_unreachable_edges):
	Check that condition post-dominates the definition point.

2022-10-17  Aldy Hernandez  <aldyh@redhat.com>

	PR tree-optimization/107286
	* value-range.cc (range_tests_floats): Do not test for -Inf when
	flag_finite_math_only.

2022-10-17  Andrew MacLeod  <amacleod@redhat.com>

	* gimple-range-fold.cc (fold_using_range::range_of_range_op):
	Provide relation_trio class.
	* gimple-range-gori.cc (gori_compute::refine_using_relation):
	Provide relation_trio class.
	(gori_compute::refine_using_relation): Ditto.
	(gori_compute::compute_operand1_range): Provide lhs_op2 and
	op1_op2 relations via relation_trio class.
	(gori_compute::compute_operand2_range): Ditto.
	* gimple-range-op.cc (gimple_range_op_handler::calc_op1): Use
	relation_trio instead of relation_kind.
	(gimple_range_op_handler::calc_op2): Ditto.
	(*::fold_range): Ditto.
	* gimple-range-op.h (gimple_range_op::calc_op1): Adjust prototypes.
	(gimple_range_op::calc_op2): Adjust prototypes.
	* range-op-float.cc (*::fold_range): Use relation_trio instead of
	relation_kind.
	(*::op1_range): Ditto.
	(*::op2_range): Ditto.
	* range-op.cc (*::fold_range): Use relation_trio instead of
	relation_kind.
	(*::op1_range): Ditto.
	(*::op2_range): Ditto.
	* range-op.h (class range_operator): Adjust prototypes.
	(class range_operator_float): Ditto.
	(class range_op_handler): Adjust prototypes.
	(relop_early_resolve): Pickup op1_op2 relation from relation_trio.
	* value-relation.cc (VREL_LAST): Adjust use to be one past the end of
	the enum.
	(relation_oracle::validate_relation): Use relation_trio in call
	to fold_range.
	* value-relation.h (enum relation_kind_t): Add VREL_LAST as
	final element.
	(class relation_trio): New.
	(TRIO_VARYING, TRIO_SHIFT, TRIO_MASK): New.

2022-10-17  Andrew MacLeod  <amacleod@redhat.com>

	* range-op-float.cc (foperator_not_equal::op1_range): Check for
	VREL_EQ after singleton.
	(foperator_unordered::op1_range): Set VARYING before calling
	clear_nan().
	(foperator_ordered::op1_range): Set rather than clear NAN if both
	operands are the same.

2022-10-17  Andrew MacLeod  <amacleod@redhat.com>

	* value-relation.cc (value_relation::dump): Change message.
	* value-relation.h (value_relation::set_relation): If op1 is the
	same as op2 do not create a relation.

2022-10-17  Thomas Schwinge  <thomas@codesourcery.com>

	* config/gcn/gcn.cc (VnMODE): Use 'case E_QImode:' instead of
	'case QImode:', etc.

2022-10-17  Thomas Schwinge  <thomas@codesourcery.com>

	* gimple-expr.cc (mark_addressable_2): Tag as 'static'.

2022-10-17  Richard Biener  <rguenther@suse.de>
	    Ju-Zhe Zhong  <juzhe.zhong@rivai.ai>

	PR tree-optimization/99409
	PR tree-optimization/99394
	* tree-vectorizer.h (vect_def_type::vect_first_order_recurrence): Add.
	(stmt_vec_info_type::recurr_info_type): Likewise.
	(vectorizable_recurr): New function.
	* tree-vect-loop.cc (vect_phi_first_order_recurrence_p): New
	function.
	(vect_analyze_scalar_cycles_1): Look for first order
	recurrences.
	(vect_analyze_loop_operations): Handle them.
	(vect_transform_loop): Likewise.
	(vectorizable_recurr): New function.
	(maybe_set_vectorized_backedge_value): Handle the backedge value
	setting in the first order recurrence PHI and the permutes.
	* tree-vect-stmts.cc (vect_analyze_stmt): Handle first order
	recurrences.
	(vect_transform_stmt): Likewise.
	(vect_is_simple_use): Likewise.
	(vect_is_simple_use): Likewise.
	* tree-vect-slp.cc (vect_get_and_check_slp_defs): Likewise.
	(vect_build_slp_tree_2): Likewise.
	(vect_schedule_scc): Handle the backedge value setting in the
	first order recurrence PHI and the permutes.

2022-10-17  Ju-Zhe Zhong  <juzhe.zhong@rivai.ai>

	* config/riscv/t-riscv: Change Tab into 2 space.

2022-10-17  Ju-Zhe Zhong  <juzhe.zhong@rivai.ai>

	* config/riscv/riscv-vector-builtins.cc (mangle_builtin_type): Move down the function.

2022-10-17  Arsen Arsenovic  <arsen@aarsen.me>

	* config.gcc: --target=*-elf --without-{newlib,headers} should
	provide stdint.h.

2022-10-17  Hu, Lin1  <lin1.hu@intel.com>

	* common/config/i386/cpuinfo.h:
	(get_intel_cpu): Handle Meteorlake.
	* common/config/i386/i386-common.cc:
	(processor_alias_table): Add Meteorlake.

2022-10-17  Haochen Jiang  <haochen.jiang@intel.com>

	* common/config/i386/cpuinfo.h:
	(get_intel_cpu): Handle Raptorlake.
	* common/config/i386/i386-common.cc:
	(processor_alias_table): Add Raptorlake.

2022-10-16  Jeff Law  <jeffreyalaw@gmail.com>

	* config/h8300/constraints.md (Z0..Z7): New register
	constraints.
	* config/h8300/h8300.h (reg_class): Add new classes.
	(REG_CLASS_NAMES): Similarly.
	(REG_CLASS_CONTENTS): Similarly.

2022-10-16  Jeff Law  <jeffreyalaw@gmail.com>

	* config/h8300/constraints.md (Zz constraint): Renamed
	from "z".
	* config/h8300/movepush.md (movqi_h8sx, movhi_h8sx): Adjust
	constraint to use Zz instead of Z.

2022-10-16  Jeff Law  <jeffreyalaw@gmail.com>

	* config/h8300/h8300.cc (h8300_register_move_cost): Fix typo.

2022-10-14  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.cc (frange::set): Implement distinction between
	HONOR_SIGNED_ZEROS and MODE_HAS_SIGNED_ZEROS.

2022-10-14  Aldy Hernandez  <aldyh@redhat.com>

	* gimple-range-op.cc (class cfn_copysign): New.
	(gimple_range_op_handler::maybe_builtin_call): Add
	CFN_BUILT_IN_COPYSIGN*.

2022-10-14  Aldy Hernandez  <aldyh@redhat.com>

	* real.h (real_isdenormal): Check rvc_normal.
	* value-range.cc (range_tests_floats): New test.

2022-10-14  Aldy Hernandez  <aldyh@redhat.com>

	* gimple-range-op.cc
	(gimple_range_op_handler::maybe_builtin_call): Replace
	CFN_BUILTIN_SIGNBIT* cases with CASE_FLT_FN.

2022-10-14  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.cc (frange::set): Normalize ranges for both bounds.

2022-10-14  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.cc (frange::set): Drop -0.0 for !HONOR_SIGNED_ZEROS.

2022-10-14  Aldy Hernandez  <aldyh@redhat.com>

	* gimple-range-op.cc
	(gimple_range_op_handler::maybe_builtin_call): Add
	CFN_BUILT_IN_SIGNBIT[FL]* entries.

2022-10-14  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/107254
	* tree-vect-slp.cc (vect_slp_analyze_node_operations_1):
	For permutes also analyze live lanes.
	(vect_schedule_slp_node): For permutes also code generate
	live lane extracts.

2022-10-14  Eric Botcazou  <ebotcazou@adacore.com>

	PR target/107248
	* config/sparc/sparc.cc (sparc_expand_prologue): Emit a frame
	blockage for leaf functions.
	(sparc_flat_expand_prologue): Emit frame instead of full blockage.
	(sparc_expand_epilogue): Emit a frame blockage for leaf functions.
	(sparc_flat_expand_epilogue): Emit frame instead of full blockage.

2022-10-14  Jakub Jelinek  <jakub@redhat.com>

	* tree-core.h (enum tree_index): Add TI_BFLOAT16_TYPE.
	* tree.h (bfloat16_type_node): Define.
	* tree.cc (excess_precision_type): Promote bfloat16_type_mode
	like float16_type_mode.
	(build_common_tree_nodes): Initialize bfloat16_type_node if
	BFmode is supported.
	* expmed.h (maybe_expand_shift): Declare.
	* expmed.cc (maybe_expand_shift): No longer static.
	* expr.cc (convert_mode_scalar): Don't ICE on BF -> HF or HF -> BF
	conversions.  If there is no optab, handle BF -> {DF,XF,TF,HF}
	conversions as separate BF -> SF -> {DF,XF,TF,HF} conversions, add
	-ffast-math generic implementation for BF -> SF and SF -> BF
	conversions.
	* builtin-types.def (BT_BFLOAT16, BT_FN_BFLOAT16_CONST_STRING): New.
	* builtins.def (BUILT_IN_NANSF16B): New builtin.
	* fold-const-call.cc (fold_const_call): Handle CFN_BUILT_IN_NANSF16B.
	* config/i386/i386.cc (classify_argument): Handle E_BCmode.
	(ix86_libgcc_floating_mode_supported_p): Also return true for BFmode
	for -msse2.
	(ix86_mangle_type): Mangle BFmode as DF16b.
	(ix86_invalid_conversion, ix86_invalid_unary_op,
	ix86_invalid_binary_op): Remove.
	(TARGET_INVALID_CONVERSION, TARGET_INVALID_UNARY_OP,
	TARGET_INVALID_BINARY_OP): Don't redefine.
	* config/i386/i386-builtins.cc (ix86_bf16_type_node): Remove.
	(ix86_register_bf16_builtin_type): Use bfloat16_type_node rather than
	ix86_bf16_type_node, only create it if still NULL.
	* config/i386/i386-builtin-types.def (BFLOAT16): Likewise.
	* config/i386/i386.md (cbranchbf4, cstorebf4): New expanders.

2022-10-14  Jakub Jelinek  <jakub@redhat.com>

	PR middle-end/323
	PR c++/107097
	* doc/invoke.texi (-fexcess-precision=standard): Mention that the
	option now also works in C++.

2022-10-13  Eric Botcazou  <ebotcazou@adacore.com>

	* gimple-ssa-warn-access.cc (pass_waccess::check_call): Return
	early for calls made from thunks.

2022-10-13  Eric Botcazou  <ebotcazou@adacore.com>

	* expr.cc (emit_group_stote): Fix handling of modes of different
	sizes for big-endian targets in latest change and add commentary.

2022-10-13  Martin Liska  <mliska@suse.cz>

	* output.h (assemble_vtv_preinit_initializer): Remove.
	* varasm.cc (assemble_vtv_preinit_initializer): Remove.

2022-10-13  Andrew MacLeod  <amacleod@redhat.com>

	PR tree-optimization/102540
	PR tree-optimization/102872
	* gimple-range-cache.cc (ranger_cache::fill_block_cache):
	Handle partial equivs.
	(ranger_cache::range_from_dom): Cleanup dump output.

2022-10-13  Andrew MacLeod  <amacleod@redhat.com>

	* range-op.cc (operator_cast::lhs_op1_relation): New.
	(operator_bitwise_and::lhs_op1_relation): New.

2022-10-13  Andrew MacLeod  <amacleod@redhat.com>

	* gimple-range-cache.cc (ranger_cache::fill_block_cache): Use
	iterator.
	* value-relation.cc
	(equiv_relation_iterator::equiv_relation_iterator): New.
	(equiv_relation_iterator::next): New.
	(equiv_relation_iterator::get_name): New.
	* value-relation.h (class relation_oracle): Privatize some methods.
	(class equiv_relation_iterator): New.
	(FOR_EACH_EQUIVALENCE): New.
	(FOR_EACH_PARTIAL_EQUIV): New.
	(FOR_EACH_PARTIAL_AND_FULL_EQUIV): New.

2022-10-13  Andrew MacLeod  <amacleod@redhat.com>

	* value-relation.cc (equiv_chain::dump): Don't print empty
	equivalences.
	(equiv_oracle::equiv_oracle): Allocate a partial equiv table.
	(equiv_oracle::~equiv_oracle): Release the partial equiv table.
	(equiv_oracle::add_partial_equiv): New.
	(equiv_oracle::partial_equiv_set): New.
	(equiv_oracle::partial_equiv): New.
	(equiv_oracle::query_relation): Check for partial equivs too.
	(equiv_oracle::dump): Also dump partial equivs.
	(dom_oracle::register_relation): Handle partial equivs.
	(dom_oracle::query_relation): Check for partial equivs.
	* value-relation.h (enum relation_kind_t): Add partial equivs.
	(relation_partial_equiv_p): New.
	(relation_equiv_p): New.
	(class pe_slice): New.
	(class equiv_oracle): Add prototypes.
	(pe_to_bits): New.
	(bits_to_pe): New.
	(pe_min): New.

2022-10-13  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/107247
	* tree-vect-loop.cc (vect_create_epilog_for_reduction):
	Reduce multi vector SLP reduction accumulators.  Check
	the adjusted number of accumulator vectors against
	one for the re-use in the epilogue.

2022-10-13  Jakub Jelinek  <jakub@redhat.com>

	* genmodes.cc (emit_mode_wider): Emit previous content of
	mode_wider array into mode_next array and for mode_wider
	emit always VOIDmode for !CLASS_HAS_WIDER_MODES_P classes,
	otherwise skip through modes with the same precision.
	* machmode.h (mode_next): Declare.
	(GET_MODE_NEXT_MODE): New inline function.
	(mode_iterator::get_next, mode_iterator::get_known_next): New
	function templates.
	(FOR_EACH_MODE_IN_CLASS): Use get_next instead of get_wider.
	(FOR_EACH_MODE): Use get_known_next instead of get_known_wider.
	(FOR_EACH_MODE_FROM): Use get_next instead of get_wider.
	(FOR_EACH_WIDER_MODE_FROM): Define.
	(FOR_EACH_NEXT_MODE): Define.
	* expmed.cc (emit_store_flag_1): Use FOR_EACH_WIDER_MODE_FROM
	instead of FOR_EACH_MODE_FROM.
	* optabs.cc (prepare_cmp_insn): Likewise.  Remove redundant
	!CLASS_HAS_WIDER_MODES_P check.
	(prepare_float_lib_cmp): Use FOR_EACH_WIDER_MODE_FROM instead of
	FOR_EACH_MODE_FROM.
	* config/i386/i386-expand.cc (get_mode_wider_vector): Use
	GET_MODE_NEXT_MODE instead of GET_MODE_WIDER_MODE.

2022-10-13  Wilco Dijkstra  <wdijkstr@arm.com>

	PR target/105773
	* config/aarch64/aarch64.cc (aarch64_select_cc_mode): Allow
	GT/LE for merging compare with zero into AND.
	(aarch64_get_condition_code_1): Add CC_NZVmode support.
	* config/aarch64/aarch64-modes.def: Add CC_NZV.
	* config/aarch64/aarch64.md: Use CC_NZV in cmp+and patterns.

2022-10-13  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/107160
	* tree-vect-loop.cc (vect_create_epilog_for_reduction):
	Do not register accumulator if we failed to reduce it
	to a single vector.

2022-10-13  Aldy Hernandez  <aldyh@redhat.com>

	* range-op-float.cc (range_operator_float::op1_op2_relation): New.
	(class foperator_equal): Add using.
	(class foperator_not_equal): Same.
	(class foperator_lt): Same.
	(class foperator_le): Same.
	(class foperator_gt): Same.
	(class foperator_ge): Same.
	* range-op.cc (range_op_handler::op1_op2_relation): New.
	* range-op.h (range_operator_float::op1_op2_relation): New.

2022-10-13  Richard Biener  <rguenther@suse.de>

	* genmatch.cc (parser::parse_c_expr): Diagnose 'return'.
	* match.pd: Replace 'return' statements in with expressions
	with appropriate variants.

2022-10-13  Andre Vieira  <andre.simoesdiasvieira@arm.com>

	PR tree-optimization/107229
	* tree-if-conv.cc (get_bitfield_rep): Fix bitposition calculation.

2022-10-13  Andre Vieira  <andre.simoesdiasvieira@arm.com>

	PR tree-optimization/107226
	* tree-vect-patterns.cc (vect_recog_bitfield_ref_pattern): Reject
	BITFIELD_REF's with non integral typed first operands.

2022-10-13  Joseph Myers  <joseph@codesourcery.com>

	* ginclude/float.h (FLT_IS_IEC_60559, DBL_IS_IEC_60559)
	(LDBL_IS_IEC_60559): Update comment.

2022-10-12  Aldy Hernandez  <aldyh@redhat.com>

	* range-op-float.cc (class foperator_negate): New.
	(floating_op_table::floating_op_table): Add NEGATE_EXPR
	(range_op_float_tests): Add negate tests.

2022-10-12  Ju-Zhe Zhong  <juzhe.zhong@rivai.ai>

	* config/riscv/riscv-vector-builtins.h: Remove unused macro.

2022-10-12  Ju-Zhe Zhong  <juzhe.zhong@rivai.ai>

	* config/riscv/riscv-vector-builtins.cc (DEF_RVV_TYPE): Apply
	clang-format.
	(add_vector_type_attribute): Ditto.
	* config/riscv/riscv-vector-builtins.def (DEF_RVV_TYPE): Apply
	clang-format.
	* config/riscv/riscv-vector-builtins.h (DEF_RVV_TYPE): Apply
	clang-format.

2022-10-12  Ju-Zhe Zhong  <juzhe.zhong@rivai.ai>

	* config/riscv/riscv-vector-builtins.cc (builtin_types): Redefine
	vector types.
	(build_const_pointer): New function.
	(register_builtin_type): Ditto.
	(DEF_RVV_TYPE): Simplify macro.
	(register_vector_type): Refine implementation.
	* config/riscv/riscv-vector-builtins.h (rvv_builtin_types_t): New.

2022-10-12  Ju-Zhe Zhong  <juzhe.zhong@rivai.ai>

	* config/riscv/riscv-vector-builtins.h (class rvv_switcher): Move to
	this to ....
	* config/riscv/riscv-vector-builtins.cc (class rvv_switcher):
	here.

2022-10-12  Cui,Lili  <lili.cui@intel.com>

	* config/i386/driver-i386.cc (host_detect_local_cpu):
	Move sapphirerapids out of AVX512_VP2INTERSECT.
	* config/i386/i386.h: Remove AVX512_VP2INTERSECT from PTA_SAPPHIRERAPIDS
	* doc/invoke.texi: Remove AVX512_VP2INTERSECT from SAPPHIRERAPIDS

2022-10-12  Martin Liska  <mliska@suse.cz>

	* gcov-io.cc (gcov_write_summary): Rename to ...
	(gcov_write_object_summary): ... this.
	* gcov-io.h (GCOV_TAG_OBJECT_SUMMARY_LENGTH): Rename from ...
	(GCOV_TAG_SUMMARY_LENGTH): ... this.

2022-10-12  Martin Liska  <mliska@suse.cz>

	* configure: Regenerate.

2022-10-12  Aldy Hernandez  <aldyh@redhat.com>

	* range-op-float.cc (frange_float): New.
	(range_op_float_tests): New.
	* range-op.cc (range_op_tests): Call range_op_float_tests.

2022-10-12  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.h (frange::nan_signbit_p): New.

2022-10-12  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.cc (frange::set_nonnegative): Pass bool to
	update_nan.
	* value-range.h: Disallow conversion to bool in update_nan().

2022-10-12  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.h (frange::frange): Add constructor taking type.

2022-10-12  Aldy Hernandez  <aldyh@redhat.com>

	* range-op-float.cc: Add relation_kind = VREL_VARYING to all
	methods.

2022-10-11  Aldy Hernandez  <aldyh@redhat.com>

	* gimple-range-gori.cc (gori_compute::logical_combine): Avoid
	calling tracer.trailer().

2022-10-11  Jakub Jelinek  <jakub@redhat.com>

	PR target/107185
	* config/i386/i386.md (*notxor<mode>_1): Use MASK_REG_P (x) instead of
	MASK_REGNO_P (REGNO (x)).

2022-10-11  Aldy Hernandez  <aldyh@redhat.com>

	* range-op-float.cc (class foperator_abs): New.
	(floating_op_table::floating_op_table): Add ABS_EXPR entry.

2022-10-11  Aldy Hernandez  <aldyh@redhat.com>

	* range-op-float.cc (foperator_unordered_le::op1_range): New.
	(foperator_unordered_le::op2_range): New.
	(foperator_unordered_gt::op1_range): New.
	(foperator_unordered_gt::op2_range): New.
	(foperator_unordered_ge::op1_range): New.
	(foperator_unordered_ge::op2_range): New.
	(foperator_unordered_equal::op1_range): New.

2022-10-11  Aldy Hernandez  <aldyh@redhat.com>

	* range-op-float.cc (class foperator_unordered_lt): New.
	(class foperator_relop_unknown): Remove
	(class foperator_unordered_le): New.
	(class foperator_unordered_gt): New.
	(class foperator_unordered_ge): New.
	(class foperator_unordered_equal): New.
	(floating_op_table::floating_op_table): Replace all UN_EXPR
	entries with their appropriate fop_unordered_* counterpart.

2022-10-11  Aldy Hernandez  <aldyh@redhat.com>

	* range-op.cc (operator_equal::op1_range): Move BRS_TRUE case up.
	(operator_lt::op2_range): Same.
	(operator_le::op2_range): Same.
	(operator_gt::op2_range): Same.
	(operator_ge::op2_range): Same.

2022-10-11  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/107212
	* tree-vect-loop.cc (vectorizable_reduction): Make sure to
	set STMT_VINFO_REDUC_DEF for all live lanes in a SLP
	reduction.
	(vectorizable_live_operation): Do not pun to the SLP
	node representative for reduction epilogue generation.

2022-10-11  Andrew Stubbs  <ams@codesourcery.com>

	* config/gcn/gcn-valu.md (neg<mode>2): New define_expand.

2022-10-11  Andrew Stubbs  <ams@codesourcery.com>

	* config/gcn/gcn-valu.md (vec_init<V_ALL:mode><V_ALL_ALT:mode>): New.
	* config/gcn/gcn.cc (GEN_VN): Add andvNsi3, subvNsi3.
	(GEN_VNM): Add gathervNm_expr.
	(GEN_VN_NOEXEC): Add vec_seriesvNsi.
	(gcn_expand_vector_init): Add initialization of vectors from smaller
	vectors.

2022-10-11  Andrew Stubbs  <ams@codesourcery.com>

	* config/gcn/gcn-protos.h (get_exec): Add prototypes for two variants.
	* config/gcn/gcn-valu.md
	(vec_extract<V_ALL:mode><V_ALL_ALT:mode>): New define_expand.
	* config/gcn/gcn.cc (get_exec): Export the existing function. Add a
	new overload variant.

2022-10-11  Andrew Stubbs  <ams@codesourcery.com>

	* config/gcn/gcn-valu.md
	(<cvt_name><VCVT_MODE:mode><VCVT_FMODE:mode>2<exec>): Use MODE_VF.
	(<cvt_name><VCVT_FMODE:mode><VCVT_IMODE:mode>2<exec>): Likewise.
	* config/gcn/gcn.h (MODE_VF): New macro.

2022-10-11  Andrew Stubbs  <ams@codesourcery.com>

	* config/gcn/gcn-modes.def (VECTOR_MODE): Add new modes
	V32QI, V32HI, V32SI, V32DI, V32TI, V32HF, V32SF, V32DF,
	V16QI, V16HI, V16SI, V16DI, V16TI, V16HF, V16SF, V16DF,
	V8QI, V8HI, V8SI, V8DI, V8TI, V8HF, V8SF, V8DF,
	V4QI, V4HI, V4SI, V4DI, V4TI, V4HF, V4SF, V4DF,
	V2QI, V2HI, V2SI, V2DI, V2TI, V2HF, V2SF, V2DF.
	(ADJUST_ALIGNMENT): Likewise.
	* config/gcn/gcn-protos.h (gcn_full_exec): Delete.
	(gcn_full_exec_reg): Delete.
	(gcn_scalar_exec): Delete.
	(gcn_scalar_exec_reg): Delete.
	(vgpr_1reg_mode_p): Use inner mode to identify vector registers.
	(vgpr_2reg_mode_p): Likewise.
	(vgpr_vector_mode_p): Use VECTOR_MODE_P.
	* config/gcn/gcn-valu.md (V_QI, V_HI, V_HF, V_SI, V_SF, V_DI, V_DF,
	V_QIHI, V_1REG, V_INT_1REG, V_INT_1REG_ALT, V_FP_1REG, V_2REG, V_noQI,
	V_noHI, V_INT_noQI, V_INT_noHI, V_ALL, V_ALL_ALT, V_INT, V_FP):
	Add additional vector modes.
	(V64_SI, V64_DI, V64_ALL, V64_FP): New iterators.
	(scalar_mode, SCALAR_MODE, vnsi, VnSI, vndi, VnDI, sdwa):
	Add additional vector mode mappings.
	(mov<mode>): Implement vector length conversions.
	(ldexp<mode>3<exec>): Use VnSI.
	(frexp<mode>_exp2<exec>): Likewise.
	(VCVT_MODE, VCVT_FMODE, VCVT_IMODE): Add additional vector modes.
	(reduc_<reduc_op>_scal_<mode>): Use V64_ALL.
	(fold_left_plus_<mode>): Use V64_FP.
	(*<reduc_op>_dpp_shr_<mode>): Use V64_1REG.
	(*<reduc_op>_dpp_shr_<mode>): Use V64_DI.
	(*plus_carry_dpp_shr_<mode>): Use V64_INT_1REG.
	(*plus_carry_in_dpp_shr_<mode>): Use V64_SI.
	(*plus_carry_dpp_shr_<mode>): Use V64_DI.
	(mov_from_lane63_<mode>): Use V64_2REG.
	* config/gcn/gcn.cc (VnMODE): New function.
	(gcn_can_change_mode_class): Support multiple vector sizes.
	(gcn_modes_tieable_p): Likewise.
	(gcn_operand_part): Likewise.
	(gcn_scalar_exec): Delete function.
	(gcn_scalar_exec_reg): Delete function.
	(gcn_full_exec): Delete function.
	(gcn_full_exec_reg): Delete function.
	(gcn_inline_fp_constant_p): Support multiple vector sizes.
	(gcn_fp_constant_p): Likewise.
	(A): New macro.
	(GEN_VN_NOEXEC): New macro.
	(GEN_VNM_NOEXEC): New macro.
	(GEN_VN): New macro.
	(GEN_VNM): New macro.
	(GET_VN_FN): New macro.
	(CODE_FOR): New macro.
	(CODE_FOR_OP): New macro.
	(gen_mov_with_exec): Delete function.
	(gen_duplicate_load): Delete function.
	(gcn_expand_vector_init): Support multiple vector sizes.
	(strided_constant): Likewise.
	(gcn_addr_space_legitimize_address): Likewise.
	(gcn_expand_scalar_to_vector_address): Likewise.
	(gcn_expand_scaled_offsets): Likewise.
	(gcn_secondary_reload): Likewise.
	(gcn_valid_cvt_p): Likewise.
	(gcn_expand_builtin_1): Likewise.
	(gcn_make_vec_perm_address): Likewise.
	(gcn_vectorize_vec_perm_const): Likewise.
	(gcn_vector_mode_supported_p): Likewise.
	(gcn_autovectorize_vector_modes): New hook.
	(gcn_related_vector_mode): Support multiple vector sizes.
	(gcn_expand_dpp_shr_insn): Add FIXME comment.
	(gcn_md_reorg): Support multiple vector sizes.
	(print_reg): Likewise.
	(print_operand): Likewise.
	(TARGET_VECTORIZE_AUTOVECTORIZE_VECTOR_MODES): New hook.

2022-10-11  Andre Vieira  <andre.simoesdiasvieira@arm.com>

	* tree-if-conv.cc (if_convertible_loop_p_1): Move ordering of loop bb's from
	here...
	(tree_if_conversion): ... to here.  Also call bitfield lowering when
	appropriate.
	(version_loop_for_if_conversion): Adapt to enable loop versioning when we only
	need to lower bitfields.
	(ifcvt_split_critical_edges): Relax condition of expected loop form as this is
	checked earlier.
	(get_bitfield_rep): New function.
	(lower_bitfield): Likewise.
	(bitfields_to_lower_p): Likewise.
	(need_to_lower_bitfields): New global boolean.
	(need_to_ifcvt): Likewise.
	* tree-vect-data-refs.cc (vect_find_stmt_data_reference): Improve diagnostic
	message.
	* tree-vect-patterns.cc (vect_recog_temp_ssa_var): Add default value for last
	parameter.
	(vect_recog_bitfield_ref_pattern): New.
	(vect_recog_bit_insert_pattern): New.

2022-10-11  liuhongt  <hongtao.liu@intel.com>

	PR target/107093
	* config/i386/i386.md (*notxor<mode>_1): New post_reload
	define_insn_and_split.
	(*notxorqi_1): Ditto.

2022-10-11  Aldy Hernandez  <aldyh@redhat.com>

	PR tree-optimization/107195
	* value-range.cc (irange::set_range_from_nonzero_bits): Set range
	to [0,0] when nonzero mask is 0.

2022-10-11  Olivier Hainque  <hainque@adacore.com>

	* configure: Regenerate.

2022-10-11  Olivier Hainque  <hainque@adacore.com>

	* config.gcc (*vxworks*): Add t-slibgcc fragment
	if enable_shared.

2022-10-11  Olivier Hainque  <hainque@adacore.com>

	* config/vxworks.h (VX_LGCC_EH_SO0, VX_LGCC_EH_SO1): New
	internal macros.
	(VXWORKS_LIBGCC_SPEC): Use them and document.

2022-10-11  Martin Liska  <mliska@suse.cz>

	* gimple-range-op.cc: Add override keyword.

2022-10-11  Eugene Rozenfeld  <erozen@microsoft.com>

	PR debug/107193
	* tree-cfg.cc (assign_discriminators): Move declaration of cur_locus_e
	out of the loop.

2022-10-11  Liwei Xu  <liwei.xu@intel.com>
	    liuhongt  <hongtao.liu@intel.com>

	PR tree-optimization/54346
	* match.pd: Merge the index of VCST then generates the new vec_perm.

2022-10-11  Jeff Law  <jeffreyalaw@gmail.com>

	PR rtl-optimization/107182
	* cfgrtl.cc (fixup_reorder_chain): When optimizing a jump to a
	return, clear EDGE_CROSSING on the appropriate edge.

2022-10-11  Ju-Zhe Zhong  <juzhe.zhong@rivai.ai>

	* config/riscv/riscv-vector-builtins.cc (struct vector_type_info): Move
	from config/riscv/riscv-vector-builtins.h.
	(DEF_RVV_TYPE): Change USER_NAME to NAME.
	(register_vector_type): Change user_name to name.
	* config/riscv/riscv-vector-builtins.def (DEF_RVV_TYPE): Change
	USER_NAME to NAME.
	* config/riscv/riscv-vector-builtins.h (struct vector_type_info): Move
	to riscv-vector-builtins.cc.
	(DEF_RVV_TYPE): Change USER_NAME to NAME.

2022-10-11  Ju-Zhe Zhong  <juzhe.zhong@rivai.ai>

	* config/riscv/riscv.md: Add vsetvl instruction type.

2022-10-10  Nathan Sidwell  <nathan@acm.org>

	* common.opt (-fabi-version=): Document 18.
	* doc/invoke.texi (-fabi-version): Document 18.

2022-10-10  Andrea Corallo  <andrea.corallo@arm.com>

	PR other/99723
	* toplev.cc (toplev::main): Don't run self tests in case of
	previous error.

2022-10-10  Kito Cheng  <kito.cheng@sifive.com>

	* config/riscv/riscv-c.cc: Add newline to the end of file.

2022-10-10  Aldy Hernandez  <aldyh@redhat.com>

	* range-op-float.cc (class foperator_identity): Make members public.
	(class foperator_equal): Same.
	(class foperator_not_equal): Same.
	(class foperator_lt): Same.
	(class foperator_le): Same.
	(class foperator_gt): Same.
	(class foperator_ge): Same.
	(class foperator_unordered): Same.
	(class foperator_ordered): Same.

2022-10-10  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.h (frange::maybe_isnan): New.

2022-10-10  Aldy Hernandez  <aldyh@redhat.com>

	* range-op-float.cc (foperator_not_equal::op1_range): Set NAN on
	TRUE side for x != x.

2022-10-10  Aldy Hernandez  <aldyh@redhat.com>

	* range-op-float.cc (foperator_unordered::op1_range): Set NAN when
	operands are equal and result is TRUE.

2022-10-10  Aldy Hernandez  <aldyh@redhat.com>

	* range.h (range_true): Return int_range<2>.
	(range_false): Same.
	(range_true_and_false): Same.

2022-10-10  Aldy Hernandez  <aldyh@redhat.com>

	* gimple-range-op.cc: Add op1_range entry for __builtin_signbit.

2022-10-10  liuhongt  <hongtao.liu@intel.com>

	PR target/107185
	* config/i386/i386.md (lrint<MODEF:mode><SWI48:mode>2): Swap
	predicate of operands[0] and operands[1].

2022-10-10  Claudiu Zissulescu  <claziss@gmail.com>

	* common/config/arc/arc-common.cc (arc_option_optimization_table):
	Remove Rcq and Rcw options.
	* config/arc/arc.opt (mRcq): Ignore option, preserve it for
	backwards compatibility.
	(mRcw): Likewise.
	* doc/invoke.texi (mRcw, mRcq): Update document.

2022-10-10  Claudiu Zissulescu  <claziss@gmail.com>

	* config/arc/arc.cc (arc_check_short_reg_p): New function.
	(arc_address_cost): Replace satisfies_constraint_Rcq with the
	above new function.
	(arc_output_addsi): Likewise.
	(split_addsi): Likewise.
	(split_subsi): Likewise.
	* config/arc/arc.md (movqi_insn): Remove Rcq constraint.
	(movhi_insn): Likewise.
	(movsi_insn): Likewise.
	(tst_movb): Likewise.
	(tst): Likewise.
	(tst_bitfield): Likewise.
	(abssi2): Likewise.
	(addsi3_mixed): Likewise.
	(mulhisi3_reg): Likewise.
	(umulhisi3_reg): Likewise.
	(mulsi_600): Likewise.
	(mul64): Likewise.
	(subsi3_insn): Likewise.
	(bicsi3_insn): Likewise.
	(xorsi3): Likewise.
	(negsi2): Likewise.
	(one_cmplsi2): Likewise.
	(lshrsi3_insn): Likewise.
	(cmpsi_cc_insn_mixed): Likewise.
	(cmpsi_cc_zn_insn): Likewise.
	(btst): Likewise.
	(cmpsi_cc_z_insn): Likewise.
	(cmpsi_cc_c_insn): Likewise.
	(indirect_jump): Likewise.
	(casesi_jump): Likewise.
	(call_i): Likewise.
	(call_value_i): Likewise.
	(bbit): Likewise.
	(abssf2): Likewise.
	(ashlsi2_cnt1): Likewise.
	(lshrsi3_cnt1): Likewise.
	(ashrsi3_cnt1): Likewise.
	* config/arc/constraints.md (Rcq): Remove.

2022-10-10  Claudiu Zissulescu  <claziss@gmail.com>

	* config/arc/arc.md (smaxsi3): Remove Rcw.
	(sminsi3): Likewise.
	(addsi3_mixed): Likewise.
	(add_f_2): Likewise.
	(subsi3_insn): Likewise.
	(sub_f): Likewise.
	(sub_n): Likewise.
	(bset): Likewise.
	(bxor): Likewise.
	(bclr): Likewise.
	(bset_insn): Likewise.
	(bxor_insn): Likewise.
	(bclr_insn): Likewise.
	(bmsk_insn): Likewise.
	(bicsi3_insn): Likewise.
	(xorsi3): Likewise.
	(negsi2): Likewise.
	(lshrsi3_insn): Likewise.
	(abssf2): Likewise.
	(negsf2): Likewise.
	* config/arc/constraints.md(Rcw): Remove it.

2022-10-10  Claudiu Zissulescu  <claziss@gmail.com>

	* config/arc/arc.md(mulsi3_700): Remove Rcr.
	(mulsi3_highpart): Likewise.
	(umulsi3_highpart_i): Likewise.
	(umulsi3_highpart_int): Likewise.
	(macd): Likewise.
	(macdu): Likewise.
	* config/arc/constraints.md (Rcr): Remove it.

2022-10-10  Claudiu Zissulescu  <claziss@gmail.com>

	* config/arc/arc.cc (arc_save_callee_enter): Use negative offsets.

2022-10-09  Dimitar Dimitrov  <dimitar@dinux.eu>

	PR target/106562
	* config/pru/pru-protos.h (pru_noteq_condition): New
	function declaration.
	* config/pru/pru.cc (pru_noteq_condition): New function.
	* config/pru/pru.md (cbranchdi4): Define new pattern.

2022-10-09  Dimitar Dimitrov  <dimitar@dinux.eu>

	* config/pru/pru.md (lshrdi3): New expand pattern.
	(ashldi3): Ditto.

2022-10-09  YunQiang Su  <yunqiang.su@cipunited.com>

	* config.gcc: set with_arch to default_mips_arch if no defined.
	* config/mips/driver-native.cc (host_detect_local_cpu):
	try getauxval(AT_BASE_PLATFORM) and _MIPS_ARCH, too.
	pass -mnan=2008 if __mips_nan2008__ is defined.
	* config.in: define HAVE_SYS_AUXV_H and HAVE_GETAUXVAL.
	* configure.ac: detect sys/auxv.h and getauxval.
	* configure: regenerated.

2022-10-07  Eugene Rozenfeld  <erozen@microsoft.com>

	* tree-cfg.cc (assign_discriminators): Set discriminators for call stmts
	on the same line within the same basic block.

2022-10-07  Qing Zhao  <qing.zhao@oracle.com>

	PR tree-optimization/101836
	* tree-object-size.cc (addr_object_size): Use array_at_struct_end_p
	to determine a flexible array member reference.

2022-10-07  Qing Zhao  <qing.zhao@oracle.com>

	* doc/extend.texi: Document strict_flex_array attribute.
	* doc/invoke.texi: Document -fstrict-flex-arrays[=n] option.
	* print-tree.cc (print_node): Print new bit decl_not_flexarray.
	* tree-core.h (struct tree_decl_common): New bit field
	decl_not_flexarray.
	* tree-streamer-in.cc (unpack_ts_decl_common_value_fields): Stream
	in new bit decl_not_flexarray.
	* tree-streamer-out.cc (pack_ts_decl_common_value_fields): Stream
	out new bit decl_not_flexarray.
	* tree.cc (array_at_struct_end_p): Update it with the new bit field
	decl_not_flexarray.
	* tree.h (DECL_NOT_FLEXARRAY): New flag.

2022-10-07  Olivier Hainque  <hainque@adacore.com>

	* config/vxworks/_vxworks-versions.h: Use OS specific
	paths in #include of version.h.

2022-10-07  Martin Liska  <mliska@suse.cz>

	* opts.cc (finish_options): Print sorry message only
	for -flive-patching=inline-only-static.

2022-10-07  Jason Merrill  <jason@redhat.com>

	* gimplify.cc (gimplify_modify_expr_rhs): Don't optimize
	x = *(A*)&<expr> to x = <expr> for a TREE_ADDRESSABLE type.

2022-10-07  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/107153
	* tree-cfg.cc (gimple_duplicate_sese_tail): Do not update
	SSA form here.
	* tree-parloops.cc (gen_parallel_loop): Update SSA form
	after to-exit-first transform, no PHI insertion is necessary.
	(pass_parallelize_loops::execute): Force re-write of the
	virtual operand SSA web.

2022-10-07  Jonathan Wakely  <jwakely@redhat.com>

	* value-range.cc (irange::irange_contains_p): Fix comment typo.

2022-10-07  Eric Botcazou  <ebotcazou@adacore.com>

	* function.cc (thread_prologue_and_epilogue_insns): Update only
	entry and exit blocks when not optimizing.  Remove dead statement.

2022-10-07  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.cc (irange::irange_set): Convert nonzero mask to
	tree.
	(irange::irange_set_anti_range): Same.
	(irange::set): Same.
	(irange::verify_range): Same.
	(irange::contains_p): Same.
	(irange::invert): Same.
	(irange::set_range_from_nonzero_bits): Same.
	(irange::set_nonzero_bits): Same.
	(mask_to_wi): Same.
	(irange::intersect_nonzero_bits): Same.
	(irange::union_nonzero_bits): Same.
	* value-range.h (irange::varying_compatible_p): Same.
	(gt_ggc_mx): Same.
	(gt_pch_nx): Same.
	(irange::set_undefined): Same.
	(irange::set_varying): Same.

2022-10-07  Martin Liska  <mliska@suse.cz>

	* config/i386/i386-protos.h (ix86_binary_operator_ok): Add array
	size to function parameter.
	(ix86_unary_operator_ok): Likewise.

2022-10-07  Martin Liska  <mliska@suse.cz>

	* auto-profile.cc (get_inline_stack): Remove unused variable.

2022-10-07  Jakub Jelinek  <jakub@redhat.com>

	* ipa-prop.h (ipa_constant_data): Fix comment typo.
	* value-range.cc (irange::irange_contains_p): Likewise.
	* value-relation.cc (dom_oracle::set_one_relation): Likewise.
	* gimple-predicate-analysis.cc (predicate::simplify_4): Likewise.
	* tree-inline.cc (remap_ssa_name): Likewise.

2022-10-07  Jakub Jelinek  <jakub@redhat.com>

	* attribs.h (is_attribute_namespace_p): New inline function.
	(lookup_attribute): Document meaning of ATTR_NS equal to "".
	* attribs.cc (remove_attribute): Use is_attribute_namespace_p.
	(private_lookup_attribute): For ATTR_NS "" match either standard
	attribute or "gnu" namespace one.

2022-10-07  Olivier Hainque  <hainque@adacore.com>

	* config/vxworks.h (DWARF_VERSION_DEFAULT): Adjust from
	4 to 3 for VxWorks >= 7.

2022-10-07  Olivier Hainque  <hainque@adacore.com>

	* defaults.h (DWARF_DEFAULT_VERSION): Define if not
	defined already.
	* common.opt (gdwarf-): Use it.
	* doc/tm.texi.in (DWARF_DEFAULT_VERSION): Document.
	* doc/tm.texi: Update accordingly.
	* config/vxworks.h (DWARF_DEFAULT_VERSION): Redefine.
	* config/vxworks.cc: Remove code setting dwarf_version, now
	handled by the DWARF_DEFAULT_VERSION redefinition.

2022-10-07  Olivier Hainque  <hainque@adacore.com>

	* ginclude/stddef.h: #undef offsetof before #define.

2022-10-06  Aldy Hernandez  <aldyh@redhat.com>

	PR tree-optimization/107170
	* vr-values.cc (vr_values::range_of_expr):  Do not die on
	unsupported types.

2022-10-06  Joseph Myers  <joseph@codesourcery.com>

	* doc/invoke.texi (-fno-asm): Update description of effects on
	typeof keyword.

2022-10-06  Eric Botcazou  <ebotcazou@adacore.com>

	* gimple-loop-jam.cc (tree_loop_unroll_and_jam): Bail out for a self
	dependency that is a write-after-write if the access function is not
	affine or constant.

2022-10-06  Eric Botcazou  <ebotcazou@adacore.com>

	* df-scan.cc (df_ref_create_structure): Minor cleanup.

2022-10-06  Richard Biener  <rguenther@suse.de>

	PR middle-end/107115
	* expr.cc (store_expr): Check mems_same_for_tbaa_p before
	eliding a seemingly redundant store.

2022-10-06  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* config/aarch64/atomics.md (*atomic_load<ALLX:mode>_zext<SD_HSDI:mode>):
	New pattern.

2022-10-06  Philipp Tomsich  <philipp.tomsich@vrull.eu>

	* config/aarch64/aarch64-cores.def (AARCH64_CORE): Update
	Ampere-1 core entry.

2022-10-06  Philipp Tomsich  <philipp.tomsich@vrull.eu>

	* config/aarch64/driver-aarch64.cc (readline): Fix off-by-one.

2022-10-06  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/107107
	* tree-ssa-sccvn.cc (visit_reference_op_store): Do not
	affect value-numbering when doing the tail merging
	MODIFY_EXPR lookup.

2022-10-06  Claudiu Zissulescu  <claziss@synopsys.com>

	* config/arc/linux.h (LINK_SPEC): Remove max-page-size and
	common-pave-size.

2022-10-06  Jakub Jelinek  <jakub@redhat.com>

	PR c++/106654
	* internal-fn.def (ASSUME): New internal function.
	* internal-fn.h (expand_ASSUME): Declare.
	* internal-fn.cc (expand_ASSUME): Define.
	* gimplify.cc (gimplify_call_expr): Gimplify IFN_ASSUME.
	* fold-const.h (simple_condition_p): Declare.
	* fold-const.cc (simple_operand_p_2): Rename to ...
	(simple_condition_p): ... this.  Remove forward declaration.
	No longer static.  Adjust function comment and fix a typo in it.
	Adjust recursive call.
	(simple_operand_p): Adjust function comment.
	(fold_truth_andor): Adjust simple_operand_p_2 callers to call
	simple_condition_p.
	* doc/extend.texi: Document assume attribute.  Move fallthrough
	attribute example to its section.

2022-10-06  Stefan Schulze Frielinghaus  <stefansf@linux.ibm.com>

	PR rtl-optimization/107088
	* cselib.cc (new_cselib_val): Skip BImode while keeping track of
	subvalue relations.

2022-10-06  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.cc (frange::set): Call set_nan unconditionally.
	(range_tests_nan): Adjust tests.
	(range_tests_signed_zeros): Same.
	(range_tests_floats): Same.
	* value-range.h (frange::update_nan): Guard with HONOR_NANS.
	(frange::set_nan): Set undefined if !HONOR_NANS.

2022-10-06  Aldy Hernandez  <aldyh@redhat.com>

	* range-op-float.cc (foperator_lt::fold_range): Remove extra check
	to finite_operands_p.
	(foperator_le::fold_range): Same.
	(foperator_gt::fold_range): Same.
	(foperator_ge::fold_range): Same.

2022-10-06  Aldy Hernandez  <aldyh@redhat.com>

	* value-range-pretty-print.cc (vrange_printer::print_real_value):
	Avoid printing INF and NAN twice.

2022-10-05  Segher Boessenkool  <segher@kernel.crashing.org>

	* config/rs6000/constraints.md (wD): Delete.
	* doc/md.texi (Machine Constraints): Adjust.

2022-10-05  Segher Boessenkool  <segher@kernel.crashing.org>

	* config/rs6000/vsx.md (vsx_extract_<mode>): Replace define_insn by a
	define_expand.  Split the contents to...
	(*vsx_extract_<mode>_0): ... this.  Rewrite.
	(*vsx_extract_<mode>_1): ... and this.  Rewrite.

2022-10-05  Segher Boessenkool  <segher@kernel.crashing.org>

	* config/rs6000/vsx.md (*vsx_extract_<mode>_store): Use "n" instead of
	"wD" constraint.

2022-10-05  David Malcolm  <dmalcolm@redhat.com>

	PR analyzer/107060
	* doc/analyzer.texi (__analyzer_get_unknown_ptr): Document.

2022-10-05  Ju-Zhe Zhong  <juzhe.zhong@rivai.ai>

	* config.gcc: Add riscv_vector.h.
	* config/riscv/riscv-builtins.cc: Add RVV builtin types support.
	* config/riscv/riscv-c.cc (riscv_pragma_intrinsic): New function.
	(riscv_register_pragmas): Ditto.
	* config/riscv/riscv-protos.h (riscv_register_pragmas): Ditto.
	(init_builtins): Move declaration from riscv-vector-builtins.h to riscv-protos.h.
	(mangle_builtin_type): Ditto.
	(verify_type_context): Ditto.
	(handle_pragma_vector): New function.
	* config/riscv/riscv-vector-builtins.cc (GTY): New variable.
	(register_vector_type): New function.
	(init_builtins): Add RVV builtin types support.
	(handle_pragma_vector): New function.
	* config/riscv/riscv-vector-builtins.h (GCC_RISCV_V_BUILTINS_H): Change
	name according to file name.
	(GCC_RISCV_VECTOR_BUILTINS_H): Ditto.
	(init_builtins): Remove declaration in riscv-vector-builtins.h.
	(mangle_builtin_type): Ditto.
	(verify_type_context): Ditto.
	* config/riscv/riscv.cc: Adjust for RVV builtin types support.
	* config/riscv/riscv.h (REGISTER_TARGET_PRAGMAS): New macro.
	* config/riscv/t-riscv: Remove redundant file including.
	* config/riscv/riscv_vector.h: New file.

2022-10-05  Aldy Hernandez  <aldyh@redhat.com>

	* range-op.cc (operator_cast::fold_range): Handle truncating casts
	for nonzero masks.

2022-10-05  Martin Liska  <mliska@suse.cz>

	PR c/107156
	* attribs.h (lookup_attribute_by_prefix): Support the attribute
	starting with underscore (_Noreturn).

2022-10-05  Aldy Hernandez  <aldyh@redhat.com>

	PR tree-optimization/107052
	* gimple-range-op.cc (cfn_popcount::fold_range): Take into account
	nonzero bit mask.

2022-10-05  Aldy Hernandez  <aldyh@redhat.com>

	PR tree-optimization/107052
	* range-op.cc (operator_cast::fold_range): Set nonzero mask.

2022-10-05  Eric Botcazou  <ebotcazou@adacore.com>

	PR tree-optimization/106698
	* pointer-query.cc (handle_array_ref): Fix handling of low bound.

2022-10-05  Vineet Gupta  <vineetg@rivosinc.com>

	* config/riscv/riscv-c.cc (riscv_cpu_cpp_builtins):
	Remove __riscv_cmodel_pic, that deprecated in last version.

2022-10-05  David Malcolm  <dmalcolm@redhat.com>

	PR analyzer/107072
	* Makefile.in (ANALYZER_OBJS): Add analyzer/call-summary.o.

2022-10-04  Jakub Jelinek  <jakub@redhat.com>

	* attribs.h (remove_attribute): Declare overload with additional
	attr_ns argument.
	(private_lookup_attribute): Declare overload with additional
	attr_ns and attr_ns_len arguments.
	(lookup_attribute): New overload with additional attr_ns argument.
	* attribs.cc (remove_attribute): New overload with additional
	attr_ns argument.
	(private_lookup_attribute): New overload with additional
	attr_ns and attr_ns_len arguments.

2022-10-04  Jakub Jelinek  <jakub@redhat.com>

	* attribs.cc (handle_ignored_attributes_option, decl_attributes,
	common_function_versions): Use auto_diagnostic_group.

2022-10-04  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.cc (irange::set_nonzero_bits): Remove assert.

2022-10-04  Richard Sandiford  <richard.sandiford@arm.com>

	* config/aarch64/aarch64.h (AARCH64_ISA_RCPC): New macro.
	* config/aarch64/aarch64-arches.def (armv8.3-a): Include RCPC.
	* config/aarch64/aarch64-cores.def (thunderx3t110, zeus, neoverse-v1)
	(neoverse-512tvb, saphira): Remove RCPC from these Armv8.3-A+ cores.
	* config/aarch64/aarch64-c.cc (aarch64_update_cpp_builtins): Define
	__ARM_FEATURE_RCPC when appropriate.

2022-10-04  Tobias Burnus  <tobias@codesourcery.com>

	* doc/invoke.texi (-fopenmp): Mention C++ attribut syntax.
	(-fopenmp-simd): Likewise; update permitted directives.

2022-10-04  Tobias Burnus  <tobias@codesourcery.com>

	* doc/install.texi (Specific): Add missing items to bullet list.
	(amdgcn): Update LLVM requirements, use version not date for newlib.
	(nvptx): Use version not git hash for newlib.

2022-10-04  Aldy Hernandez  <aldyh@redhat.com>

	* value-range-storage.cc (irange_storage_slot::set_irange): Remove
	special case.
	* value-range.cc (irange::irange_set): Adjust for nonzero mask
	being a wide int.
	(irange::irange_set_anti_range): Same.
	(irange::set): Same.
	(irange::verify_range): Same.
	(irange::legacy_equal_p): Same.
	(irange::operator==): Same.
	(irange::contains_p): Same.
	(irange::legacy_intersect): Same.
	(irange::legacy_union): Same.
	(irange::irange_single_pair_union): Call union_nonzero_bits.
	(irange::irange_union): Same.
	(irange::irange_intersect): Call intersect_nonzero_bits.
	(irange::intersect): Adjust for nonzero mask being a wide int.
	(irange::invert): Same.
	(irange::set_nonzero_bits): Same.
	(irange::get_nonzero_bits_from_range): New.
	(irange::set_range_from_nonzero_bits): New.
	(irange::get_nonzero_bits): Adjust for nonzero mask being a wide
	int.
	(irange::intersect_nonzero_bits): Same.
	(irange::union_nonzero_bits): Same.
	(range_tests_nonzero_bits): Remove test.
	* value-range.h (irange::varying_compatible_p): Adjust for nonzero
	mask being a wide int.
	(gt_ggc_mx): Same.
	(gt_pch_nx): Same.
	(irange::set_undefined): Same.
	(irange::set_varying): Same.
	(irange::normalize_kind): Same.

2022-10-04  Aldy Hernandez  <aldyh@redhat.com>

	PR tree-optimization/107130
	* gimple-range-op.cc (class cfn_popcount): Call op_cfn_ffs.
	(class cfn_ffs): New.
	(gimple_range_op_handler::maybe_builtin_call): Separate out
	CASE_CFN_FFS into its own case.

2022-10-03  Sergei Trofimovich  <siarheit@google.com>

	* config/i386/t-i386: Add build-time dependencies against
	i386-builtin-types.inc to i386-builtins.o, i386-expand.o,
	i386-features.o.

2022-10-03  Andrew Stubbs  <ams@codesourcery.com>

	* config/gcn/gcn-valu.md (while_ultsidi): Limit mask length using
	operand 3.
	* doc/md.texi (while_ult): Document new operand 3 usage.
	* internal-fn.cc (expand_while_optab_fn): Set operand 3 when lhs_type
	maps to a non-vector mode.

2022-10-03  Andrew MacLeod  <amacleod@redhat.com>

	PR tree-optimization/107109
	* range-op.cc (adjust_op1_for_overflow): Don't process undefined.

2022-10-03  Christophe Lyon  <christophe.lyon@arm.com>

	* config/arm/mve.md (mve_vrev64q_m_<supf><mode>): Add early
	clobber.
	(mve_vrev64q_m_f<mode>): Likewise.

2022-10-03  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.cc (irange::set_nonzero_bits): Do not pessimize range.
	(range_tests_nonzero_bits): New test.

2022-10-03  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.cc (irange::operator==): Early bail on m_num_ranges
	equal to 0.

2022-10-03  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.cc (irange::legacy_equal_p): Remove nonozero mask
	check when comparing VR_VARYING ranges.

2022-10-03  Aldy Hernandez  <aldyh@redhat.com>

	* ipa-prop.cc (struct ipa_vr_ggc_hash_traits): Do not compare
	incompatible ranges in ipa-prop.

2022-10-02  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/107121
	* tree-cfg.cc (verify_gimple_call): Fix a typo in diagnostics,
	DEFFERED_INIT -> DEFERRED_INIT.

2022-10-02  Marc Poulhiès  <poulhies@adacore.com>

	* config/vxworks-driver.cc: New.
	* config.gcc (*vxworks*): Add vxworks-driver.o in extra_gcc_objs.
	* config/t-vxworks: Add vxworks-driver.o.
	* config/vxworks.h (GCC_DRIVER_HOST_INITIALIZATION): New.

2022-10-02  Olivier Hainque  <hainque@adacore.com>

	* config/vxworks.h (VX_CRTBEGIN_SPEC, VX_CRTEND_SPEC): If
	HAVE_INITFINI_ARRAY_SUPPORT, pick crtstuff objects regardless
	of ENABLE_SHARED_LIBGCC.

2022-10-01  Stafford Horne  <shorne@gmail.com>

	* config/or1k/or1k.cc (TARGET_HAVE_TLS): Only define if
	HAVE_AS_TLS is defined.

2022-10-01  Julian Brown  <julian@codesourcery.com>

	* gimplify.cc (omp_group_base): Fix IF_PRESENT (no_create)
	handling.

2022-10-01  Jeff Law  <jeffreyalaw@gmail.com>

	* config/h8300/h8300.md (HSI2): New iterator.
	(eqne_invert): Similarly.
	* config/h8300/testcompare.md (testhi_upper_z): New pattern.
	(cmpqi_z, cmphi_z, cmpsi_z): Likewise.
	(store_z_qi, store_z_i_qi, store_z_hi, store_z_hi_sb): New
	define_insn_and_splits and/or define_insns.
	(store_z_hi_neg, store_z_hi_and, store_z_<mode>): Likewise.
	(store_z_<mode>_neg, store_z_<mode>_and, store_z): Likewise.

2022-10-01  Jeff Law  <jeffreyalaw@gmail.com>

	* tree-ssa-dom.cc (record_edge_info): Install correct version of
	patch.

2022-10-01  Eugene Rozenfeld  <erozen@microsoft.com>

	* dwarf2out.cc (add_call_src_coords_attributes): Emit discriminators for inlined call sites.

2022-09-30  Jeff Law  <jeffreyalaw@gmail.com>

	* tree-ssa-dom.cc (single_block_loop_p): New function.
	(record_edge_info): Also record equivalences for the outgoing
	edge of a single block loop where the condition is an invariant.

2022-09-30  Jeff Law  <jeffreyalaw@gmail.com>

	* tree-ssa-dom.cc (free_dom_edge_info): Clear e->aux too.
	(free_all_edge_infos): Do not clear e->aux here.

2022-09-30  H.J. Lu  <hjl.tools@gmail.com>

	* target.def (TARGET_C_EXCESS_PRECISION): Document
	-fexcess-precision=16.

2022-09-30  Palmer Dabbelt  <palmer@rivosinc.com>

	* doc/tm.texi (TARGET_C_EXCESS_PRECISION): Add 16.

2022-09-30  Palmer Dabbelt  <palmer@rivosinc.com>

	PR target/106815
	* config/riscv/riscv.cc (riscv_excess_precision): Add support
	for EXCESS_PRECISION_TYPE_FLOAT16.

2022-09-30  Jakub Jelinek  <jakub@redhat.com>

	PR c++/107080
	* config/arm/arm.cc (arm_mangle_type): Mangle just __fp16 as Dh
	and _Float16 as DF16_.
	* config/csky/csky.cc (csky_init_builtins): Fix a comment typo.
	(csky_mangle_type): Mangle __fp16 as Dh and _Float16 as DF16_
	rather than mangling __fp16 as __fp16.

2022-09-30  Lewis Hyatt  <lhyatt@gmail.com>

	PR preprocessor/69543
	* tree-ssa-uninit.cc (warn_uninit): Stop stripping macro tracking
	information away from the diagnostic location.
	(maybe_warn_read_write_only): Likewise.
	(maybe_warn_operand): Likewise.

2022-09-30  Jakub Jelinek  <jakub@redhat.com>

	PR c++/107080
	* config/aarch64/aarch64.cc (aarch64_mangle_type): Mangle just __fp16
	as Dh and _Float16 as DF16_.

2022-09-30  Jakub Jelinek  <jakub@redhat.com>

	PR c++/107080
	* config/i386/i386.cc (ix86_mangle_type): Always return NULL
	for float128_type_node or float64x_type_node, don't check
	float128t_type_node later on.
	* config/ia64/ia64.cc (ia64_mangle_type): Always return NULL
	for float128_type_node or float64x_type_node.
	* config/rs6000/rs6000.cc (rs6000_mangle_type): Likewise.
	Don't check float128_type_node later on.
	* config/s390/s390.cc (s390_mangle_type): Don't use
	TYPE_MAIN_VARIANT on type which was set to TYPE_MAIN_VARIANT
	a few lines earlier.

2022-09-30  Torbjörn SVENSSON  <torbjorn.svensson@foss.st.com>
	    Yvan ROUX   <yvan.roux@foss.st.com>

	* doc/sourcebuild.texi: Document new vma_equals_lma effective
	target check.

2022-09-30  Jiawei  <jiawei@iscas.ac.cn>

	* config/riscv/riscv.cc (riscv_file_start): New .option.
	* config/riscv/riscv.opt: New options.
	* doc/invoke.texi: New definations.

2022-09-30  Kewen Lin  <linkw@linux.ibm.com>

	PR target/99888
	PR target/105649
	* doc/invoke.texi (option -fpatchable-function-entry): Adjust the
	documentation for PowerPC ELFv2 ABI dual entry points.
	* config/rs6000/rs6000-internal.h
	(rs6000_print_patchable_function_entry): New function declaration.
	* config/rs6000/rs6000-logue.cc (rs6000_output_function_prologue):
	Support patchable-function-entry by emitting nops before and after
	local entry for the function that needs global entry.
	* config/rs6000/rs6000.cc (rs6000_print_patchable_function_entry): Skip
	the function that needs global entry till global entry has been
	emitted.
	* config/rs6000/rs6000.h (struct machine_function): New bool member
	global_entry_emitted.

2022-09-30  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/107095
	* tree-ssa-dse.cc (initialize_ao_ref_for_dse): Use data arg
	for .MASK_STORE size.

2022-09-29  Andrew MacLeod  <amacleod@redhat.com>

	* range-op.cc (plus_minus_ranges): New.
	(adjust_op1_for_overflow): New.
	(operator_plus::op1_range): Use new adjustment.
	(operator_plus::op2_range): Ditto.
	(operator_minus::op1_range): Ditto.
	* value-relation.h (relation_lt_le_gt_ge_p): New.

2022-09-29  Andrew MacLeod  <amacleod@redhat.com>

	* gimple-range-gori.cc (gori_compute::refine_using_relation): New.
	(gori_compute::compute_operand1_range): Invoke
	refine_using_relation when applicable.
	(gori_compute::compute_operand2_range): Ditto.
	* gimple-range-gori.h (class gori_compute): Adjust prototypes.

2022-09-29  Andrew MacLeod  <amacleod@redhat.com>

	* gimple-range-gori.cc (ori_compute::compute_operand_range):
	Create a relation record and pass it along when possible.
	(gori_compute::compute_operand1_range): Pass relation along.
	(gori_compute::compute_operand2_range): Ditto.
	(gori_compute::compute_operand1_and_operand2_range): Ditto.
	* gimple-range-gori.h (class gori_compute): Adjust prototypes.
	* gimple-range-op.cc (gimple_range_op_handler::calc_op1): Pass
	relation to op1_range call.
	(gimple_range_op_handler::calc_op2): Pass relation to op2_range call.
	* gimple-range-op.h (class gimple_range_op_handler): Adjust
	prototypes.

2022-09-29  Andrew MacLeod  <amacleod@redhat.com>

	* value-relation.cc (class value_relation): Move to .h file.
	(value_relation::set_relation): Ditto.
	(value_relation::value_relation): ditto.
	* value-relation.h (class value_relation): Move from .cc file.
	(value_relation::set_relation): Ditto
	(value_relation::value_relation): Ditto.

2022-09-29  Andrew MacLeod  <amacleod@redhat.com>

	* range-op.cc (operator_minus::op2_range): Check for undefined.
	(operator_mult::op1_range): Ditto.
	(operator_exact_divide::op1_range): Ditto.
	(operator_lshift::op1_range): Ditto.
	(operator_rshift::op1_range): Ditto.
	(operator_cast::op1_range): Ditto.
	(operator_bitwise_and::op1_range): Ditto.
	(operator_bitwise_or::op1_range): Ditto.
	(operator_trunc_mod::op1_range): Ditto.
	(operator_trunc_mod::op2_range): Ditto.
	(operator_bitwise_not::op1_range): Ditto.
	(pointer_or_operator::op1_range): Ditto.
	(range_op_handler::op1_range): Ditto.
	(range_op_handler::op2_range): Ditto.

2022-09-29  Andrew Stubbs  <ams@codesourcery.com>

	* config/gcn/gcn.cc (gcn_simd_clone_compute_vecsize_and_simdlen):
	Remove unused elt_bits variable.

2022-09-29  Olivier Hainque  <hainque@adacore.com>

	* config/vxworks.h: Add comment on our use of
	HAVE_INITFINI_ARRAY_SUPPORT.

2022-09-29  Olivier Hainque  <hainque@adacore.com>

	* config/aarch64/t-aarch64-vxworks: Request multilib
	variants for mcmodel=large.

2022-09-29  Olivier Hainque  <hainque@adacore.com>

	* config/rs6000/vxworks.h (TARGET_FLOAT128_ENABLE_TYPE): Remove
	resetting to 0.

2022-09-29  Olivier Hainque  <hainque@adacore.com>

	* config/vx-common.h (DWARF2_UNWIND_INFO): #define to 0
	when ARM_UNWIND_INFO is set.

2022-09-29  Julian Brown  <julian@codesourcery.com>

	PR middle-end/107028
	* gimplify.cc (omp_check_mapping_compatibility,
	oacc_resolve_clause_dependencies): New functions.
	(omp_accumulate_sibling_list): Remove redundant duplicate clause
	detection for OpenACC.
	(build_struct_sibling_lists): Skip deleted groups.  Don't build sibling
	list for struct variables that are fully mapped on the same directive
	for OpenACC.
	(gimplify_scan_omp_clauses): Call oacc_resolve_clause_dependencies.

2022-09-29  Jose E. Marchesi  <jose.marchesi@oracle.com>

	PR middle-end/25521
	* varasm.cc (categorize_decl_for_section): Place `const volatile'
	objects in read-only sections.
	(default_select_section): Likewise.

2022-09-29  Richard Sandiford  <richard.sandiford@arm.com>

	* tree-data-ref.cc (dr_may_alias_p): Use to_poly_widest instead
	of to_widest.

2022-09-29  Richard Sandiford  <richard.sandiford@arm.com>

	* config/aarch64/aarch64.h (TARGET_CRYPTO, TARGET_SHA3, TARGET_SM4)
	(TARGET_DOTPROD): Don't depend on TARGET_SIMD.
	(TARGET_AES, TARGET_SHA2): Likewise.  Remove TARGET_CRYPTO test.
	(TARGET_FP_F16INST): Don't depend on TARGET_FLOAT.
	(TARGET_SVE2, TARGET_SVE_F32MM, TARGET_SVE_F64MM): Don't depend
	on TARGET_SVE.
	(TARGET_SVE2_AES, TARGET_SVE2_BITPERM, TARGET_SVE2_SHA3)
	(TARGET_SVE2_SM4): Don't depend on TARGET_SVE2.
	(TARGET_F32MM, TARGET_F64MM): Delete.
	* config/aarch64/aarch64-c.cc (aarch64_update_cpp_builtins): Guard
	float macros with just TARGET_FLOAT rather than TARGET_FLOAT
	|| TARGET_SIMD.
	* config/aarch64/aarch64-simd.md (copysign<mode>3): Depend
	only on TARGET_SIMD, rather than TARGET_FLOAT && TARGET_SIMD.
	(aarch64_crypto_aes<aes_op>v16qi): Depend only on TARGET_AES,
	rather than TARGET_SIMD && TARGET_AES.
	(aarch64_crypto_aes<aesmc_op>v16qi): Likewise.
	(*aarch64_crypto_aese_fused): Likewise.
	(*aarch64_crypto_aesd_fused): Likewise.
	(aarch64_crypto_pmulldi): Likewise.
	(aarch64_crypto_pmullv2di): Likewise.
	(aarch64_crypto_sha1hsi): Likewise TARGET_SHA2.
	(aarch64_crypto_sha1hv4si): Likewise.
	(aarch64_be_crypto_sha1hv4si): Likewise.
	(aarch64_crypto_sha1su1v4si): Likewise.
	(aarch64_crypto_sha1<sha1_op>v4si): Likewise.
	(aarch64_crypto_sha1su0v4si): Likewise.
	(aarch64_crypto_sha256h<sha256_op>v4si): Likewise.
	(aarch64_crypto_sha256su0v4si): Likewise.
	(aarch64_crypto_sha256su1v4si): Likewise.
	(aarch64_crypto_sha512h<sha512_op>qv2di): Likewise TARGET_SHA3.
	(aarch64_crypto_sha512su0qv2di): Likewise.
	(aarch64_crypto_sha512su1qv2di, eor3q<mode>4): Likewise.
	(aarch64_rax1qv2di, aarch64_xarqv2di, bcaxq<mode>4): Likewise.
	(aarch64_sm3ss1qv4si): Likewise TARGET_SM4.
	(aarch64_sm3tt<sm3tt_op>qv4si): Likewise.
	(aarch64_sm3partw<sm3part_op>qv4si): Likewise.
	(aarch64_sm4eqv4si, aarch64_sm4ekeyqv4si): Likewise.
	* config/aarch64/aarch64.md (<FLOATUORS:optab>dihf2)
	(copysign<GPF:mode>3, copysign<GPF:mode>3_insn)
	(xorsign<mode>3): Remove redundant TARGET_FLOAT condition.

2022-09-29  Richard Sandiford  <richard.sandiford@arm.com>

	* config/aarch64/aarch64.opt (aarch64_asm_isa_flags): New variable.
	* config/aarch64/aarch64.h (aarch64_asm_isa_flags)
	(aarch64_isa_flags): Redefine as read-only macros.
	(TARGET_SIMD, TARGET_FLOAT, TARGET_SVE): Don't depend on
	!TARGET_GENERAL_REGS_ONLY.
	* common/config/aarch64/aarch64-common.cc
	(aarch64_set_asm_isa_flags): New function.
	(aarch64_handle_option): Call it when updating -mgeneral-regs.
	* config/aarch64/aarch64-protos.h (aarch64_simd_switcher): Replace
	m_old_isa_flags with m_old_asm_isa_flags.
	(aarch64_set_asm_isa_flags): Declare.
	* config/aarch64/aarch64-builtins.cc
	(aarch64_simd_switcher::aarch64_simd_switcher)
	(aarch64_simd_switcher::~aarch64_simd_switcher): Save and restore
	aarch64_asm_isa_flags instead of aarch64_isa_flags.
	* config/aarch64/aarch64-sve-builtins.cc
	(check_required_extensions): Use aarch64_asm_isa_flags instead
	of aarch64_isa_flags.
	* config/aarch64/aarch64.cc (aarch64_set_asm_isa_flags): New function.
	(aarch64_override_options, aarch64_handle_attr_arch)
	(aarch64_handle_attr_cpu, aarch64_handle_attr_isa_flags): Use
	aarch64_set_asm_isa_flags to set the ISA flags.
	(aarch64_option_print, aarch64_declare_function_name)
	(aarch64_start_file): Use aarch64_asm_isa_flags instead
	of aarch64_isa_flags.
	(aarch64_can_inline_p): Check aarch64_asm_isa_flags as well as
	aarch64_isa_flags.

2022-09-29  Richard Sandiford  <richard.sandiford@arm.com>

	* common/config/aarch64/aarch64-common.cc (all_extensions):
	Include the feature flag in flags_on and flags_off.
	(aarch64_parse_extension): Update accordingly.
	(aarch64_get_extension_string_for_isa_flags): Likewise.

2022-09-29  Richard Sandiford  <richard.sandiford@arm.com>

	* common/config/aarch64/aarch64-common.cc: Use aarch64_feature_flags
	for feature flags throughout.
	* config/aarch64/aarch64-protos.h: Likewise.
	* config/aarch64/aarch64-sve-builtins.h: Likewise.
	* config/aarch64/aarch64-sve-builtins.cc: Likewise.
	* config/aarch64/aarch64.cc: Likewise.
	* config/aarch64/aarch64.opt: Likewise.
	* config/aarch64/driver-aarch64.cc: Likewise.

2022-09-29  Richard Sandiford  <richard.sandiford@arm.com>

	* common/config/aarch64/aarch64-common.cc (aarch64_option_extension)
	(processor_name_to_arch, arch_to_arch_name): Remove const from
	member variables.
	(all_extensions, all_cores, all_architectures): Make a constexpr.
	* config/aarch64/aarch64.cc (processor): Remove const from
	member variables.
	(all_architectures): Make a constexpr.
	* config/aarch64/driver-aarch64.cc (aarch64_core_data)
	(aarch64_arch_driver_info): Remove const from member variables.
	(aarch64_cpu_data, aarch64_arches): Make a constexpr.
	(get_arch_from_id): Return a pointer to const.
	(host_detect_local_cpu): Update accordingly.

2022-09-29  Richard Sandiford  <richard.sandiford@arm.com>

	* common/config/aarch64/aarch64-common.cc (processor_name_to_arch)
	(arch_to_arch_name): Use const char * instead of std::string.

2022-09-29  Richard Sandiford  <richard.sandiford@arm.com>

	* common/config/aarch64/aarch64-common.cc
	(TARGET_OPTION_INIT_STRUCT): Delete.
	(aarch64_option_extension): Remove is_synthetic_flag.
	(all_extensions): Update accordingly.
	(all_extensions_by_on, opt_ext, opt_ext_cmp): Delete.
	(aarch64_option_init_struct, aarch64_contains_opt): Delete.
	(aarch64_get_extension_string_for_isa_flags): Rewrite to use
	all_extensions instead of all_extensions_on.

2022-09-29  Richard Sandiford  <richard.sandiford@arm.com>

	* config/aarch64/aarch64-option-extensions.def: Switch to a new format.
	* config/aarch64/aarch64-cores.def: Use the same format to specify
	lists of features.
	* config/aarch64/aarch64-arches.def: Likewise, moving that information
	from aarch64.h.
	* config/aarch64/aarch64-opts.h (aarch64_feature_flags): New typedef.
	* config/aarch64/aarch64.h (aarch64_feature): New class enum.
	Turn AARCH64_FL_* macros into constexprs, getting the definitions
	from aarch64-option-extensions.def.  Remove AARCH64_FL_FOR_* macros.
	* common/config/aarch64/aarch64-common.cc: Include
	aarch64-feature-deps.h.
	(all_extensions): Update for new .def format.
	(all_extensions_by_on, all_cores, all_architectures): Likewise.
	* config/aarch64/driver-aarch64.cc: Include aarch64-feature-deps.h.
	(aarch64_extensions): Update for new .def format.
	(aarch64_cpu_data, aarch64_arches): Likewise.
	* config/aarch64/aarch64.cc: Include aarch64-feature-deps.h.
	(all_architectures, all_cores): Update for new .def format.
	* config/aarch64/aarch64-sve-builtins.cc
	(check_required_extensions): Likewise.
	* config/aarch64/aarch64-feature-deps.h: New file.

2022-09-29  Richard Sandiford  <richard.sandiford@arm.com>

	* config/aarch64/aarch64-option-extensions.def: Move crypto
	after sha2.

2022-09-29  Richard Sandiford  <richard.sandiford@arm.com>

	* config/aarch64/aarch64-option-extensions.def (dotprod): Depend
	on fp as well as simd.
	(sha3): Likewise.
	(aes): Likewise.  Make +noaes disable crypto.
	(sha2): Likewise +nosha2.  Also make +nosha2 disable sha3 and
	sve2-sha3.
	(sve2-sha3): Depend on sha2 as well as sha3.

2022-09-29  Richard Sandiford  <richard.sandiford@arm.com>

	PR target/107025
	* config/aarch64/aarch64.h (oAARCH64_FL_RCPC8_4): Delete.
	(AARCH64_FL_FOR_V8_4A): Update accordingly.
	(AARCH64_ISA_RCPC8_4): Use AARCH64_FL_V8_4A directly.
	* config/aarch64/aarch64-cores.def (thunderx3t110): Remove
	AARCH64_FL_RCPC8_4.

2022-09-29  Richard Sandiford  <richard.sandiford@arm.com>

	* config/aarch64/aarch64-cores.def: Remove AARCH64_FL_FOR_<ARCH>
	from the flags field.
	* common/config/aarch64/aarch64-common.cc (all_cores): Add it
	here instead.
	* config/aarch64/aarch64.cc (all_cores): Likewise.
	* config/aarch64/driver-aarch64.cc (all_cores): Likewise.

2022-09-29  Richard Sandiford  <richard.sandiford@arm.com>

	* config.gcc: Remove dead aarch64-option-extensions.def code.
	* config/aarch64/aarch64-arches.def: Update comment.

2022-09-29  Richard Sandiford  <richard.sandiford@arm.com>

	* config/aarch64/aarch64-arches.def: Add a leading "V" to the
	ARCH_IDENT fields.
	* config/aarch64/aarch64-cores.def: Update accordingly.
	* common/config/aarch64/aarch64-common.cc (all_cores): Likewise.
	* config/aarch64/aarch64.cc (all_cores): Likewise.
	* config/aarch64/driver-aarch64.cc (aarch64_arches): Skip the
	leading "V".

2022-09-29  Richard Sandiford  <richard.sandiford@arm.com>

	* config/aarch64/aarch64.h (AARCH64_FL_FOR_ARCH8): Rename to...
	(AARCH64_FL_FOR_V8A): ...this.
	(AARCH64_FL_FOR_ARCH8_1): Rename to...
	(AARCH64_FL_FOR_V8_1A): ...this.
	(AARCH64_FL_FOR_ARCH8_2): Rename to...
	(AARCH64_FL_FOR_V8_2A): ...this.
	(AARCH64_FL_FOR_ARCH8_3): Rename to...
	(AARCH64_FL_FOR_V8_3A): ...this.
	(AARCH64_FL_FOR_ARCH8_4): Rename to...
	(AARCH64_FL_FOR_V8_4A): ...this.
	(AARCH64_FL_FOR_ARCH8_5): Rename to...
	(AARCH64_FL_FOR_V8_5A): ...this.
	(AARCH64_FL_FOR_ARCH8_6): Rename to...
	(AARCH64_FL_FOR_V8_6A): ...this.
	(AARCH64_FL_FOR_ARCH8_7): Rename to...
	(AARCH64_FL_FOR_V8_7A): ...this.
	(AARCH64_FL_FOR_ARCH8_8): Rename to...
	(AARCH64_FL_FOR_V8_8A): ...this.
	(AARCH64_FL_FOR_ARCH8_R): Rename to...
	(AARCH64_FL_FOR_V8R): ...this.
	(AARCH64_FL_FOR_ARCH9): Rename to...
	(AARCH64_FL_FOR_V9A): ...this.
	(AARCH64_FL_FOR_ARCH9_1): Rename to...
	(AARCH64_FL_FOR_V9_1A): ...this.
	(AARCH64_FL_FOR_ARCH9_2): Rename to...
	(AARCH64_FL_FOR_V9_2A): ...this.
	(AARCH64_FL_FOR_ARCH9_3): Rename to...
	(AARCH64_FL_FOR_V9_3A): ...this.
	* common/config/aarch64/aarch64-common.cc (all_cores): Update
	accordingly.
	* config/aarch64/aarch64-arches.def: Likewise.
	* config/aarch64/aarch64-cores.def: Likewise.
	* config/aarch64/aarch64.cc (all_cores): Likewise.

2022-09-29  Richard Sandiford  <richard.sandiford@arm.com>

	* config/aarch64/aarch64.h (AARCH64_FL_V8_1, AARCH64_FL_V8_2)
	(AARCH64_FL_V8_3, AARCH64_FL_V8_4, AARCH64_FL_V8_5, AARCH64_FL_V8_6)
	(AARCH64_FL_V9, AARCH64_FL_V8_7, AARCH64_FL_V8_8, AARCH64_FL_V9_1)
	(AARCH64_FL_V9_2, AARCH64_FL_V9_3): Add "A" to the end of the name.
	(AARCH64_FL_V8_R): Rename to AARCH64_FL_V8R.
	(AARCH64_FL_FOR_ARCH8_1, AARCH64_FL_FOR_ARCH8_2): Update accordingly.
	(AARCH64_FL_FOR_ARCH8_3, AARCH64_FL_FOR_ARCH8_4): Likewise.
	(AARCH64_FL_FOR_ARCH8_5, AARCH64_FL_FOR_ARCH8_6): Likewise.
	(AARCH64_FL_FOR_ARCH8_7, AARCH64_FL_FOR_ARCH8_8): Likewise.
	(AARCH64_FL_FOR_ARCH8_R, AARCH64_FL_FOR_ARCH9): Likewise.
	(AARCH64_FL_FOR_ARCH9_1, AARCH64_FL_FOR_ARCH9_2): Likewise.
	(AARCH64_FL_FOR_ARCH9_3, AARCH64_ISA_V8_2A, AARCH64_ISA_V8_3A)
	(AARCH64_ISA_V8_4A, AARCH64_ISA_V8_5A, AARCH64_ISA_V8_6A): Likewise.
	(AARCH64_ISA_V8R, AARCH64_ISA_V9A, AARCH64_ISA_V9_1A): Likewise.
	(AARCH64_ISA_V9_2A, AARCH64_ISA_V9_3A): Likewise.

2022-09-29  Richard Sandiford  <richard.sandiford@arm.com>

	* config/aarch64/aarch64.h (AARCH64_ISA_V8_2, AARCH64_ISA_V8_3)
	(AARCH64_ISA_V8_4, AARCH64_ISA_V8_5, AARCH64_ISA_V8_6)
	(AARCH64_ISA_V9, AARCH64_ISA_V9_1, AARCH64_ISA_V9_2)
	(AARCH64_ISA_V9_3): Add "A" to the end of the name.
	(AARCH64_ISA_V8_R): Rename to AARCH64_ISA_V8R.
	(TARGET_ARMV8_3, TARGET_JSCVT, TARGET_FRINT, TARGET_MEMTAG): Update
	accordingly.
	* common/config/aarch64/aarch64-common.cc
	(aarch64_get_extension_string_for_isa_flags): Likewise.
	* config/aarch64/aarch64-c.cc
	(aarch64_define_unconditional_macros): Likewise.

2022-09-29  Richard Sandiford  <richard.sandiford@arm.com>

	* Makefile.in (GTFILES): Add OPTIONS_H_EXTRA.

2022-09-29  Jakub Jelinek  <jakub@redhat.com>

	PR bootstrap/107059
	* cppdefault.cc (cpp_include_defaults): If SYSROOT_HEADERS_SUFFIX_SPEC
	isn't defined, add FIXED_INCLUDE_DIR entry with multilib flag 2
	before FIXED_INCLUDE_DIR entry with multilib flag 0.
	* gcc.cc (do_spec_1): If multiarch_dir, add
	include-fixed/multiarch_dir paths before include-fixed paths.

2022-09-29  Martin Liska  <mliska@suse.cz>

	PR driver/106897
	* common.opt: Add -gz=zstd value.
	* configure.ac: Detect --compress-debug-sections=zstd
	for both linker and assembler.
	* configure: Regenerate.
	* gcc.cc (LINK_COMPRESS_DEBUG_SPEC): Handle -gz=zstd.
	(ASM_COMPRESS_DEBUG_SPEC): Likewise.

2022-09-29  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/105646
	* tree-ssa-uninit.cc (warn_uninitialized_vars): Pre-compute
	the set of fallthru reachable blocks from function entry
	and use that to determine wlims.always_executed.

2022-09-29  liuhongt  <hongtao.liu@intel.com>

	PR tree-optimization/107055
	* tree-vect-loop-manip.cc (vect_can_advance_ivs_p): Check for
	nonlinear induction variables.
	* tree-vect-loop.cc (vect_can_peel_nonlinear_iv_p): New
	functions.
	(vectorizable_nonlinear_induction): Put part codes into
	vect_can_peel_nonlinear_iv_p.
	* tree-vectorizer.h (vect_can_peel_nonlinear_iv_p): Declare.

2022-09-28  Eugene Rozenfeld  <erozen@microsoft.com>

	* basic-block.h: Remove discriminator from basic blocks.
	* cfghooks.cc (split_block_1): Remove discriminator from basic blocks.
	* final.cc (final_start_function_1): Switch from per-bb to per statement
	discriminator.
	(final_scan_insn_1): Don't keep track of basic block discriminators.
	(compute_discriminator): Switch from basic block discriminators to
	instruction discriminators.
	(insn_discriminator): New function to return instruction discriminator.
	(notice_source_line): Use insn_discriminator.
	* gimple-pretty-print.cc (dump_gimple_bb_header): Remove dumping of
	basic block discriminators.
	* gimple-streamer-in.cc (input_bb): Remove reading of basic block
	discriminators.
	* gimple-streamer-out.cc (output_bb): Remove writing of basic block
	discriminators.
	* input.cc (make_location): Pass 0 discriminator to COMBINE_LOCATION_DATA.
	(location_with_discriminator): New function to combine locus with
	a discriminator.
	(has_discriminator): New function to check if a location has a discriminator.
	(get_discriminator_from_loc): New function to get the discriminator
	from a location.
	* input.h: Declarations of new functions.
	* lto-streamer-in.cc (cmp_loc): Use discriminators in location comparison.
	(apply_location_cache): Keep track of current discriminator.
	(input_location_and_block): Read discriminator from stream.
	* lto-streamer-out.cc (clear_line_info): Set current discriminator to
	UINT_MAX.
	(lto_output_location_1): Write discriminator to stream.
	* lto-streamer.h: Add discriminator to cached_location.
	Add current_discr to lto_location_cache.
	Add current_discr to output_block.
	* print-rtl.cc (print_rtx_operand_code_i): Print discriminator.
	* rtl.h: Add extern declaration of insn_discriminator.
	* tree-cfg.cc (assign_discriminator): New function to assign a unique
	discriminator value to all statements in a basic block that have the given
	line number.
	(assign_discriminators): Assign discriminators to statement locations.
	* tree-pretty-print.cc (dump_location): Dump discriminators.
	* tree.cc (set_block): Preserve discriminator when setting block.
	(set_source_range): Preserve discriminator when setting source range.

2022-09-28  H.J. Lu  <hjl.tools@gmail.com>

	PR target/107061
	* config/i386/predicates.md (encodekey128_operation): Check
	XMM4-XMM6 as clobbered.
	(encodekey256_operation): Likewise.
	* config/i386/sse.md (encodekey128u32): Clobber XMM4-XMM6.
	(encodekey256u32): Likewise.

2022-09-28  Ju-Zhe Zhong  <juzhe.zhong@rivai.ai>

	* config.gcc: Add riscv-vector-builtins.o.
	* config/riscv/riscv-builtins.cc (riscv_init_builtins): Add RVV builtin function.
	* config/riscv/riscv-protos.h (riscv_v_ext_enabled_vector_mode_p): New function.
	* config/riscv/riscv.cc (ENTRY): New macro.
	(riscv_v_ext_enabled_vector_mode_p): New function.
	(riscv_mangle_type): Add RVV mangle.
	(riscv_vector_mode_supported_p): Adjust RVV machine mode.
	(riscv_verify_type_context): Add context check for RVV.
	(riscv_vector_alignment): Add RVV alignment target hook support.
	(TARGET_VECTOR_MODE_SUPPORTED_P): New target hook support.
	(TARGET_VERIFY_TYPE_CONTEXT): Ditto.
	(TARGET_VECTOR_ALIGNMENT): Ditto.
	* config/riscv/t-riscv: Add riscv-vector-builtins.o
	* config/riscv/riscv-vector-builtins.cc: New file.
	* config/riscv/riscv-vector-builtins.def: New file.
	* config/riscv/riscv-vector-builtins.h: New file.
	* config/riscv/riscv-vector-switch.def: New file.

2022-09-28  Stefan Schulze Frielinghaus  <stefansf@linux.ibm.com>

	* var-tracking.cc (vt_add_function_parameter): Add entry values
	up to maximal register mode.

2022-09-28  Stefan Schulze Frielinghaus  <stefansf@linux.ibm.com>

	* cselib.cc (new_cselib_val): Keep track of further subvalue
	relations.

2022-09-28  Andrea Corallo  <andrea.corallo@arm.com>

	* config/arm/arm-c.cc (arm_cpu_builtins): Define
	__ARM_FEATURE_AES and __ARM_FEATURE_SHA2.

2022-09-28  Xi Ruoyao  <xry111@xry111.site>

	PR tree-optimization/105414
	* config/loongarch/loongarch.md (UNSPEC_FMAX): New unspec.
	(UNSPEC_FMIN): Likewise.
	(fmax<mode>3): Use UNSPEC_FMAX instead of smax.
	(fmin<mode>3): Use UNSPEC_FMIN instead of smin.

2022-09-28  Lulu Cheng  <chenglulu@loongson.cn>

	* config/loongarch/loongarch.cc (loongarch_asan_shadow_offset):
	Fixed typo in "asan_mapping.h".

2022-09-28  H.J. Lu  <hjl.tools@gmail.com>

	PR middle-end/58245
	* calls.cc: Include "tree-eh.h".
	(expand_call): Check stack canary before throwing exception.

2022-09-27  Eugene Rozenfeld  <erozen@microsoft.com>

	* ipa-cp.cc (good_cloning_opportunity_p): Fix profile count comparison.

2022-09-27  Kim Kuparinen  <kim.kuparinen@rightware.com>

	* doc/invoke.texi: Update ABI version info.

2022-09-27  Aldy Hernandez  <aldyh@redhat.com>

	* gimple-range-op.cc (cfn_popcount): Calculate the popcount of a
	singleton.

2022-09-27  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.cc (irange::set_nonzero_bits): Set range when known.

2022-09-27  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.h (irange::set): New version taking wide_int_ref.

2022-09-27  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/107029
	* tree-ssa-reassoc.cc (optimize_range_tests_cmp_bitwise): Treat
	OFFSET_TYPE like POINTER_TYPE, except that OFFSET_TYPE may be
	signed and so can trigger even the (b % 4) == 3 case.

2022-09-27  Jeff Law  <jeffreyalaw@gmail.com>

	* cfgrtl.cc (fixup_reorder_chain): Verify that simple_return
	and return are available before trying to use them.

2022-09-27  Jakub Jelinek  <jakub@redhat.com>

	PR c++/106652
	PR c++/85518
	* tree-core.h (enum tree_index): Add TI_FLOAT128T_TYPE
	enumerator.
	* tree.h (float128t_type_node): Define.
	* tree.cc (build_common_tree_nodes): Initialize float128t_type_node.
	* builtins.def (DEF_FLOATN_BUILTIN): Adjust comment now that
	_Float<N> is supported in C++ too.
	* config/i386/i386.cc (ix86_mangle_type): Only mangle as "g"
	float128t_type_node.
	* config/i386/i386-builtins.cc (ix86_init_builtin_types): Use
	float128t_type_node for __float128 instead of float128_type_node
	and create it if NULL.
	* config/i386/avx512fp16intrin.h (_mm_setzero_ph, _mm256_setzero_ph,
	_mm512_setzero_ph, _mm_set_sh, _mm_load_sh): Use 0.0f16 instead of
	0.0f.
	* config/ia64/ia64.cc (ia64_init_builtins): Use
	float128t_type_node for __float128 instead of float128_type_node
	and create it if NULL.
	* config/rs6000/rs6000-c.cc (is_float128_p): Also return true
	for float128t_type_node if non-NULL.
	* config/rs6000/rs6000.cc (rs6000_mangle_type): Don't mangle
	float128_type_node as "u9__ieee128".
	* config/rs6000/rs6000-builtin.cc (rs6000_init_builtins): Use
	float128t_type_node for __float128 instead of float128_type_node
	and create it if NULL.

2022-09-26  Martin Liska  <mliska@suse.cz>

	* doc/invoke.texi: Add missing dash for
	Wanalyzer-exposure-through-uninit-copy.

2022-09-26  Aldy Hernandez  <aldyh@redhat.com>

	PR tree-optimization/107009
	* range-op.cc (operator_bitwise_and::op1_range): Optimize 0 = x & MASK.
	(range_op_bitwise_and_tests): New test.

2022-09-26  Aldy Hernandez  <aldyh@redhat.com>

	PR tree-optimization/107009
	* tree-ssa-dom.cc
	(dom_opt_dom_walker::set_global_ranges_from_unreachable_edges):
	Iterate over exports.

2022-09-26  Thomas Schwinge  <thomas@codesourcery.com>

	* config.gcc (with_arch) [nvptx]: Allow '--with-arch' to override
	the default.
	* config/nvptx/gen-multilib-matches.sh: New.
	* config/nvptx/t-nvptx (MULTILIB_OPTIONS, MULTILIB_MATCHES)
	(MULTILIB_EXCEPTIONS): Handle this.
	* doc/install.texi (Specific) <nvptx-*-none>: Document this.
	* doc/invoke.texi (Nvidia PTX Options): Likewise.

2022-09-26  Thomas Schwinge  <thomas@codesourcery.com>

	* config.gcc (TM_MULTILIB_CONFIG) [nvptx]: Set to '$with_arch'.
	* config/nvptx/t-nvptx (MULTILIB_OPTIONS, MULTILIB_MATCHES)
	(MULTILIB_EXCEPTIONS): Handle it.

2022-09-26  Thomas Schwinge  <thomas@codesourcery.com>

	* config.gcc (with_arch) [nvptx]: Set to 'sm_30'.
	* config/nvptx/nvptx.cc (nvptx_option_override): Assert that
	'-misa' appeared.
	* config/nvptx/nvptx.h (OPTION_DEFAULT_SPECS): Define.
	* config/nvptx/nvptx.opt (misa=): Remove 'Init'.

2022-09-26  Thomas Schwinge  <thomas@codesourcery.com>

	* config/nvptx/nvptx.h (ASM_SPEC): Define.

2022-09-26  Jeff Law  <jeffreyalaw@gmail.com>

	* cfgcleanup.cc (bb_is_just_return): No longer static.
	* cfgcleanup.h (bb_is_just_return): Add prototype.
	* cfgrtl.cc (fixup_reorder_chain): Do not create an
	unconditional jump to a return block.  Conditionally
	remove unreachable blocks.

2022-09-26  Tobias Burnus  <tobias@codesourcery.com>

	PR middle-end/106982
	* omp-low.cc (lower_oacc_reductions): Add some unshare_expr.

2022-09-26  Martin Liska  <mliska@suse.cz>

	* config/s390/s390.cc (s390_rtx_costs): Remove dest variable
	and use only dst.

2022-09-26  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* config/aarch64/aarch64-arches.def (armv9.1-a): Define.
	(armv9.2-a): Likewise.
	(armv9.3-a): Likewise.
	* config/aarch64/aarch64.h (AARCH64_FL_V9_1): Likewise.
	(AARCH64_FL_V9_2): Likewise.
	(AARCH64_FL_V9_3): Likewise.
	(AARCH64_FL_FOR_ARCH9_1): Likewise.
	(AARCH64_FL_FOR_ARCH9_2): Likewise.
	(AARCH64_FL_FOR_ARCH9_3): Likewise.
	(AARCH64_ISA_V9_1): Likewise.
	(AARCH64_ISA_V9_2): Likewise.
	(AARCH64_ISA_V9_3): Likewise.
	* doc/invoke.texi (AArch64 Options): Document armv9.1-a, armv9.2-a,
	armv9.3-a values to -march.

2022-09-26  Martin Liska  <mliska@suse.cz>

	* value-range.cc (tree_compare): Remove unused function.

2022-09-26  Kewen Lin  <linkw@linux.ibm.com>

	PR target/96072
	* config/rs6000/rs6000-logue.cc (rs6000_emit_epilogue): Update the
	condition for adding REG_CFA_DEF_CFA reg note with
	frame_pointer_needed_indeed.

2022-09-26  Kewen Lin  <linkw@linux.ibm.com>

	PR target/100645
	* config/rs6000/vector.md (vec_shr_<mode>): Replace condition
	TARGET_ALTIVEC with VECTOR_UNIT_ALTIVEC_OR_VSX_P.

2022-09-26  Hongtao Liu  <hongtao.liu@intel.com>
	    Liwei Xu  <liwei.xu@intel.com>

	PR target/53346
	* config/i386/i386-expand.cc (expand_vec_perm_shufps_shufps):
	New function.
	(ix86_expand_vec_perm_const_1): Insert
	expand_vec_perm_shufps_shufps at the end of 2-instruction
	expand sequence.

2022-09-25  Torbjörn SVENSSON  <torbjorn.svensson@foss.st.com>

	* doc/sourcebuild.texi: Fix chapter level.

2022-09-24  Jakub Jelinek  <jakub@redhat.com>

	PR c/107001
	* omp-low.cc (lower_omp_taskgroup): Don't add GOMP_RETURN statement
	at the end.
	* omp-expand.cc (build_omp_regions_1): Clarify GF_OMP_TARGET_KIND_DATA
	is not stand-alone directive.  For GIMPLE_OMP_TASKGROUP, also don't
	update parent.
	(omp_make_gimple_edges) <case GIMPLE_OMP_TASKGROUP>: Reset
	cur_region back after new_omp_region.

2022-09-23  Vineet Gupta  <vineetg@rivosinc.com>

	* config/riscv/riscv.h (LOCAL_SYM_P): New.
	(USE_LOAD_ADDRESS_MACRO): Simplify by calling LOCAL_SYM_P.

2022-09-23  zhongjuzhe  <juzhe.zhong@rivai.ai>

	* config/riscv/riscv-modes.def (VECTOR_BOOL_MODE): Add RVV mask modes.
	(ADJUST_NUNITS): Adjust nunits using riscv_vector_chunks.
	(ADJUST_ALIGNMENT): Adjust alignment.
	(ADJUST_BYTESIZE): Adjust bytesize using riscv_vector_chunks.
	(RVV_MODES): New macro.
	(VECTOR_MODE_WITH_PREFIX): Add RVV vector modes.
	(VECTOR_MODES_WITH_PREFIX): Add RVV vector modes.

2022-09-23  zhongjuzhe  <juzhe.zhong@rivai.ai>

	* common/config/riscv/riscv-common.cc: Change "static void" to "void".
	* config.gcc: Add riscv-selftests.o
	* config/riscv/predicates.md: Allow const_poly_int.
	* config/riscv/riscv-protos.h (riscv_reinit): New function.
	(riscv_parse_arch_string): change as exten function.
	(riscv_run_selftests): New function.
	* config/riscv/riscv.cc (riscv_cannot_force_const_mem): Don't allow poly
	into const pool.
	(riscv_report_v_required): New function.
	(riscv_expand_op): New function.
	(riscv_expand_mult_with_const_int): New function.
	(riscv_legitimize_poly_move): Ditto.
	(riscv_legitimize_move): New function.
	(riscv_hard_regno_mode_ok): Add VL/VTYPE register allocation and fix
	vector RA.
	(riscv_convert_vector_bits): Fix riscv_vector_chunks configuration for
	-marh no 'v'.
	(riscv_reinit): New function.
	(TARGET_RUN_TARGET_SELFTESTS): New target hook support.
	* config/riscv/t-riscv: Add riscv-selftests.o.
	* config/riscv/riscv-selftests.cc: New file.

2022-09-23  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106922
	* tree-ssa-sccvn.cc (vn_reference_lookup_3): Allow
	an arbitrary number of same valued skipped stores.

2022-09-23  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.cc (frange::set): Swap setters such that the one
	accepting REAL_VALUE_TYPE does all the work.

2022-09-23  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* config/aarch64/aarch64-cores.def (neoverse-v2): New entry.
	(demeter): Update tunings to neoversev2.
	* config/aarch64/aarch64-tune.md: Regenerate.
	* config/aarch64/aarch64.cc (demeter_addrcost_table): Rename to
	neoversev2_addrcost_table.
	(demeter_regmove_cost): Rename to neoversev2_addrcost_table.
	(demeter_advsimd_vector_cost): Rename to neoversev2_advsimd_vector_cost.
	(demeter_sve_vector_cost): Rename to neoversev2_sve_vector_cost.
	(demeter_scalar_issue_info): Rename to neoversev2_scalar_issue_info.
	(demeter_advsimd_issue_info): Rename to neoversev2_advsimd_issue_info.
	(demeter_sve_issue_info): Rename to neoversev2_sve_issue_info.
	(demeter_vec_issue_info): Rename to neoversev2_vec_issue_info.
	Update references to above.
	(demeter_vector_cost): Rename to neoversev2_vector_cost.
	(demeter_tunings): Rename to neoversev2_tunings.
	(aarch64_vec_op_count::rename_cycles_per_iter): Use
	neoversev2_sve_issue_info instead of demeter_sve_issue_info.
	* doc/invoke.texi (AArch64 Options): Document neoverse-v2.

2022-09-23  Aldy Hernandez  <aldyh@redhat.com>

	* range-op-float.cc (build_le): Use vrp_val_*.
	(build_lt): Same.
	(build_ge): Same.
	(build_gt): Same.
	* value-range.cc (frange::set): Chop ranges outside of the
	representable numbers for -ffinite-math-only.
	(frange::normalize_kind): Use vrp_val*.
	(frange::verify_range): Same.
	(frange::set_nonnegative): Same.
	(range_tests_floats): Remove tests that depend on -INF and +INF.
	* value-range.h (real_max_representable): Add prototype.
	(real_min_representable): Same.
	(vrp_val_max): Set max representable number for
	-ffinite-math-only.
	(vrp_val_min): Same but for min.
	(frange::set_varying): Use vrp_val*.

2022-09-23  Aldy Hernandez  <aldyh@redhat.com>

	* real.cc (debug): New.

2022-09-23  Aldy Hernandez  <aldyh@redhat.com>

	* value-range-pretty-print.cc (vrange_printer::print_real_value): New.
	(vrange_printer::visit): Call print_real_value.
	* value-range-pretty-print.h: New print_real_value.

2022-09-23  Martin Liska  <mliska@suse.cz>

	* common.opt: Update -flto-compression-level documentation.
	* opts.cc (print_filtered_help): Do not append range to an
	option that uses \t syntax.

2022-09-23  Jakub Jelinek  <jakub@redhat.com>

	* attribs.cc (decl_attributes): Improve diagnostics, instead of
	saying expected between 1 and 1, found 2 just say expected 1, found 2.

2022-09-23  Hu, Lin1  <lin1.hu@intel.com>

	PR target/94962
	* config/i386/constraints.md (BH): New define_constraint.
	* config/i386/i386.cc (standard_sse_constant_p): Add return
	3/4 when operand matches new predicate.
	(standard_sse_constant_opcode): Add new alternative branch to
	return "vpcmpeqd".
	* config/i386/predicates.md
	(vector_all_ones_zero_extend_half_operand): New define_predicate.
	(vector_all_ones_zero_extend_quarter_operand): Ditto.
	* config/i386/sse.md: Add constraint to insn "mov<mode>_internal".

2022-09-22  Andrew MacLeod  <amacleod@redhat.com>

	* gimple-range-fold.cc (range_of_range_op): Handle no operands.
	(range_of_call): Do not check for builtins.
	(fold_using_range::range_of_builtin_call): Delete.
	(fold_using_range::range_of_builtin_int_call): Delete.
	* gimple-range-fold.h: Adjust prototypes.
	* gimple-range-op.cc (class cfn_parity): New.
	(gimple_range_op_handler::maybe_builtin_call): Set arguments.

2022-09-22  Andrew MacLeod  <amacleod@redhat.com>

	* gimple-range-fold.cc (range_of_builtin_int_call): Remove case
	for CFN_GOACC_DIM_*.
	* gimple-range-op.cc (class cfn_goacc_dim): New.
	(gimple_range_op_handler::maybe_builtin_call): Set arguments.

2022-09-22  Andrew MacLeod  <amacleod@redhat.com>

	* gimple-range-fold.cc (range_of_builtin_int_call): Remove case
	for CFN_BUILT_IN_STRLEN.
	* gimple-range-op.cc (class cfn_strlen): New.
	(gimple_range_op_handler::maybe_builtin_call): Set arguments.

2022-09-22  Andrew MacLeod  <amacleod@redhat.com>

	* gimple-range-fold.cc (range_of_builtin_ubsan_call): Delete.
	(range_of_builtin_int_call): Remove cases for
	CFN_BUILT_IN_UBSAN_CHECK.
	* gimple-range-op.cc (class cfn_ubsan): New.
	(gimple_range_op_handler::maybe_builtin_call): Set arguments.

2022-09-22  Andrew MacLeod  <amacleod@redhat.com>

	* gimple-range-fold.cc (range_of_builtin_int_call): Remove case
	for CFN_BUILT_IN_CLRSB.
	* gimple-range-op.cc (class cfn_clrsb): New.
	(gimple_range_op_handler::maybe_builtin_call): Set arguments.

2022-09-22  Andrew MacLeod  <amacleod@redhat.com>

	* gimple-range-fold.cc (range_of_builtin_int_call): Remove case
	for CFN_CTZ.
	* gimple-range-op.cc (class cfn_ctz): New.
	(gimple_range_op_handler::maybe_builtin_call): Set arguments.

2022-09-22  Andrew MacLeod  <amacleod@redhat.com>

	* gimple-range-fold.cc (range_of_builtin_int_call): Remove case
	for CFN_CLZ.
	* gimple-range-op.cc (class cfn_clz): New.
	(gimple_range_op_handler::maybe_builtin_call): Set arguments.

2022-09-22  Andrew MacLeod  <amacleod@redhat.com>

	* gimple-range-fold.cc (range_of_builtin_int_call): Remove case
	for CFN_FFS and CFN_POPCOUNT.
	* gimple-range-op.cc (class cfn_pocount): New.
	(gimple_range_op_handler::maybe_builtin_call): Set arguments.

2022-09-22  Andrew MacLeod  <amacleod@redhat.com>

	* gimple-range-fold.cc (get_letter_range): Move to new class.
	(range_of_builtin_int_call): Remove case for CFN_BUILT_IN_TOUPPER
	and CFN_BUILT_IN_TOLOWER.
	* gimple-range-op.cc (class cfn_toupper_tolower): New.
	(gimple_range_op_handler::maybe_builtin_call): Set arguments.

2022-09-22  Andrew MacLeod  <amacleod@redhat.com>

	* gimple-range-fold.cc (range_of_builtin_int_call): Remove case
	for CFN_BUILT_IN_SIGNBIT.
	* gimple-range-op.cc (class cfn_signbit): New.
	(gimple_range_op_handler::maybe_builtin_call): Set arguments.

2022-09-22  Andrew MacLeod  <amacleod@redhat.com>

	* gimple-range-fold.cc
	(fold_using_range::range_of_builtin_int_call): Remove case for
	CFN_BUILT_IN_CONSTANT_P.
	* gimple-range-op.cc (gimple_range_op_handler::supported_p):
	Check if a call also creates a range-op object.
	(gimple_range_op_handler): Also check builtin calls.
	(class cfn_constant_float_p): New.  Float CFN_BUILT_IN_CONSTANT_P.
	(class cfn_constant_p): New.  Integral CFN_BUILT_IN_CONSTANT_P.
	(gimple_range_op_handler::maybe_builtin_call): Set arguments and
	handler for supported built-in calls.
	* gimple-range-op.h (maybe_builtin_call): New prototype.

2022-09-22  Andrew MacLeod  <amacleod@redhat.com>

	* gimple-range-fold.cc (range_of_range_op): Set result to
	VARYING if the call to fold_range fails.
	* tree-data-ref.cc (compute_distributive_range): Ditto.
	* tree-vrp.cc (range_fold_binary_expr): Ditto.
	(range_fold_unary_expr): Ditto.
	* value-query.cc (range_query::get_tree_range): Ditto.

2022-09-22  Andrew MacLeod  <amacleod@redhat.com>

	* range-op-float.cc (range_operator_float::fold_range): New base
	method for "int = float op int".
	* range-op.cc (range_op_handler::fold_range): New case.
	* range-op.h: Update prototypes.

2022-09-22  Andrew MacLeod  <amacleod@redhat.com>

	* gimple-range-op.cc (gimple_range_op_handler::calc_op1): Use
	operand 1 for second range if there is no operand 2.

2022-09-22  Andrew MacLeod  <amacleod@redhat.com>

	* Makefile.in (OBJS): Add gimple-range-op.o.
	* gimple-range-edge.cc (gimple_outgoing_range_stmt_p): Use
	gimple_range_op_handler.
	* gimple-range-fold.cc (gimple_range_base_of_assignment): Move
	to a method in gimple_range_op_handler.
	(gimple_range_operand1): Ditto.
	(gimple_range_operand2): Ditto.
	(fold_using_range::fold_stmt): Use gimple_range_op_handler.
	(fold_using_range::range_of_range_op): Ditto.
	(fold_using_range::relation_fold_and_or): Ditto.
	(fur_source::register_outgoing_edges): Ditto.
	(gimple_range_ssa_names): Relocate to gimple-range-op.cc.
	* gimple-range-fold.h: Adjust prototypes.
	* gimple-range-gori.cc (gimple_range_calc_op1): Move
	to a method in gimple_range_op_handler.
	(gimple_range_calc_op2): Ditto.
	(gori_compute::compute_operand_range): Use
	gimple_range_op_handler.
	(gori_compute::compute_logical_operands): Ditto.
	(compute_operand1_range): Ditto.
	(gori_compute::compute_operand2_range): Ditto.
	(gori_compute::compute_operand1_and_operand2_range): Ditto.
	* gimple-range-gori.h: Adjust protoypes.
	* gimple-range-op.cc: New.  Supply gimple_range_op_handler methods.
	* gimple-range-op.h: New.  Supply gimple_range_op_handler class.
	* gimple-range.cc (gimple_ranger::prefill_name): Use
	gimple_range_op_handler.
	(gimple_ranger::prefill_stmt_dependencies): Ditto.
	* gimple-range.h: Include gimple-range-op.h.
	* range-op.cc (range_op_handler::range_op_handler): Adjust and
	remove gimple * parameter option.
	* range-op.h: Adjust prototypes.

2022-09-22  Andrew MacLeod  <amacleod@redhat.com>

	* range-op.cc (range_op_handler::set_op_handler): Set new fields.
	(ange_op_handler::range_op_handler): Likewise.
	(range_op_handler::operator bool): Remove.
	(range_op_handler::fold_range): Use appropriate handler.
	(range_op_handler::op1_range): Likewise.
	(range_op_handler::op2_range): Likewise.
	(range_op_handler::lhs_op1_relation): Likewise.
	(range_op_handler::lhs_op2_relation): Likewise.
	(range_op_handler::op1_op2_relation): Likewise.
	* range-op.h (class range_op_handler): Store handler pointers.
	(range_op_handler:: operator bool): Inline.

2022-09-22  Andrew MacLeod  <amacleod@redhat.com>

	* tree-ssa-threadbackward.cc
	(back_threader::find_paths_to_names): Replace sequence with
	a call to gimple_range_ssa_names.

2022-09-22  Martin Liska  <mliska@suse.cz>
	    Fangrui Song  <i@maskray.me>

	* configure: Regenerate.
	* configure.ac: Simplify to gcc_cv_ld_compress_debug={0,1}
	and gcc_cv_as_compress_debug={0,1}.
	* doc/invoke.texi: Document the removal.
	* gcc.cc (LINK_COMPRESS_DEBUG_SPEC): Simplify and ignore
	zlib-gnu.
	(ASM_COMPRESS_DEBUG_SPEC): Likewise.

2022-09-22  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106922
	* tree-ssa-sccvn.cc (vn_walk_cb_data::same_val): New member.
	(vn_walk_cb_data::finish): Perform delayed verification of
	a skipped may-alias.
	(vn_reference_lookup_pieces): Likewise.
	(vn_reference_lookup): Likewise.
	(vn_reference_lookup_3): When skipping stores of the same
	value also handle constant stores that are more than a
	single VDEF away by delaying the verification.

2022-09-22  Max Filippov  <jcmvbkbc@gmail.com>

	* config/xtensa/xtensa.cc (TARGET_MAX_ANCHOR_OFFSET): New
	definition.

2022-09-22  Max Filippov  <jcmvbkbc@gmail.com>

	* config/xtensa/xtensa.cc (xtensa_can_output_mi_thunk)
	(xtensa_output_mi_thunk): New functions.
	(TARGET_ASM_CAN_OUTPUT_MI_THUNK)
	(TARGET_ASM_OUTPUT_MI_THUNK): New macro definitions.
	(xtensa_prepare_expand_call): Use fixed register a8 as temporary
	when called with reload_completed set to 1.

2022-09-22  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/99407
	* tree-ssa-dse.cc (dse_stmt_to_dr_map): New global.
	(dse_classify_store): Use data-ref analysis to disambiguate more uses.
	(pass_dse::use_dr_analysis_p): New pass parameter.
	(pass_dse::set_pass_param): Implement.
	(pass_dse::execute): Allocate and deallocate dse_stmt_to_dr_map.
	* passes.def: Allow DR analysis for the DSE pass before loop.

2022-09-22  Richard Biener  <rguenther@suse.de>

	* tree-ssa-sccvn.cc (can_track_predicate_on_edge): New
	function split out from ...
	(vn_nary_op_insert_pieces_predicated): ... here.

2022-09-22  liuhongt  <hongtao.liu@intel.com>

	PR target/106994
	* config/i386/mmx.md (floorv2sf2): Fix typo, use
	register_operand instead of vector_operand for operands[1].

2022-09-21  Aldy Hernandez  <aldyh@redhat.com>

	PR tree-optimization/106967
	* value-range.cc (frange::set): Set known NANs to undefined for
	flag_finite_math_only.

2022-09-21  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.cc (frange::combine_zeros): Call set_undefined.
	(frange::intersect_nans): Same.
	(frange::intersect): Same.
	(frange::verify_range): Undefined ranges do not have a type.
	* value-range.h (frange::set_undefined): Clear NAN flags and type.

2022-09-21  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106984
	* tsan.cc (instrument_builtin_call): Build the COND_EXPR condition in
	a separate statement.

2022-09-21  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* config/aarch64/aarch64.h (HAVE_LOCAL_CPU_DETECT,
	EXTRA_SPEC_FUNCTIONS, MCPU_MTUNE_NATIVE_SPECS): Move definitions up before
	OPTION_DEFAULT_SPECS.
	(MCPU_MTUNE_NATIVE_SPECS): Pass "cpu" to
	local_cpu_detect when rewriting -march=native and no -mcpu or -mtune
	is given.
	(CONFIG_TUNE_SPEC): Define.
	(OPTION_DEFAULT_SPECS): Use CONFIG_TUNE_SPEC for "tune".

2022-09-21  Aldy Hernandez  <aldyh@redhat.com>

	PR tree-optimization/106967
	* range-op-float.cc (foperator_equal::fold_range): Adjust for NAN.
	(foperator_equal::op1_range): Same.
	(foperator_not_equal::fold_range): Same.
	(foperator_not_equal::op1_range): Same.
	(foperator_lt::fold_range): Same.
	(foperator_lt::op1_range): Same.
	(foperator_lt::op2_range): Same.
	(foperator_le::fold_range): Same.
	(foperator_le::op1_range): Same.
	(foperator_le::op2_range): Same.
	(foperator_gt::fold_range): Same.
	(foperator_gt::op1_range): Same.
	(foperator_gt::op2_range): Same.
	(foperator_ge::fold_range): Same.
	(foperator_ge::op1_range): Same.
	(foperator_ge::op2_range): Same.
	(foperator_unordered::op1_range): Same.
	(foperator_ordered::fold_range): Same.
	(foperator_ordered::op1_range): Same.
	(build_le): Assert that we don't have a NAN.
	(build_lt): Same.
	(build_gt): Same.
	(build_ge): Same.

2022-09-21  liuhongt  <hongtao.liu@intel.com>

	PR tree-optimization/106963
	* tree-vect-loop.cc (vect_create_nonlinear_iv_init): Use
	vec_gen_perm_mask_any instead of vec_gen_perm_mask_check.

2022-09-20  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.h (frange::maybe_isnan): Return false for
	undefined ranges.

2022-09-20  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.cc (frange::set_nonnegative): Set +NAN.
	(range_tests_signed_zeros): New test.
	* value-range.h (frange::update_nan): New overload to set NAN sign.

2022-09-20  Richard Sandiford  <richard.sandiford@arm.com>

	PR target/106491
	* config/aarch64/aarch64-sve-builtins.cc (scalar_types)
	(acle_vector_types, acle_svpattern, acle_svprfop): Add GTY
	markup to (new) extern declarations instead of to the main
	definition.

2022-09-20  Richard Sandiford  <richard.sandiford@arm.com>

	PR tree-optimization/106794
	PR tree-optimization/106914
	* tree-vect-slp.cc (vect_optimize_slp_pass::internal_node_cost):
	Only consider loads that already have a permutation.
	(vect_optimize_slp_pass::start_choosing_layouts): Assert that
	loads with permutations are leaf nodes.  Prevent any kind of grouped
	access from changing layout if it doesn't have a load permutation.

2022-09-20  Richard Sandiford  <richard.sandiford@arm.com>

	* tree-vect-data-refs.cc (vect_check_gather_scatter): Restrict
	early-out optimisation to SSA_NAMEs.

2022-09-20  Martin Liska  <mliska@suse.cz>

	* ctfc.cc (ctf_add_string): Replace "the the" with "the".
	* doc/md.texi: Likewise.
	* gimple-range-infer.cc (non_null_loadstore): Likewise.

2022-09-20  liuhongt  <hongtao.liu@intel.com>

	PR target/106910
	* config/i386/mmx.md (nearbyintv2sf2): New expander.
	(rintv2sf2): Ditto.
	(ceilv2sf2): Ditto.
	(lceilv2sfv2si2): Ditto.
	(floorv2sf2): Ditto.
	(lfloorv2sfv2si2): Ditto.
	(btruncv2sf2): Ditto.
	(lrintv2sfv2si2): Ditto.
	(roundv2sf2): Ditto.
	(lroundv2sfv2si2): Ditto.
	(*mmx_roundv2sf2): New define_insn.

2022-09-20  konglin1  <lingling.kong@intel.com>

	PR middle-end/105735
	* tree-scalar-evolution.cc
	(analyze_and_compute_bitop_with_inv_effect): New function.
	(final_value_replacement_loop): Enhanced to handle bitop
	with inv induction.

2022-09-20  Xi Ruoyao  <xry111@xry111.site>

	* config/loongarch/gnu-user.h (GNU_USER_TARGET_LINK_SPEC): For
	-static-pie, pass -static -pie --no-dynamic-linker -z text to
	the linker, and do not pass --dynamic-linker.

2022-09-20  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.cc (frange::flush_denormals_to_zero): New.
	(frange::set): Call flush_denormals_to_zero.
	* value-range.h (class frange): Add flush_denormals_to_zero.

2022-09-20  liuhongt  <hongtao.liu@intel.com>

	* config/i386/x86-tune-sched.cc (ix86_issue_rate): Adjust for
	latest Intel processors.

2022-09-20  konglin1  <lingling.kong@intel.com>

	PR target/106887
	* config/i386/i386-expand.cc (ix86_expand_vector_init_duplicate):
	Fixed V16BF mode case.

2022-09-19  Torbjörn SVENSSON  <torbjorn.svensson@foss.st.com>

	* targhooks.cc (default_zero_call_used_regs): Improve sorry
	message.

2022-09-18  Julian Brown  <julian@codesourcery.com>

	* gimplify.cc (omp_segregate_mapping_groups): Update comment.
	(gimplify_adjust_omp_clauses): Move ATTACH and
	ATTACH_ZERO_LENGTH_ARRAY_SECTION nodes to the end of the clause list
	for offloaded OpenMP regions.

2022-09-18  Jakub Jelinek  <jakub@redhat.com>

	PR middle-end/106831
	* value-range.cc (frange::singleton_p): Avoid propagating long
	doubles that may have multiple representations.

2022-09-18  Aldy Hernandez  <aldyh@redhat.com>

	* range-op-float.cc (frange_add_zeros): Replace set_signbit with
	union of zero.
	* value-query.cc (range_query::get_tree_range): Remove set_signbit
	use.
	* value-range-pretty-print.cc (vrange_printer::print_frange_prop):
	Remove.
	(vrange_printer::print_frange_nan): New.
	* value-range-pretty-print.h (print_frange_prop): Remove.
	(print_frange_nan): New.
	* value-range-storage.cc (frange_storage_slot::set_frange): Set
	kind and NAN fields.
	(frange_storage_slot::get_frange): Restore kind and NAN fields.
	* value-range-storage.h (class frange_storage_slot): Add kind and
	NAN fields.
	* value-range.cc (frange::update_nan): Remove.
	(frange::set_signbit): Remove.
	(frange::set): Adjust for NAN fields.
	(frange::normalize_kind): Remove m_props.
	(frange::combine_zeros): New.
	(frange::union_nans): New.
	(frange::union_): Handle new NAN fields.
	(frange::intersect_nans): New.
	(frange::intersect): Handle new NAN fields.
	(frange::operator=): Same.
	(frange::operator==): Same.
	(frange::contains_p): Same.
	(frange::singleton_p): Remove special case for signed zeros.
	(frange::verify_range): Adjust for new NAN fields.
	(frange::set_zero): Handle signed zeros.
	(frange::set_nonnegative): Same.
	(range_tests_nan): Adjust tests.
	(range_tests_signed_zeros): Same.
	(range_tests_signbit): Same.
	(range_tests_floats): Same.
	* value-range.h (class fp_prop): Remove.
	(FP_PROP_ACCESSOR): Remove.
	(class frange_props): Remove
	(frange::lower_bound): NANs don't have endpoints.
	(frange::upper_bound): Same.
	(frange_props::operator==): Remove.
	(frange_props::union_): Remove.
	(frange_props::intersect): Remove.
	(frange::update_nan): New.
	(frange::clear_nan): New.
	(frange::undefined_p): New.
	(frange::set_nan): New.
	(frange::known_finite): Adjust for new NAN representation.
	(frange::maybe_isnan): Same.
	(frange::known_isnan): Same.
	(frange::signbit_p): Same.
	* gimple-range-fold.cc (range_of_builtin_int_call): Rename
	known_signbit_p into signbit_p.

2022-09-17  Jan-Benedict Glaw  <jbglaw@lug-owl.de>

	* config/csky/csky.h (FUNCTION_ARG_REGNO_P): Cast REGNO to (int)
	to prevent warning.

2022-09-17  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/106958
	* tree-ssa-reassoc.cc (optimize_range_tests_cmp_bitwise): If
	id >= l, cast op to type1, otherwise to pointer_sized_int_node.
	If type has pointer type, cast exp to pointer_sized_int_node
	even when id < l.

2022-09-16  liuhongt  <hongtao.liu@intel.com>

	PR target/106910
	* config/i386/i386-builtins.cc
	(ix86_builtin_vectorized_function): Modernized with
	corresponding expanders.
	* config/i386/sse.md (lrint<mode><sseintvecmodelower>2): New
	expander.
	(floor<mode>2): Ditto.
	(lfloor<mode><sseintvecmodelower>2): Ditto.
	(ceil<mode>2): Ditto.
	(lceil<mode><sseintvecmodelower>2): Ditto.
	(btrunc<mode>2): Ditto.
	(lround<mode><sseintvecmodelower>2): Ditto.
	(exp2<mode>2): Ditto.

2022-09-15  Joseph Myers  <joseph@codesourcery.com>

	* ginclude/float.h (INFINITY): Define only if
	[__FLT_HAS_INFINITY__].

2022-09-15  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106922
	* tree-ssa-pre.cc (translate_vuse_through_block): Only
	keep the VUSE if its def dominates PHIBLOCK.
	(prune_clobbered_mems): Rewrite logic so we check whether
	a value dies in a block when the VUSE def doesn't dominate it.

2022-09-15  Richard Biener  <rguenther@suse.de>

	* tree.cc (build_common_tree_nodes): Initialize void_list_node
	here.

2022-09-15  Jiufu Guo  <guojiufu@linux.ibm.com>

	PR target/106550
	* config/rs6000/rs6000.cc (rs6000_emit_set_long_const): Use pli.

2022-09-14  Aldy Hernandez  <aldyh@redhat.com>

	* range-op-float.cc (frange_add_zeros): New.
	(build_le): Call frange_add_zeros.
	(build_ge): Same.
	(foperator_equal::op1_range): Same.
	(foperator_not_equal::op1_range): Same.

2022-09-14  Aldy Hernandez  <aldyh@redhat.com>

	* range-op-float.cc (build_le): Accept frange instead of number.
	(build_lt): Same.
	(build_ge): Same.
	(build_gt): Same.
	(foperator_lt::op1_range): Pass full range to build_*.
	(foperator_lt::op2_range): Same.
	(foperator_le::op1_range): Same.
	(foperator_le::op2_range): Same.
	(foperator_gt::op1_range): Same.
	(foperator_gt::op2_range): Same.
	(foperator_ge::op1_range): Same.
	(foperator_ge::op2_range): Same.

2022-09-14  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.cc (frange::set): Use set_nan.
	* value-range.h (frange::set_nan): Inline code originally in
	set().

2022-09-14  Aldy Hernandez  <aldyh@redhat.com>

	* range-op-float.cc (frange_set_nan): Remove.
	(build_lt): Use set_nan, update_nan, clear_nan.
	(build_gt): Same.
	(foperator_equal::op1_range): Same.
	(foperator_not_equal::op1_range): Same.
	(foperator_lt::op1_range): Same.
	(foperator_lt::op2_range): Same.
	(foperator_le::op1_range): Same.
	(foperator_le::op2_range): Same.
	(foperator_gt::op1_range): Same.
	(foperator_gt::op2_range): Same.
	(foperator_ge::op1_range): Same.
	(foperator_ge::op2_range): Same.
	(foperator_unordered::op1_range): Same.
	(foperator_ordered::op1_range): Same.
	* value-query.cc (range_query::get_tree_range): Same.
	* value-range.cc (frange::set_nan): Same.
	(frange::update_nan): Same.
	(frange::union_): Same.
	(frange::intersect): Same.
	(range_tests_nan): Same.
	(range_tests_signed_zeros): Same.
	(range_tests_signbit): Same.
	(range_tests_floats): Same.
	* value-range.h (class frange): Add update_nan and clear_nan.
	(frange::set_nan): New.

2022-09-14  Aldy Hernandez  <aldyh@redhat.com>

	* value-query.cc (range_query::get_tree_range): Remove check for overflow.
	* value-range-pretty-print.cc (vrange_printer::visit): Move read
	of type until after undefined_p is checked.
	* value-range.cc (frange::set): Remove asserts for REAL_CST.
	(frange::contains_p): Tidy up.
	(range_tests_nan):  Add comment.
	* value-range.h (frange::type): Check for undefined_p.
	(frange::set_undefined): Remove set of endpoints.

2022-09-14  Julian Brown  <julian@codesourcery.com>

	* gimplify.cc (omp_group_last): Allow GOMP_MAP_ATTACH_DETACH after
	GOMP_MAP_STRUCT (for reindexing).
	(omp_gather_mapping_groups): Reimplement using...
	(omp_gather_mapping_groups_1): This new function.  Stop processing at
	GATHER_SENTINEL.
	(omp_group_base): Allow GOMP_MAP_TO_PSET without any following node.
	(omp_index_mapping_groups): Reimplement using...
	(omp_index_mapping_groups_1): This new function.  Handle
	REINDEX_SENTINEL.
	(omp_reindex_mapping_groups, omp_mapped_by_containing_struct): New
	functions.
	(omp_tsort_mapping_groups_1): Adjust handling of base group being the
	same as current group.  Use omp_mapped_by_containing_struct.
	(omp_build_struct_sibling_lists): Use omp_mapped_by_containing_struct
	and omp_reindex_mapping_groups.  Robustify group deletion for reordered
	lists.
	(gimplify_scan_omp_clauses): Update calls to
	omp_build_struct_sibling_lists.

2022-09-14  Julian Brown  <julian@codesourcery.com>

	* gimplify.cc (gimplify_omp_var_data): Remove GOVD_MAP_HAS_ATTACHMENTS.
	(GOMP_FIRSTPRIVATE_IMPLICIT): Renumber.
	(insert_struct_comp_map): Refactor function into...
	(build_omp_struct_comp_nodes): This new function.  Remove list handling
	and improve self-documentation.
	(extract_base_bit_offset): Remove BASE_REF, OFFSETP parameters.  Move
	code to strip outer parts of address out of function, but strip no-op
	conversions.
	(omp_mapping_group): Add DELETED field for use during reindexing.
	(omp_strip_components_and_deref, omp_strip_indirections): New functions.
	(omp_group_last, omp_group_base): Add GOMP_MAP_STRUCT handling.
	(omp_gather_mapping_groups): Initialise DELETED field for new groups.
	(omp_index_mapping_groups): Notice DELETED groups when (re)indexing.
	(omp_siblist_insert_node_after, omp_siblist_move_node_after,
	omp_siblist_move_nodes_after, omp_siblist_move_concat_nodes_after): New
	helper functions.
	(omp_accumulate_sibling_list): New function to build up GOMP_MAP_STRUCT
	node groups for sibling lists. Outlined from gimplify_scan_omp_clauses.
	(omp_build_struct_sibling_lists): New function.
	(gimplify_scan_omp_clauses): Remove struct_map_to_clause,
	struct_seen_clause, struct_deref_set.  Call
	omp_build_struct_sibling_lists as pre-pass instead of handling sibling
	lists in the function's main processing loop.
	(gimplify_adjust_omp_clauses_1): Remove GOVD_MAP_HAS_ATTACHMENTS
	handling, unused now.
	* omp-low.cc (scan_sharing_clauses): Handle pointer-type indirect
	struct references, and references to pointers to structs also.

2022-09-14  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106938
	* tree-cfg.cc (execute_fixup_cfg): Purge dead abnormal
	edges for all last stmts in a block.  Do EH cleanup
	only on the last stmt in a block.

2022-09-14  Aldy Hernandez  <aldyh@redhat.com>

	PR tree-optimization/106936
	* value-query.cc (range_query::get_value_range): Remove assert.

2022-09-14  Jan-Benedict Glaw  <jbglaw@lug-owl.de>

	* config/mips/mips.cc (mips_option_override): Drop unused variable.

2022-09-14  Julian Brown  <julian@codesourcery.com>

	* gimplify.cc (is_or_contains_p, omp_target_reorder_clauses): Delete
	functions.
	(omp_tsort_mark): Add enum.
	(omp_mapping_group): Add struct.
	(debug_mapping_group, omp_get_base_pointer, omp_get_attachment,
	omp_group_last, omp_gather_mapping_groups, omp_group_base,
	omp_index_mapping_groups, omp_containing_struct,
	omp_tsort_mapping_groups_1, omp_tsort_mapping_groups,
	omp_segregate_mapping_groups, omp_reorder_mapping_groups): New
	functions.
	(gimplify_scan_omp_clauses): Call above functions instead of
	omp_target_reorder_clauses, unless we've seen an error.
	* omp-low.cc (scan_sharing_clauses): Avoid strict test if we haven't
	sorted mapping groups.

2022-09-14  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/106878
	* tree-cfg.cc (verify_gimple_assign_binary): Disallow pointer,
	reference or OFFSET_TYPE BIT_IOR_EXPR, BIT_XOR_EXPR or, unless
	the second argument is INTEGER_CST, BIT_AND_EXPR.
	* match.pd ((type) X op CST -> (type) (X op ((type-x) CST)),
	(type) (((type2) X) op Y) -> (X op (type) Y)): Punt for
	POINTER_TYPE_P or OFFSET_TYPE.
	* tree-ssa-reassoc.cc (optimize_range_tests_cmp_bitwise): For
	pointers cast them to pointer sized integers first.

2022-09-14  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106934
	* tree-ssa.cc (non_rewritable_mem_ref_base): Avoid BIT_FIELD_REFs
	of bitfields.
	(maybe_rewrite_mem_ref_base): Likewise.

2022-09-14  liuhongt  <hongtao.liu@intel.com>

	PR tree-optimization/106905
	* tree-vect-loop.cc (vectorizable_nonlinear_induction): Return
	false when !vect_use_loop_mask_for_alignment_p (loop_vinfo) &&
	LOOP_VINFO_PEELING_FOR_ALIGNMENT (loop_vinfo) < 0.

2022-09-13  Roger Sayle  <roger@nextmovesoftware.com>

	PR target/106877
	* reg-stack.cc (move_for_stack_reg): Check for any_malformed_asm
	in gcc_assert.

2022-09-13  Max Filippov  <jcmvbkbc@gmail.com>

	Revert:
	2022-09-12  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/xtensa.cc (TARGET_CONSTANT_OK_FOR_CPROP_P):
	New macro definition.
	(xtensa_constant_ok_for_cprop_p):
	Implement the hook as mentioned above.

2022-09-13  Kewen Lin  <linkw@linux.ibm.com>

	PR target/104482
	* config/rs6000/rs6000-c.cc (altivec_resolve_overloaded_builtin): Fix
	the equality check for argument number, and move this hunk ahead.

2022-09-13  Kewen.Lin  <linkw@gcc.gnu.org>

	PR target/105485
	* config/rs6000/rs6000-builtin.cc (rs6000_gimple_fold_builtin): Add
	the handling for unresolved overloaded builtin function.
	(rs6000_expand_builtin): Likewise.

2022-09-13  Kewen Lin  <linkw@linux.ibm.com>

	* config/rs6000/rs6000.cc (class rs6000_cost_data): Add new members
	m_nstores, m_reduc_factor, m_gather_load and member function
	determine_suggested_unroll_factor.
	(rs6000_cost_data::update_target_cost_per_stmt): Update for m_nstores,
	m_reduc_factor and m_gather_load.
	(rs6000_cost_data::determine_suggested_unroll_factor): New function.
	(rs6000_cost_data::finish_cost): Use determine_suggested_unroll_factor.
	* config/rs6000/rs6000.opt (rs6000-vect-unroll-limit): New parameter.
	(rs6000-vect-unroll-issue): Likewise.
	(rs6000-vect-unroll-reduc-threshold): Likewise.
	* doc/invoke.texi (rs6000-vect-unroll-limit): Document new parameter.

2022-09-13  Richard Biener  <rguenther@suse.de>

	PR middle-end/106909
	* gimple-fold.cc (gimple_fold_call): Clear the ctrl-altering
	flag of a unreachable call.

2022-09-13  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106913
	* tree-ssa-uninit.cc (warn_uninitialized_vars): Do not set
	ft_reachable on EXIT_BLOCK.

2022-09-13  Richard Sandiford  <richard.sandiford@arm.com>

	* config/aarch64/aarch64.cc (aarch64_classify_vector_mode): Use
	TARGET_FLOAT instead of TARGET_SIMD.
	(aarch64_vectorize_related_mode): Restrict ADVSIMD handling to
	TARGET_SIMD.
	(aarch64_hard_regno_mode_ok): Don't allow tuples of 2 64-bit vectors
	in GPRs.
	(aarch64_classify_address): Treat little-endian structure moves
	like big-endian for TARGET_FLOAT && !TARGET_SIMD.
	(aarch64_secondary_memory_needed): New function.
	(aarch64_secondary_reload): Handle 128-bit Advanced SIMD vectors
	in the same way as TF, TI and TD.
	(aarch64_rtx_mult_cost): Restrict ADVSIMD handling to TARGET_SIMD.
	(aarch64_rtx_costs): Likewise.
	(aarch64_register_move_cost): Treat a pair of 64-bit vectors
	separately from a single 128-bit vector.  Handle the cost implied
	by aarch64_secondary_memory_needed.
	(aarch64_simd_valid_immediate): Restrict ADVSIMD handling to
	TARGET_SIMD.
	(aarch64_expand_vec_perm_const_1): Likewise.
	(TARGET_SECONDARY_MEMORY_NEEDED): New macro.
	* config/aarch64/iterators.md (VTX): New iterator.
	* config/aarch64/aarch64.md (arches): Add fp_q as a synonym of simd.
	(arch_enabled): Adjust accordingly.
	(@aarch64_reload_mov<TX:mode>): Extend to...
	(@aarch64_reload_mov<VTX:mode>): ...this.
	* config/aarch64/aarch64-simd.md (mov<mode>): Require TARGET_FLOAT
	rather than TARGET_SIMD.
	(movmisalign<mode>): Likewise.
	(load_pair<DREG:mode><DREG2:mode>): Likewise.
	(vec_store_pair<DREG:mode><DREG2:mode>): Likewise.
	(load_pair<VQ:mode><VQ2:mode>): Likewise.
	(vec_store_pair<VQ:mode><VQ2:mode>): Likewise.
	(@aarch64_split_simd_mov<mode>): Likewise.
	(aarch64_get_low<mode>): Likewise.
	(aarch64_get_high<mode>): Likewise.
	(aarch64_get_half<mode>): Likewise.  Canonicalize to a move for
	lowpart extracts.
	(*aarch64_simd_mov<VDMOV:mode>): Require TARGET_FLOAT rather than
	TARGET_SIMD.  Use different w<-w and r<-w instructions for
	!TARGET_SIMD.  Disable immediate moves for !TARGET_SIMD but
	add an alternative specifically for w<-Z.
	(*aarch64_simd_mov<VQMOV:mode>): Require TARGET_FLOAT rather than
	TARGET_SIMD.  Likewise for the associated define_splits.  Disable
	FPR moves and immediate moves for !TARGET_SIMD but add an alternative
	specifically for w<-Z.
	(aarch64_simd_mov_from_<mode>high): Require TARGET_FLOAT rather than
	TARGET_SIMD.  Restrict the existing alternatives to TARGET_SIMD
	but add a new r<-w one for !TARGET_SIMD.
	(*aarch64_get_high<mode>): New pattern.
	(load_pair_lanes<mode>): Require TARGET_FLOAT rather than TARGET_SIMD.
	(store_pair_lanes<mode>): Likewise.
	(*aarch64_combine_internal<mode>): Likewise.  Restrict existing
	w<-w, w<-r and w<-m alternatives to TARGET_SIMD but add a new w<-r
	alternative for !TARGET_SIMD.
	(*aarch64_combine_internal_be<mode>): Likewise.
	(aarch64_combinez<mode>): Require TARGET_FLOAT rather than TARGET_SIMD.
	Remove bogus arch attribute.
	(*aarch64_combinez_be<mode>): Likewise.
	(@aarch64_vec_concat<mode>): Require TARGET_FLOAT rather than
	TARGET_SIMD.
	(aarch64_combine<mode>): Likewise.
	(aarch64_rev_reglist<mode>): Likewise.
	(mov<mode>): Likewise.
	(*aarch64_be_mov<VSTRUCT_2D:mode>): Extend to TARGET_FLOAT &&
	!TARGET_SIMD, regardless of endianness.  Extend associated
	define_splits in the same way, both for this pattern and the
	ones below.
	(*aarch64_be_mov<VSTRUCT_2Qmode>): Likewise.  Restrict w<-w
	alternative to TARGET_SIMD.
	(*aarch64_be_movoi): Likewise.
	(*aarch64_be_movci): Likewise.
	(*aarch64_be_movxi): Likewise.
	(*aarch64_be_mov<VSTRUCT_4QD:mode>): Extend to TARGET_FLOAT
	&& !TARGET_SIMD, regardless of endianness.  Restrict w<-w alternative
	to TARGET_SIMD for tuples of 128-bit vectors.
	(*aarch64_be_mov<VSTRUCT_4QD:mode>): Likewise.
	* config/aarch64/aarch64-ldpstp.md: Remove TARGET_SIMD condition
	from DREG STP peephole.  Change TARGET_SIMD to TARGET_FLOAT in
	the VQ and VP_2E LDP and STP peepholes.

2022-09-13  Richard Sandiford  <richard.sandiford@arm.com>

	* config/aarch64/aarch64-simd.md (movv8di): Remove TARGET_SIMD
	condition.  Likewise for the related define_split.  Tweak formatting.

2022-09-12  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/xtensa.cc (TARGET_CONSTANT_OK_FOR_CPROP_P):
	New macro definition.
	(xtensa_constant_ok_for_cprop_p):
	Implement the hook as mentioned above.

2022-09-12  Joseph Myers  <joseph@codesourcery.com>

	* ginclude/stdatomic.h [defined __STDC_VERSION__ &&
	__STDC_VERSION__ > 201710L] (ATOMIC_VAR_INIT): Do not define.

2022-09-12  Tobias Burnus  <tobias@codesourcery.com>

	* config/nvptx/mkoffload.cc (process): Replace a fatal_error by
	a warning + not enabling offloading if -misa=sm_30 prevents
	reverse offload.
	(main): Use tool_name as progname for diagnostic.
	* config/gcn/mkoffload.cc (main): Likewise.

2022-09-12  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.cc (frange::set_signbit): Avoid changing sign when
	already in the correct sign.

2022-09-12  Max Filippov  <jcmvbkbc@gmail.com>

	* config/xtensa/xtensa.cc (xtensa_function_value_regno_p):
	Recognize all 4 return registers.
	* config/xtensa/xtensa.h (GP_RETURN_REG_COUNT): New definition.
	* config/xtensa/xtensa.md (untyped_call): New pattern.

2022-09-12  Jonathan Wakely  <jwakely@redhat.com>

	* doc/extend.texi (Floating Types): Fix "_float128" typo.

2022-09-10  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/xtensa.cc (xtensa_constantsynth):
	Add new pattern for the abovementioned case.

2022-09-10  Akari Takahashi  <akaritakahashioss@gmail.com>
	    Segher Boessenkool  <segher@kernel.crashing.org>

	* config/rs6000/rs6000.cc (get_memref_parts): Regularize some code.

2022-09-09  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/xtensa.md: Rewrite the split pattern that performs
	the abovementioned process so that insns that overwrite clobbered
	register no longer need to be contiguous.
	(DSC): Remove as no longer needed.

2022-09-09  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/xtensa.cc (machine_function): New boolean member as
	a flag that controls whether to emit the insns for stack pointer
	adjustment inside of the pro/epilogue.
	(xtensa_emit_adjust_stack_ptr): New function to share the common
	codes and to emit insns if not inhibited.
	(xtensa_expand_epilogue): Change to use the function mentioned
	above when using the CALL0 ABI.
	(xtensa_expand_prologue): Ditto.
	And also change to set the inhibit flag used by
	xtensa_emit_adjust_stack_ptr() to true if the stack pointer is only
	used for its own adjustment.

2022-09-09  David Malcolm  <dmalcolm@redhat.com>

	* doc/invoke.texi (Static Analyzer Options): Add
	-Wanalyzer-exposure-through-uninit-copy.

2022-09-09  David Malcolm  <dmalcolm@redhat.com>

	* Makefile.in (ANALYZER_OBJS): Add
	analyzer/known-function-manager.o.

2022-09-09  Tobias Burnus  <tobias@codesourcery.com>

	* config/nvptx/mkoffload.cc (struct id_map): Add 'dim' member.
	(record_id): Store func name without quotes, store dim separately.
	(process): For GOMP_REQUIRES_REVERSE_OFFLOAD, check that -march is
	at least sm_35, create '$offload_func_table' global array and init
	with reverse-offload function addresses.
	* config/nvptx/nvptx.cc (write_fn_proto_1, write_fn_proto): New
	force_public attribute to force .visible.
	(nvptx_declare_function_name): For "omp target
	device_ancestor_nohost" attribut, force .visible/TREE_PUBLIC.

2022-09-09  Tobias Burnus  <tobias@codesourcery.com>

	* config/gcn/mkoffload.cc (process_asm): Create .offload_func_table,
	similar to pre-existing .offload_var_table.

2022-09-09  Joseph Myers  <joseph@codesourcery.com>

	* ginclude/stddef.h [__STDC_VERSION__ > 201710L] (unreachable):
	New macro.

2022-09-09  Kewen Lin  <linkw@linux.ibm.com>

	PR middle-end/106833
	* tree.cc (verify_opaque_type): New function.
	(verify_type): Call verify_opaque_type for OPAQUE_TYPE.

2022-09-09  Kwok Cheung Yeung  <kcy@codesourcery.com>

	* config/gcn/gcn-builtins.def (FABSVF, LDEXPVF, LDEXPV, FREXPVF_EXP,
	FREXPVF_MANT, FREXPV_EXP, FREXPV_MANT): Add new builtins.
	* config/gcn/gcn-protos.h (gcn_dconst1over2pi): New prototype.
	* config/gcn/gcn-valu.md (MATH_UNOP_1OR2REG, MATH_UNOP_1REG,
	MATH_UNOP_TRIG): New iterators.
	(math_unop): New attributes.
	(<math_unop><mode>2, <math_unop><mode>2<exec>,
	<math_unop><mode>2, <math_unop><mode>2<exec>,
	*<math_unop><mode>2_insn, *<math_unop><mode>2<exec>_insn,
	ldexp<mode>3, ldexp<mode>3<exec>,
	frexp<mode>_exp2, frexp<mode>_mant2,
	frexp<mode>_exp2<exec>, frexp<mode>_mant2<exec>): New instructions.
	(<math_unop><mode>2, <math_unop><mode>2<exec>): New expanders.
	* config/gcn/gcn.cc (init_ext_gcn_constants): Update definition of
	dconst1over2pi.
	(gcn_dconst1over2pi): New.
	(gcn_builtin_type_index): Add entry for v64df type.
	(v64df_type_node): New.
	(gcn_init_builtin_types): Initialize v64df_type_node.
	(gcn_expand_builtin_1): Expand new builtins to instructions.
	(print_operand): Fix assembler output for 1/(2*PI) constant.
	* config/gcn/gcn.md (unspec): Add new entries.

2022-09-09  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106722
	* tree-predcom.cc (ref_at_iteration): Do not associate the
	constant part of the offset into the MEM_REF offset
	operand, across a non-zero offset.

2022-09-09  Kito Cheng  <kito.cheng@sifive.com>

	* common/config/riscv/riscv-common.cc (RISCV_USE_CUSTOMISED_MULTI_LIB):
	Move forward for cover all all necessary functions for suppress
	unused function warnings.
	(riscv_multi_lib_check): Move forward, and tweak message to suppress
	-Werror=format-diag warning.

2022-09-09  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106881
	* gimple-predicate-analysis.cc (simple_control_dep_chain):
	Add only non-fallthru edges and avoid the same set of edges
	as compute_control_dep_chain_pdom does.

2022-09-09  Jan-Benedict Glaw  <jbglaw@lug-owl.de>

	* doc/tm.texi.in (TARGET_OVERRIDES_FORMAT_ATTRIBUTES): Document requirement
	of TARGET_OVERRIDES_FORMAT_ATTRIBUTES_COUNT being defined as well.
	* doc/tm.texi: Regenerate.

2022-09-09  Martin Liska  <mliska@suse.cz>

	* optc-save-gen.awk: Always compare array option values with memcmp.

2022-09-08  Jonathan Wakely  <jwakely@redhat.com>

	PR c++/106838
	* doc/extend.texi (Type Traits): Fix requirements. Document
	__is_aggregate and __is_final.

2022-09-08  Tim Lange  <mail@tim-lange.me>

	PR analyzer/106625
	* doc/invoke.texi:
	State that the checker also reasons about symbolic values.

2022-09-08  Richard Sandiford  <richard.sandiford@arm.com>

	PR tree-optimization/106886
	* tree-vect-slp.cc (vect_optimize_slp_pass::get_result_with_layout):
	Fix copying of scalar stmts.

2022-09-08  Chung-Lin Tang  <cltang@codesourcery.com>

	* config/nios2/linux.h (MUSL_DYNAMIC_LINKER): Add #undef before #define.

2022-09-08  Richard Biener  <rguenther@suse.de>

	PR middle-end/106870
	* gimple-harden-conditionals.cc (insert_check_and_trap):
	Set the control-altering flag on the built IFN_TRAP.
	* gimple.cc (gimple_build_builtin_unreachable): Likewise.
	* tree-cfg.cc (handle_abnormal_edges): Set the control-altering
	flag on the .ABNORMAL_DISPATCHER call.
	* tree-cfgcleanup.cc (cleanup_call_ctrl_altering_flag): Avoid
	resetting the control altering flag for ECF_NORETURN calls.
	(cleanup_control_flow_bb): Set the control altering flag on
	discovered noreturn calls.
	* symtab-thunks.cc (expand_thunk): Set the control altering
	flag for the noreturn tailcall case.
	* tree-eh.cc (lower_resx): Likewisw for trap and unwind_resume
	calls.

2022-09-08  Jakub Jelinek  <jakub@redhat.com>

	* omp-expand.cc (expand_omp_ordered_sink): Add CONT_BB argument.
	Add doacross(sink:omp_cur_iteration-1) support.
	(expand_omp_ordered_source_sink): Clear counts[fd->ordered + 1].
	Adjust expand_omp_ordered_sink caller.
	(expand_omp_for_ordered_loops): If counts[fd->ordered + 1] is
	non-NULL, set that variable to true at the start of outermost
	non-collapsed loop and set it to false at the end of innermost
	ordered loop.
	(expand_omp_for_generic): If fd->ordered, allocate
	1 + (fd->ordered - fd->collapse) further elements in counts array.
	Copy to counts + 2 + fd->ordered the counts of fd->collapse ..
	fd->ordered - 1 loop if any.

2022-09-08  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106881
	* gimple-predicate-analysis.cc (compute_control_dep_chain_pdom):
	Add only non-fallthru edges and avoid the same set of edges
	as the caller does.

2022-09-08  Aldy Hernandez  <aldyh@redhat.com>

	* gimple-range-fold.cc
	(fold_using_range::range_of_builtin_int_call): Use fpclassify like API.
	* range-op-float.cc (finite_operand_p): Same.
	(finite_operands_p): Same.
	(foperator_lt::fold_range): Same.
	(foperator_le::fold_range): Same.
	(foperator_gt::fold_range): Same.
	(foperator_ge::fold_range): Same.
	(foperator_unordered::fold_range): Same.
	(foperator_unordered::op1_range): Same.
	(foperator_ordered::fold_range): Same.
	* value-range.cc (frange::set_nan): Same.
	(frange::set_signbit): Same.
	(frange::union_): Same.
	(frange::intersect): Same.
	(frange::operator==): Same.
	(frange::singleton_p): Same.
	(frange::verify_range): Same.
	(range_tests_nan): Same.
	(range_tests_floats): Same.
	* value-range.h(frange::known_finite): New.
	(frange::maybe_inf): New.
	(frange::known_inf): New.
	(frange::maybe_nan): New.
	(frange::known_nan): New.
	(frange::known_signbit): New.

2022-09-08  Iain Buclaw  <ibuclaw@gdcproject.org>

	* config/darwin-d.cc: Include tm.h.
	* config/dragonfly-d.cc: Likewise.
	* config/freebsd-d.cc: Remove memmodel.h.
	* config/glibc-d.cc: Likewise.
	* config/netbsd-d.cc: Include tm.h.
	* config/openbsd-d.cc: Likewise.
	* config/sol2-d.cc: Likewise.

2022-09-08  Christophe Lyon  <christophe.lyon@arm.com>

	* config/arm/mve.md (mve_vqshluq_n_s<mode>): Use
	MVE_pred/MVE_constraint instead of mve_imm_7/Ra.
	(mve_vqshluq_m_n_s<mode>): Likewise.
	(mve_vqrshrnbq_n_<supf><mode>): Use MVE_pred3/MVE_constraint3
	instead of mve_imm_8/Rb.
	(mve_vqrshrunbq_n_s<mode>): Likewise.
	(mve_vqrshrntq_n_<supf><mode>): Likewise.
	(mve_vqrshruntq_n_s<mode>): Likewise.
	(mve_vrshrnbq_n_<supf><mode>): Likewise.
	(mve_vrshrntq_n_<supf><mode>): Likewise.
	(mve_vqrshrnbq_m_n_<supf><mode>): Likewise.
	(mve_vqrshrntq_m_n_<supf><mode>): Likewise.
	(mve_vrshrnbq_m_n_<supf><mode>): Likewise.
	(mve_vrshrntq_m_n_<supf><mode>): Likewise.
	(mve_vqrshrunbq_m_n_s<mode>): Likewise.
	(mve_vsriq_n_<supf><mode): Use MVE_pred2/MVE_constraint2 instead
	of mve_imm_selective_upto_8/Rg.
	(mve_vsriq_m_n_<supf><mode>): Likewise.

2022-09-08  Jiufu Guo  <guojiufu@linux.ibm.com>

	* config/rs6000/rs6000.md (splitter for set to and_mask constants):
	Use int_reg_operand (instead of int_reg_operand_not_pseudo).
	(splitter for multi-insn constant loads): Ditto.

2022-09-08  Sebastian Huber  <sebastian.huber@embedded-brains.de>

	* config/rs6000/rtems.h (CPP_OS_DEFAULT_SPEC): Define __PPC_VRSAVE__ if
	-mvrsave is present.
	* config/rs6000/t-rtems: Add -mvrsave multilib variants for
	-mcpu=e6500.

2022-09-07  Martin Liska  <mliska@suse.cz>

	* configure.ac: Restore detection of  HAVE_XCOFF_DWARF_EXTRAS.
	* config/rs6000/rs6000.cc (HAVE_XCOFF_DWARF_EXTRAS): Reset it.
	* configure: Regenerate.
	* config.in: Regenerate.

2022-09-07  Surya Kumari Jangala  <jskumari@linux.ibm.com>

	PR rtl-optimization/105586
	* sched-rgn.cc (save_state_for_fallthru_edge): New function.
	(schedule_region): Use it for all blocks.

2022-09-07  Joseph Myers  <joseph@codesourcery.com>

	* ginclude/stdalign.h [defined __STDC_VERSION__ &&
	__STDC_VERSION__ > 201710L]: Disable all content.
	* ginclude/stdbool.h [defined __STDC_VERSION__ && __STDC_VERSION__
	> 201710L] (bool, true, false): Do not define.

2022-09-07  Martin Liska  <mliska@suse.cz>

	PR bootstrap/106855
	* collect2.cc (scan_prog_file): Restore if XCOFF_DEBUGGING_INFO.
	* config/rs6000/rs6000.cc (rs6000_option_override_internal):
	Restore usage of XCOFF_DEBUGGING_INFO.
	* config/rs6000/xcoff.h (XCOFF_DEBUGGING_INFO): Restore.
	* dwarf2asm.cc (XCOFF_DEBUGGING_INFO): Restore support for
	XCOFF_DEBUGGING_INFO.
	(dw2_asm_output_nstring): Likewise.
	(USE_LINKONCE_INDIRECT): Likewise.
	* dwarf2out.cc (XCOFF_DEBUGGING_INFO): Likewise.
	(HAVE_XCOFF_DWARF_EXTRAS): Likewise.
	(output_fde): Likewise.
	(output_call_frame_info): Likewise.
	(have_macinfo): Likewise.
	(add_AT_loc_list): Likewise.
	(add_AT_view_list): Likewise.
	(output_compilation_unit_header): Likewise.
	(output_pubnames): Likewise.
	(output_aranges): Likewise.
	(output_line_info): Likewise.
	(output_macinfo): Likewise.
	(dwarf2out_finish): Likewise.
	(dwarf2out_early_finish): Likewise.

2022-09-07  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106866
	* tree-ssa-dce.cc (eliminate_unnecessary_stmts): When
	we changed cfun->calls_setjmp make sure to purge all
	abnormal call edges.

2022-09-07  Xianmiao Qu  <cooper.qu@linux.alibaba.com>

	* config/csky/csky.cc (csky_emit_compare_float): Fix the expanding of
	float LE comparing with zero for fpuv3.
	* config/csky/csky.h (TARGET_SUPPORT_FPV2): New, true if any fpuv2
	features are enabled.

2022-09-07  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106860
	* tree-ssa-loop-split.cc (split_loop): Find the exit to
	latch edge from the loop exit edge instead of from the
	latch.  Verify we're going to find it.

2022-09-07  Richard Biener  <rguenther@suse.de>

	* gimple-predicate-analysis.cc (dfs_mark_dominating_region):
	Adjust to take the region exit source as argument.
	(uninit_analysis::init_from_phi_def): Adjust.
	(uninit_analysis::init_use_preds): Mark the dominating region
	before computing control dependences.

2022-09-07  Richard Sandiford  <richard.sandiford@arm.com>

	* config/aarch64/aarch64.md (*mov<SHORT:mode>_aarch64): Extend
	w<-w, r<-w and w<-r alternatives to !simd, using 32-bit moves
	in that case.  Extend w<-r to w<-Z.
	(*mov<HFBF:mode>_aarch64): Likewise, but with Y instead of Z.
	(*movti_aarch64): Use an FMOV from XZR for w<-Z if MOVI is not
	available.
	(define_split): Do not apply the floating-point immediate-to-register
	split to zeros, even if MOVI is not available.

2022-09-07  Richard Sandiford  <richard.sandiford@arm.com>

	* config/aarch64/aarch64.cc (aarch64_conditional_register_usage):
	Disallow use of FPRs in register asms for !TARGET_FLOAT.

2022-09-07  Lulu Cheng  <chenglulu@loongson.cn>

	PR target/106828
	* config/loongarch/loongarch.cc (loongarch_asan_shadow_offset): New.
	(TARGET_ASAN_SHADOW_OFFSET): New.

2022-09-07  Jakub Jelinek  <jakub@redhat.com>

	* doc/invoke.texi (-Wno-unicode): Document.

2022-09-07  Jiufu Guo  <guojiufu@linux.ibm.com>

	* config/rs6000/rs6000.md (const_scalar_int splitter): Remove.

2022-09-07  Jiufu Guo  <guojiufu@linux.ibm.com>

	* config/rs6000/rs6000.md: (constant splitters): Use "(pc)" as the
	replacements.

2022-09-07  liuhongt  <hongtao.liu@intel.com>

	PR tree-optimization/103144
	* tree-vect-loop.cc (vect_is_nonlinear_iv_evolution): New function.
	(vect_analyze_scalar_cycles_1): Detect nonlinear iv by upper function.
	(vect_create_nonlinear_iv_init): New function.
	(vect_peel_nonlinear_iv_init): Ditto.
	(vect_create_nonlinear_iv_step): Ditto
	(vect_create_nonlinear_iv_vec_step): Ditto
	(vect_update_nonlinear_iv): Ditto
	(vectorizable_nonlinear_induction): Ditto.
	(vectorizable_induction): Call
	vectorizable_nonlinear_induction when induction_type is not
	vect_step_op_add.
	* tree-vect-loop-manip.cc (vect_update_ivs_after_vectorizer):
	Update nonlinear iv for epilogue loop.
	* tree-vectorizer.h (enum vect_induction_op_type): New enum.
	(STMT_VINFO_LOOP_PHI_EVOLUTION_TYPE): New Macro.

2022-09-06  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106754
	* gimple-predicate-analysis.cc (compute_control_dep_chain_pdom):
	New function, split out from compute_control_dep_chain.  Handle
	loop-exit like conditions here by pushing to the control vector.
	(compute_control_dep_chain): Adjust and streamline dumping.
	In the wrapper perform a post-dominator walk as well.
	(uninit_analysis::init_use_preds): Remove premature early exit.

2022-09-06  Max Filippov  <jcmvbkbc@gmail.com>

	* config/xtensa/linux.h (LINK_SPEC): Add static-pie.

2022-09-06  Aldy Hernandez  <aldyh@redhat.com>

	* range-op-float.cc (build_le): Handle NANs and going past infinity.
	(build_lt): Same.
	(build_ge): Same.
	(build_gt): Same.
	(foperator_lt::op1_range): Avoid adjustments to range if build_*
	returned false.
	(foperator_lt::op2_range): Same.
	(foperator_le::op1_range): Same.
	(foperator_le::op2_range): Same.
	(foperator_gt::op1_range): Same.
	(foperator_gt::op2_range): Same.

2022-09-06  Richard Biener  <rguenther@suse.de>

	* gimple-predicate-analysis.cc (compute_control_dep_chain):
	Add output flag to indicate whether we possibly have dropped
	any chains.  Return whether the info is complete from the
	wrapping overload.
	(uninit_analysis::init_use_preds): Adjust accordingly, with
	a workaround for PR106754.
	(uninit_analysis::init_from_phi_def): Properly guard the
	case where we complete an empty chain.

2022-09-06  Jan-Benedict Glaw  <jbglaw@lug-owl.de>

	* config/msp430/msp430.cc (msp430_single_op_cost): Document unused argument.

2022-09-06  Prathamesh Kulkarni  <prathamesh.kulkarni@linaro.org>

	* tree-ssa-forwprop.cc (simplify_permutation): Set res_type to a vector
	type with same element type as arg0, and length as op2.

2022-09-06  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106844
	* gimple-predicate-analysis.cc (compute_control_dep_chain):
	Return whether we found a chain.

2022-09-06  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106841
	* tree-vect-slp.cc (vect_detect_hybrid_slp): Also process
	scatter/gather offset.

2022-09-06  Jan-Benedict Glaw  <jbglaw@lug-owl.de>

	* config/bpf/bpf.h (REGNO_REG_CLASS): Reference arguments as (void).

2022-09-06  Jakub Jelinek  <jakub@redhat.com>

	* gimple.h (enum gf_mask): Add GF_OMP_ORDERED_STANDALONE enumerator.
	(gimple_omp_subcode):  Use GIMPLE_OMP_ORDERED instead of
	GIMPLE_OMP_TEAMS as upper bound.
	(gimple_omp_ordered_standalone_p, gimple_omp_ordered_standalone): New
	inline functions.
	* gimplify.cc (find_standalone_omp_ordered): Look for OMP_ORDERED with
	NULL OMP_ORDERED_BODY rather than with OMP_DOACROSS clause.
	(gimplify_expr): Call gimple_omp_ordered_standalone for OMP_ORDERED
	with NULL OMP_ORDERED_BODY.
	* omp-low.cc (check_omp_nesting_restrictions): Use
	gimple_omp_ordered_standalone_p test instead of
	omp_find_clause (..., OMP_CLAUSE_DOACROSS).
	(lower_omp_ordered): Likewise.
	* omp-expand.cc (expand_omp, build_omp_regions_1,
	omp_make_gimple_edges): Likewise.

2022-09-06  Xianmiao Qu  <cooper.qu@linux.alibaba.com>

	* config/csky/csky.md (cskyv2_addcc): Fix missing operand.
	(cskyv2_addcc_invert): Likewise.

2022-09-06  Jose E. Marchesi  <jose.marchesi@oracle.com>

	* config/bpf/bpf.cc (bpf_expand_prologue): Remove unused automatic
	`insn'.
	(bpf_expand_epilogue): Likewise.

2022-09-06  liuhongt  <hongtao.liu@intel.com>

	* config/i386/i386-builtin.def (IX86_BUILTIN_CVTPS2PH512):
	Map to CODE_FOR_avx512f_vcvtps2ph512_mask_sae.
	* config/i386/sse.md (<mask_codefor>avx512f_vcvtps2ph512<mask_name>): Extend to ..
	(<mask_codefor>avx512f_vcvtps2ph512<mask_name><round_saeonly_name>): .. this.
	(avx512f_vcvtps2ph512_mask_sae): New expander

2022-09-05  Aldy Hernandez  <aldyh@redhat.com>

	* gimple-range-fold.cc
	(fold_using_range::range_of_builtin_int_call): Ignore sign bit
	when there's the possibility of a NAN.

2022-09-05  Aldy Hernandez  <aldyh@redhat.com>

	* gimple-range-fold.cc
	(fold_using_range::range_of_builtin_int_call): Fold a set signbit
	in __builtin_signbit to nonzero.

2022-09-05  Alexander Monakov  <amonakov@ispras.ru>

	PR target/106453
	* config/i386/i386.md (sse4_2_crc32di): Model that only low 32
	bits of operand 0 are consumed, and the result is zero-extended
	to 64 bits.

2022-09-05  Aldy Hernandez  <aldyh@redhat.com>

	PR middle-end/106831
	* value-range.h (frange::supports_p): Disable decimal floats.
	* range-op-float.cc (frange_drop_inf): Remove DECIMAL_FLOAT_MODE_P
	check.
	(frange_drop_ninf): Same.

2022-09-05  Aldy Hernandez  <aldyh@redhat.com>

	PR middle-end/106824
	* value-range.cc (frange::set_nan): Set undefined when updating a
	NAN to a non-NAN.

2022-09-05  Kito Cheng  <kito.cheng@sifive.com>

	* config/riscv/riscv.cc (riscv_option_override): Fix wrong
	condition for MASK_DIV and simplify incompatible checking.
	* config/riscv/riscv.md (muldi3): Adding parentheses.

2022-09-05  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* config/aarch64/aarch64.cc (aarch64_validate_march): Check if invalid arch
	string is a valid -mcpu string and emit hint.

2022-09-05  LiaoShihua  <shihua@iscas.ac.cn>

	* common/config/riscv/riscv-common.cc: Add Zmmul.
	* config/riscv/riscv-opts.h (MASK_ZMMUL): New.
	(TARGET_ZMMUL): Ditto.
	* config/riscv/riscv.cc (riscv_option_override):Ditto.
	* config/riscv/riscv.md: Add Zmmul
	* config/riscv/riscv.opt: Ditto.

2022-09-05  Richard Biener  <rguenther@suse.de>

	* tree-cfg.h (get_cases_for_edge): Declare.
	* tree-cfg.cc (get_cases_for_edge): Export.
	* tree-ssa-uninit.cc (execute_late_warn_uninitialized):
	Start and end recording case labels.
	* gimple-predicate-analysis.cc (MAX_SWITCH_CASES): Remove.
	(predicate::init_from_control_deps): Use get_cases_for_edge.

2022-09-05  Richard Biener  <rguenther@suse.de>

	* gimple-predicate-analysis.cc (MAX_POSTDOM_CHECK): Remove.
	(compute_control_dep_chain): Move uninit-control-dep-attempts
	checking where it also counts the post-dominator check
	invocations.

2022-09-05  Richard Biener  <rguenther@suse.de>

	* gimple-predicate-analysis.h (predicate::debug): New.
	(predicate::dump): Add FILE * argument, add base overload.
	* gimple-predicate-analysis.cc (debug): New.
	(dump_pred_info): Add FILE * argument.
	(dump_pred_chain): Likewise.
	(predicate::dump): Split out preamble into overload.  Add
	FILE * argument.
	(predicate::debug): New.
	(predicate::simplify): Adjust.
	(predicate::normalize): Likewise.
	(predicate::init_from_control_deps): Likewise.

2022-09-05  Richard Sandiford  <richard.sandiford@arm.com>

	* config/aarch64/aarch64-protos.h
	(aarch64_init_simd_builtins): Remove prototype.
	* config/aarch64/aarch64-builtins.cc
	(aarch64_simd_builtins_initialized_p): Delete.
	(aarch64_init_simd_builtins): Make static.  Remove protection
	against multiple calls.
	* config/aarch64/aarch64-c.cc (aarch64_pragma_target_parse): Remove
	lazy SIMD builtin initialization.
	* config/aarch64/aarch64.cc
	(aarch64_option_valid_attribute_p): Likewise.

2022-09-05  Xi Ruoyao  <xry111@xry111.site>

	* config/loongarch/genopts/loongarch.opt.in: Add
	-mdirect-extern-access option.
	* config/loongarch/loongarch.opt: Regenerate.
	* config/loongarch/loongarch.cc
	(loongarch_symbol_binds_local_p): Return true if
	TARGET_DIRECT_EXTERN_ACCESS.
	(loongarch_option_override_internal): Complain if
	-mdirect-extern-access is used with -fPIC or -fpic.
	* doc/invoke.texi: Document -mdirect-extern-access for
	LoongArch.

2022-09-05  Martin Liska  <mliska@suse.cz>

	* doc/tm.texi.in: Rename DEBUGGER_REGISTER_NUMBER to
	DEBUGGER_REGNO.
	* doc/tm.texi: Regenerate.

2022-09-05  Martin Liska  <mliska@suse.cz>

	* config/aarch64/aarch64-protos.h (aarch64_dbx_regno):
	Rename DBX_REGISTER_NUMBER to DEBUGGER_REGNO.
	(aarch64_debugger_regno): Likewise.
	* config/aarch64/aarch64.cc (aarch64_dbx_regno): Likewise.
	(aarch64_debugger_regno): Likewise.
	* config/aarch64/aarch64.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	(DWARF_FRAME_REGNUM): Likewise.
	* config/alpha/alpha.h (DWARF_FRAME_REGNUM): Likewise.
	* config/arc/arc.cc (arc_init_reg_tables): Likewise.
	* config/arc/arc.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* config/arm/arm-protos.h (arm_dbx_regno): Likewise.
	(arm_debugger_regno): Likewise.
	* config/arm/arm.cc (arm_dbx_regno): Likewise.
	(arm_debugger_regno): Likewise.
	* config/arm/arm.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* config/bfin/bfin.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* config/c6x/c6x.cc: Likewise.
	* config/c6x/c6x.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* config/cris/cris.h (enum reg_class): Likewise.
	(DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* config/csky/csky.cc (enum reg_class): Likewise.
	* config/csky/csky.h (DWARF_FRAME_REGNUM): Likewise.
	(DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* config/frv/frv.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* config/gcn/gcn-hsa.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* config/gcn/gcn.cc (print_operand): Likewise.
	* config/i386/bsd.h (ASM_QUAD): Likewise.
	* config/i386/cygming.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	(DWARF_FRAME_REGNUM): Likewise.
	* config/i386/darwin.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* config/i386/djgpp.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* config/i386/dragonfly.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* config/i386/freebsd.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* config/i386/gas.h: Likewise.
	* config/i386/gnu-user.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* config/i386/i386.cc (enum reg_class): Likewise.
	* config/i386/i386.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* config/i386/i386elf.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* config/i386/iamcu.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* config/i386/lynx.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* config/i386/netbsd-elf.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* config/i386/nto.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* config/i386/openbsdelf.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* config/i386/sysv4.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* config/i386/vxworks.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* config/i386/x86-64.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* config/ia64/ia64-protos.h (ia64_dbx_regno): Likewise.
	(ia64_debugger_regno): Likewise.
	* config/ia64/ia64.cc (ia64_output_function_prologue): Likewise.
	(ia64_dbx_regno): Likewise.
	(ia64_debugger_regno): Likewise.
	(process_cfa_adjust_cfa): Likewise.
	(process_cfa_register): Likewise.
	(ia64_asm_unwind_emit): Likewise.
	* config/ia64/ia64.h: Likewise.
	* config/ia64/sysv4.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* config/lm32/lm32.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* config/m32c/m32c.cc (m32c_eh_return_stackadj_rtx): Likewise.
	* config/m32c/m32c.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* config/m68k/linux.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* config/m68k/m68k.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	(__transfer_from_trampoline): Likewise.
	* config/m68k/m68kelf.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* config/m68k/netbsd-elf.h (M68K_STATIC_CHAIN_REG_NAME): Likewise.
	(DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* config/microblaze/microblaze.cc (microblaze_option_override): Likewise.
	* config/microblaze/microblaze.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	(GP_DBX_FIRST): Likewise.
	(GP_DEBUGGER_FIRST): Likewise.
	* config/mips/vxworks.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* config/mmix/mmix-protos.h (mmix_dbx_regno): Likewise.
	(mmix_debugger_regno): Likewise.
	* config/mmix/mmix.cc (mmix_dbx_regno): Likewise.
	(mmix_debugger_regno): Likewise.
	* config/mmix/mmix.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* config/nds32/nds32-protos.h (nds32_dbx_regno): Likewise.
	(nds32_debugger_regno): Likewise.
	* config/nds32/nds32.cc (nds32_dbx_regno): Likewise.
	(nds32_debugger_regno): Likewise.
	(nds32_use_blocks_for_constant_p): Likewise.
	* config/nds32/nds32.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* config/nvptx/nvptx.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* config/or1k/or1k.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* config/pa/pa32-regs.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* config/pa/pa64-regs.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* config/rs6000/rs6000-protos.h (rs6000_dbx_regno): Likewise.
	(rs6000_debugger_regno): Likewise.
	* config/rs6000/rs6000.cc (rs6000_dbx_regno): Likewise.
	(rs6000_debugger_regno): Likewise.
	* config/rs6000/rs6000.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	(DWARF2_FRAME_REG_OUT): Likewise.
	* config/s390/s390.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* config/sh/elf.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* config/sh/linux.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* config/sh/sh.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	(SH_DBX_REGISTER_NUMBER): Likewise.
	(SH_DEBUGGER_REGNO): Likewise.
	* config/visium/visium.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* config/xtensa/elf.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* config/xtensa/linux.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* config/xtensa/uclinux.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* config/xtensa/xtensa-protos.h (xtensa_dbx_regno): Likewise.
	(xtensa_debugger_regno): Likewise.
	* config/xtensa/xtensa.cc (xtensa_dbx_regno): Likewise.
	(xtensa_debugger_regno): Likewise.
	* config/xtensa/xtensa.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	* defaults.h (DBX_REGISTER_NUMBER): Likewise.
	(DEBUGGER_REGNO): Likewise.
	(DWARF_FRAME_REGNUM): Likewise.
	* doc/tm.texi: Likewise.
	* doc/tm.texi.in: Likewise.
	* dwarf2out.cc (dbx_reg_number): Likewise.
	(debugger_reg_number): Likewise.
	(reg_loc_descriptor): Likewise.
	(multiple_reg_loc_descriptor): Likewise.
	(mem_loc_descriptor): Likewise.
	* except.cc: Likewise.

2022-09-05  konglin1  <lingling.kong@intel.com>

	PR target/106742
	* config/i386/i386-expand.cc (ix86_expand_vector_init_duplicate):
	Handle V8BF mode.
	(expand_vec_perm_broadcast_1): Ditto.
	* config/i386/sse.md (avx512fmaskhalfmode): Add BF vector mode.
	(vec_set<mode>_0): Add @ to it.
	(@vec_set<mode>_0): Ditto.
	(vec_interleave_high<mode><mask_name>): Ditto.
	(@vec_interleave_high<mode><mask_name>): Ditto.
	(vec_interleave_low<mode><mask_name>): Ditto.
	(@vec_interleave_low<mode><mask_name>): Ditto.
	* config/i386/subst.md (SUBST_V): Add BF vector mode.

2022-09-05  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.cc (early_nan_resolve): Remove.
	(frange::intersect): Handle NANs.

2022-09-04  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.cc (frange::union_): Do not drop properties when
	unioning a NAN with something else.
	(range_tests_signed_zeros): Add tests.

2022-09-04  Aldy Hernandez  <aldyh@redhat.com>

	* real.cc (encode_ieee_single): Use real_isdenormal.
	(encode_ieee_double): Same.
	(encode_ieee_extended): Same.
	(encode_ieee_quad): Same.
	(encode_ieee_half): Same.
	(encode_arm_bfloat_half): Same.
	* real.h (real_isdenormal): New.

2022-09-03  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.cc (frange::singleton_p): Move NAN check to the top.

2022-09-03  Jan-Benedict Glaw  <jbglaw@lug-owl.de>

	* config/nvptx/nvptx.h (ASM_OUTPUT_DEF): Reference macro arguments.

2022-09-03  Jakub Jelinek  <jakub@redhat.com>

	* tree-core.h (enum omp_clause_code): Add OMP_CLAUSE_DOACROSS.
	(enum omp_clause_depend_kind): Remove OMP_CLAUSE_DEPEND_SOURCE
	and OMP_CLAUSE_DEPEND_SINK, add OMP_CLAUSE_DEPEND_INVALID.
	(enum omp_clause_doacross_kind): New type.
	(struct tree_omp_clause): Add subcode.doacross_kind member.
	* tree.h (OMP_CLAUSE_DEPEND_SINK_NEGATIVE): Remove.
	(OMP_CLAUSE_DOACROSS_KIND): Define.
	(OMP_CLAUSE_DOACROSS_SINK_NEGATIVE): Define.
	(OMP_CLAUSE_DOACROSS_DEPEND): Define.
	(OMP_CLAUSE_ORDERED_DOACROSS): Define.
	* tree.cc (omp_clause_num_ops, omp_clause_code_name): Add
	OMP_CLAUSE_DOACROSS entries.
	* tree-nested.cc (convert_nonlocal_omp_clauses,
	convert_local_omp_clauses): Handle OMP_CLAUSE_DOACROSS.
	* tree-pretty-print.cc (dump_omp_clause): Don't handle
	OMP_CLAUSE_DEPEND_SOURCE and OMP_CLAUSE_DEPEND_SINK.  Handle
	OMP_CLAUSE_DOACROSS.
	* gimplify.cc (gimplify_omp_depend): Don't handle
	OMP_CLAUSE_DEPEND_SOURCE and OMP_CLAUSE_DEPEND_SINK.
	(gimplify_scan_omp_clauses): Likewise.  Handle OMP_CLAUSE_DOACROSS.
	(gimplify_adjust_omp_clauses): Handle OMP_CLAUSE_DOACROSS.
	(find_standalone_omp_ordered): New function.
	(gimplify_omp_for): When OMP_CLAUSE_ORDERED is present, search
	body for OMP_ORDERED with OMP_CLAUSE_DOACROSS and if found,
	set OMP_CLAUSE_ORDERED_DOACROSS.
	(gimplify_omp_ordered): Don't handle OMP_CLAUSE_DEPEND_SINK or
	OMP_CLAUSE_DEPEND_SOURCE, instead check OMP_CLAUSE_DOACROSS, adjust
	diagnostics that presence or absence of ordered clause parameter
	is irrelevant.  Handle doacross(sink:omp_cur_iteration-1).  Use
	actual user name of the clause - doacross or depend - in diagnostics.
	* omp-general.cc (omp_extract_for_data): Don't set fd->ordered
	if !OMP_CLAUSE_ORDERED_DOACROSS (t).  If
	OMP_CLAUSE_ORDERED_DOACROSS (t) but !OMP_CLAUSE_ORDERED_EXPR (t),
	set fd->ordered to -1 and set it after the loop in that case to
	fd->collapse.
	* omp-low.cc (check_omp_nesting_restrictions): Don't handle
	OMP_CLAUSE_DEPEND_SOURCE nor OMP_CLAUSE_DEPEND_SINK, instead check
	OMP_CLAUSE_DOACROSS.  Use actual user name of the clause - doacross
	or depend - in diagnostics.  Diagnose mixing of stand-alone and
	block associated ordered constructs binding to the same loop.
	(lower_omp_ordered_clauses): Don't handle OMP_CLAUSE_DEPEND_SINK,
	instead handle OMP_CLAUSE_DOACROSS.
	(lower_omp_ordered): Look for OMP_CLAUSE_DOACROSS instead of
	OMP_CLAUSE_DEPEND.
	(lower_depend_clauses): Don't handle OMP_CLAUSE_DEPEND_SOURCE and
	OMP_CLAUSE_DEPEND_SINK.
	* omp-expand.cc (expand_omp_ordered_sink): Emit a sorry for
	doacross(sink:omp_cur_iteration-1).
	(expand_omp_ordered_source_sink): Use
	OMP_CLAUSE_DOACROSS_SINK_NEGATIVE instead of
	OMP_CLAUSE_DEPEND_SINK_NEGATIVE.  Use actual user name of the clause
	- doacross or depend - in diagnostics.
	(expand_omp): Look for OMP_CLAUSE_DOACROSS clause instead of
	OMP_CLAUSE_DEPEND.
	(build_omp_regions_1): Likewise.
	(omp_make_gimple_edges): Likewise.
	* lto-streamer-out.cc (hash_tree): Handle OMP_CLAUSE_DOACROSS.
	* tree-streamer-in.cc (unpack_ts_omp_clause_value_fields): Likewise.
	* tree-streamer-out.cc (pack_ts_omp_clause_value_fields): Likewise.

2022-09-02  David Malcolm  <dmalcolm@redhat.com>

	PR c/90885
	* doc/invoke.texi (Warning Options): Add -Wxor-used-as-pow.

2022-09-02  Iain Buclaw  <ibuclaw@gdcproject.org>

	PR d/105659
	* config.gcc: Set tm_d_file to ${cpu_type}/${cpu_type}-d.h.
	* config/aarch64/aarch64-d.cc: Include tm_d.h.
	* config/aarch64/aarch64-protos.h (aarch64_d_target_versions): Move to
	config/aarch64/aarch64-d.h.
	(aarch64_d_register_target_info): Likewise.
	* config/aarch64/aarch64.h (TARGET_D_CPU_VERSIONS): Likewise.
	(TARGET_D_REGISTER_CPU_TARGET_INFO): Likewise.
	* config/arm/arm-d.cc: Include tm_d.h and arm-protos.h instead of
	tm_p.h.
	* config/arm/arm-protos.h (arm_d_target_versions): Move to
	config/arm/arm-d.h.
	(arm_d_register_target_info): Likewise.
	* config/arm/arm.h (TARGET_D_CPU_VERSIONS): Likewise.
	(TARGET_D_REGISTER_CPU_TARGET_INFO): Likewise.
	* config/default-d.cc: Remove memmodel.h include.
	* config/freebsd-d.cc: Include tm_d.h instead of tm_p.h.
	* config/glibc-d.cc: Likewise.
	* config/i386/i386-d.cc: Include tm_d.h.
	* config/i386/i386-protos.h (ix86_d_target_versions): Move to
	config/i386/i386-d.h.
	(ix86_d_register_target_info): Likewise.
	(ix86_d_has_stdcall_convention): Likewise.
	* config/i386/i386.h (TARGET_D_CPU_VERSIONS): Likewise.
	(TARGET_D_REGISTER_CPU_TARGET_INFO): Likewise.
	(TARGET_D_HAS_STDCALL_CONVENTION): Likewise.
	* config/i386/winnt-d.cc: Include tm_d.h instead of tm_p.h.
	* config/mips/mips-d.cc: Include tm_d.h.
	* config/mips/mips-protos.h (mips_d_target_versions): Move to
	config/mips/mips-d.h.
	(mips_d_register_target_info): Likewise.
	* config/mips/mips.h (TARGET_D_CPU_VERSIONS): Likewise.
	(TARGET_D_REGISTER_CPU_TARGET_INFO): Likewise.
	* config/netbsd-d.cc: Include tm_d.h instead of tm.h and memmodel.h.
	* config/openbsd-d.cc: Likewise.
	* config/pa/pa-d.cc: Include tm_d.h.
	* config/pa/pa-protos.h (pa_d_target_versions): Move to
	config/pa/pa-d.h.
	(pa_d_register_target_info): Likewise.
	* config/pa/pa.h (TARGET_D_CPU_VERSIONS): Likewise.
	(TARGET_D_REGISTER_CPU_TARGET_INFO): Likewise.
	* config/riscv/riscv-d.cc: Include tm_d.h.
	* config/riscv/riscv-protos.h (riscv_d_target_versions): Move to
	config/riscv/riscv-d.h.
	(riscv_d_register_target_info): Likewise.
	* config/riscv/riscv.h (TARGET_D_CPU_VERSIONS): Likewise.
	(TARGET_D_REGISTER_CPU_TARGET_INFO): Likewise.
	* config/rs6000/rs6000-d.cc: Include tm_d.h.
	* config/rs6000/rs6000-protos.h (rs6000_d_target_versions): Move to
	config/rs6000/rs6000-d.h.
	(rs6000_d_register_target_info): Likewise.
	* config/rs6000/rs6000.h (TARGET_D_CPU_VERSIONS) Likewise.:
	(TARGET_D_REGISTER_CPU_TARGET_INFO) Likewise.:
	* config/s390/s390-d.cc: Include tm_d.h.
	* config/s390/s390-protos.h (s390_d_target_versions): Move to
	config/s390/s390-d.h.
	(s390_d_register_target_info): Likewise.
	* config/s390/s390.h (TARGET_D_CPU_VERSIONS): Likewise.
	(TARGET_D_REGISTER_CPU_TARGET_INFO): Likewise.
	* config/sol2-d.cc: Include tm_d.h instead of tm.h and memmodel.h.
	* config/sparc/sparc-d.cc: Include tm_d.h.
	* config/sparc/sparc-protos.h (sparc_d_target_versions): Move to
	config/sparc/sparc-d.h.
	(sparc_d_register_target_info): Likewise.
	* config/sparc/sparc.h (TARGET_D_CPU_VERSIONS): Likewise.
	(TARGET_D_REGISTER_CPU_TARGET_INFO): Likewise.
	* configure: Regenerate.
	* configure.ac (tm_d_file): Remove defaults.h.
	(tm_d_include_list): Remove options.h and insn-constants.h.
	* config/aarch64/aarch64-d.h: New file.
	* config/arm/arm-d.h: New file.
	* config/i386/i386-d.h: New file.
	* config/mips/mips-d.h: New file.
	* config/pa/pa-d.h: New file.
	* config/riscv/riscv-d.h: New file.
	* config/rs6000/rs6000-d.h: New file.
	* config/s390/s390-d.h: New file.
	* config/sparc/sparc-d.h: New file.

2022-09-02  Aldy Hernandez  <aldyh@redhat.com>

	* builtins.cc (fold_builtin_inf): Convert use of real_info to dconstinf.
	(fold_builtin_fpclassify): Same.
	* fold-const-call.cc (fold_const_call_cc): Same.
	* match.pd: Same.
	* omp-low.cc (omp_reduction_init_op): Same.
	* realmpfr.cc (real_from_mpfr): Same.
	* tree.cc (build_complex_inf): Same.

2022-09-02  Peter Bergner  <bergner@linux.ibm.com>

	* config/rs6000/rs6000-builtin.cc (rs6000_gimple_fold_mma_builtin): Use
	NOP_EXPR for MMA pointer casting.

2022-09-02  Richard Sandiford  <richard.sandiford@arm.com>

	* tree-vect-slp.cc (vect_optimize_slp_pass::internal_node_cost):
	Reduce the fallback cost to 1.  Only use it if the number of
	input lanes is equal to the number of output lanes.

2022-09-02  Richard Sandiford  <richard.sandiford@arm.com>

	PR tree-optimization/106787
	* tree-vect-slp.cc (vect_map_to_instance): New function, split out
	from...
	(vect_bb_partition_graph_r): ...here.  Replace the visited set
	with a map from nodes to instances.  Ensure that a node only
	appears in one partition.
	(vect_bb_partition_graph): Update accordingly.

2022-09-02  Richard Biener  <rguenther@suse.de>

	* timevar.def (TV_TREE_RPO_VN): New.
	* tree-ssa-sccvn.h (do_rpo_vn): Remove one overload.
	* tree-ssa-sccvn.cc (do_rpo_vn_1): Rename the worker.
	(do_rpo_vn): Unify the public API, track with TV_TREE_RPO_VN.
	(pass_fre::execute): Adjust.
	* tree-ssa-uninit.cc (execute_early_warn_uninitialized): Adjust.

2022-09-02  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106809
	* tree-ssa-sccvn.cc (dominaged_by_p_w_unex): Check we have
	more than one successor before doing extra work.

2022-09-02  Kito Cheng  <kito.cheng@sifive.com>

	* common/config/riscv/riscv-common.cc: Include <vector>.
	(struct riscv_multi_lib_info_t): New.
	(riscv_subset_list::match_score): Ditto.
	(find_last_appear_switch): Ditto.
	(prefixed_with): Ditto.
	(struct multi_lib_info_t): Ditto.
	(riscv_current_arch_str): Ditto.
	(riscv_current_abi_str): Ditto.
	(riscv_multi_lib_info_t::parse): Ditto.
	(riscv_check_cond): Ditto.
	(riscv_check_conds): Ditto.
	(riscv_compute_multilib): Ditto.
	(TARGET_COMPUTE_MULTILIB): Defined.
	* config/riscv/elf.h (LIB_SPEC): Call riscv_multi_lib_check if
	doing link.
	(RISCV_USE_CUSTOMISED_MULTI_LIB): New.
	* config/riscv/riscv.h (riscv_multi_lib_check): New.
	(EXTRA_SPEC_FUNCTIONS): Add riscv_multi_lib_check.
	* config/riscv/riscv-subset.h (riscv_subset_list::match_score): New.

2022-09-02  Kito Cheng  <kito.cheng@sifive.com>

	* common/common-target.def (compute_multilib): New.
	* common/common-targhooks.h (default_compute_multilib): New.
	* common/common-targhooks.cc (default_compute_multilib): New.
	* doc/tm.texi.in (TARGET_COMPUTE_MULTILIB): New.
	* doc/tm.texi: Regen.
	* gcc.cc: Include common/common-target.h.
	(set_multilib_dir) Call targetm_common.compute_multilib.
	(SWITCH_LIVE): Move to opts.h.
	(SWITCH_FALSE): Ditto.
	(SWITCH_IGNORE): Ditto.
	(SWITCH_IGNORE_PERMANENTLY): Ditto.
	(SWITCH_KEEP_FOR_GCC): Ditto.
	(struct switchstr): Ditto.
	* opts.h (SWITCH_LIVE): Move from gcc.c.
	(SWITCH_FALSE): Ditto.
	(SWITCH_IGNORE): Ditto.
	(SWITCH_IGNORE_PERMANENTLY): Ditto.
	(SWITCH_KEEP_FOR_GCC): Ditto.
	(struct switchstr): Ditto.

2022-09-02  Martin Liska  <mliska@suse.cz>

	* config/pdp11/pdp11.h (PREFERRED_DEBUGGING_TYPE): Disable
	debugging format.

2022-09-02  Martin Liska  <mliska@suse.cz>

	* Makefile.in: Remove -gstabs option support, DBX-related
	macros and DBX debugging info support.
	* collect2.cc (scan_prog_file): Likewise.
	* common.opt: Likewise.
	* config.gcc: Likewise.
	* config.in: Likewise.
	* config/aarch64/aarch64-elf.h (DBX_DEBUGGING_INFO): Likewise.
	* config/alpha/alpha.cc: Likewise.
	* config/alpha/elf.h (ASM_SPEC): Likewise.
	* config/arc/arc.h (DBX_DEBUGGING_INFO): Likewise.
	(DBX_CONTIN_LENGTH): Likewise.
	* config/arm/aout.h (DBX_DEBUGGING_INFO): Likewise.
	(DBX_CONTIN_LENGTH): Likewise.
	* config/arm/netbsd-elf.h (DBX_CONTIN_LENGTH): Likewise.
	* config/darwin.h (DSYMUTIL_SPEC): Likewise.
	(ASM_DEBUG_SPEC): Likewise.
	(DBX_DEBUGGING_INFO): Likewise.
	(DBX_USE_BINCL): Likewise.
	(DBX_CONTIN_LENGTH): Likewise.
	(DBX_OUTPUT_NULL_N_SO_AT_MAIN_SOURCE_FILE_END): Likewise.
	* config/epiphany/epiphany.h (DBX_DEBUGGING_INFO): Likewise.
	(DBX_CONTIN_LENGTH): Likewise.
	* config/i386/bsd.h (DBX_NO_XREFS): Likewise.
	(DBX_CONTIN_LENGTH): Likewise.
	* config/i386/gas.h (DBX_NO_XREFS): Likewise.
	(DBX_CONTIN_LENGTH): Likewise.
	* config/ia64/ia64.h: Likewise.
	* config/ia64/sysv4.h (DBX_DEBUGGING_INFO): Likewise.
	* config/m68k/linux.h (DBX_CONTIN_LENGTH): Likewise.
	* config/m68k/openbsd.h (DBX_DEBUGGING_INFO): Likewise.
	(DBX_CONTIN_LENGTH): Likewise.
	(DBX_CONTIN_CHAR): Likewise.
	* config/mips/mips.cc (mips_output_filename): Likewise.
	(mips_option_override): Likewise.
	* config/mips/mips.h (SUBTARGET_ASM_DEBUGGING_SPEC): Likewise.
	(DBX_DEBUGGING_INFO): Likewise.
	(DBX_CONTIN_LENGTH): Likewise.
	(DBX_REGISTER_NUMBER): Likewise.
	(GP_DBX_FIRST): Likewise.
	(FP_DBX_FIRST): Likewise.
	(MD_DBX_FIRST): Likewise.
	* config/nvptx/nvptx.cc: Likewise.
	* config/openbsd.h (DBX_NO_XREFS): Likewise.
	* config/pa/pa-64.h (DBX_DEBUGGING_INFO): Likewise.
	* config/pa/pa.h (ASSEMBLER_DIALECT): Likewise.
	(DBX_CONTIN_LENGTH): Likewise.
	* config/pa/som.h (PREFERRED_DEBUGGING_TYPE): Likewise.
	(DBX_USE_BINCL): Likewise.
	(DBX_LINES_FUNCTION_RELATIVE): Likewise.
	(DBX_OUTPUT_NULL_N_SO_AT_MAIN_SOURCE_FILE_END): Likewise.
	* config/pdp11/pdp11.cc: Likewise.
	* config/pdp11/pdp11.h (DBX_DEBUGGING_INFO): Likewise.
	(PREFERRED_DEBUGGING_TYPE): Likewise.
	(DBX_CONTIN_LENGTH): Likewise.
	* config/rs6000/rs6000-builtin.cc: Likewise.
	* config/rs6000/rs6000-call.cc: Likewise.
	* config/rs6000/rs6000-logue.cc (defined): Likewise.
	* config/rs6000/rs6000.cc (rs6000_option_override_internal): Likewise.
	(HAVE_XCOFF_DWARF_EXTRAS): Likewise.
	(rs6000_xcoff_declare_function_name): Likewise.
	* config/rs6000/sysv4.h (DBX_DEBUGGING_INFO): Likewise.
	(DBX_FUNCTION_FIRST): Likewise.
	* config/rs6000/xcoff.h (XCOFF_DEBUGGING_INFO): Likewise.
	* config/rx/rx.h (DBX_DEBUGGING_INFO): Likewise.
	* config/sh/elf.h (DBX_LINES_FUNCTION_RELATIVE): Likewise.
	(DBX_OUTPUT_NULL_N_SO_AT_MAIN_SOURCE_FILE_END): Likewise.
	* config/sol2.h (NO_DBX_BNSYM_ENSYM): Likewise.
	* config/sparc/freebsd.h (DBX_CONTIN_CHAR): Likewise.
	* config/sparc/netbsd-elf.h (DBX_CONTIN_CHAR): Likewise.
	* config/sparc/sparc.h (DBX_CONTIN_LENGTH): Likewise.
	* config/vax/vax.cc (vax_file_start): Likewise.
	* config/vax/vax.h (DBX_DEBUGGING_INFO): Likewise.
	(DBX_CONTIN_LENGTH): Likewise.
	(DBX_CONTIN_CHAR): Likewise.
	(DBX_NO_XREFS): Likewise.
	(DBX_STATIC_STAB_DATA_SECTION): Likewise.
	* config/vx-common.h (DBX_DEBUGGING_INFO): Likewise.
	(XCOFF_DEBUGGING_INFO): Likewise.
	* configure: Regenerate. Likewise.
	* configure.ac: Likewise.
	* debug.h: Likewise.
	* doc/install.texi: Likewise.
	* doc/invoke.texi: Likewise.
	* doc/passes.texi: Likewise.
	* doc/tm.texi: Likewise.
	* doc/tm.texi.in: Likewise.
	* dwarf2asm.cc (XCOFF_DEBUGGING_INFO): Likewise.
	(dw2_asm_output_nstring): Likewise.
	(USE_LINKONCE_INDIRECT): Likewise.
	* dwarf2out.cc (XCOFF_DEBUGGING_INFO): Likewise.
	(HAVE_XCOFF_DWARF_EXTRAS): Likewise.
	(output_fde): Likewise.
	(output_call_frame_info): Likewise.
	(have_macinfo): Likewise.
	(add_AT_loc_list): Likewise.
	(add_AT_view_list): Likewise.
	(output_compilation_unit_header): Likewise.
	(output_pubnames): Likewise.
	(output_aranges): Likewise.
	(output_line_info): Likewise.
	(output_macinfo): Likewise.
	(dwarf2out_finish): Likewise.
	(dwarf2out_early_finish): Likewise.
	* final.cc (final_scan_insn_1): Likewise.
	(rest_of_handle_final): Likewise.
	* flag-types.h (enum debug_info_type): Likewise.
	(DBX_DEBUG): Likewise.
	(XCOFF_DEBUG): Likewise.
	* function.cc (defined): Likewise.
	* gcc.cc (defined): Likewise.
	(ASM_DEBUG_SPEC): Likewise.
	(ASM_DEBUG_OPTION_SPEC): Likewise.
	* opts.cc (common_handle_option): Likewise.
	(set_debug_level): Likewise.
	* system.h (fancy_abort): Likewise.
	* target-def.h (TARGET_ASM_CONSTRUCTOR): Likewise.
	(TARGET_ASM_DESTRUCTOR): Likewise.
	* toplev.cc (defined): Likewise.
	* varasm.cc: Likewise.
	* config/dbxcoff.h: Removed.
	* config/dbxelf.h: Removed.
	* dbxout.cc: Removed.
	* dbxout.h: Removed.
	* gstab.h: Removed.
	* stab.def: Removed.
	* xcoffout.cc: Removed.
	* xcoffout.h: Removed.

2022-09-02  Simon Rainer  <gcc.gnu@vvalter.com>

	PR ipa/106627
	* config/i386/i386-features.cc (ix86_get_function_versions_dispatcher):
	Set TREE_NOTHROW correctly for dispatcher declaration.
	* config/rs6000/rs6000.cc (rs6000_get_function_versions_dispatcher):
	Likewise.

2022-09-01  Tamar Christina  <tamar.christina@arm.com>

	PR other/106782
	* config/aarch64/aarch64.cc
	(aarch64_vector_costs::prefer_unrolled_loop): Replace %u with
	HOST_WIDE_INT_PRINT_UNSIGNED.

2022-09-01  Richard Sandiford  <richard.sandiford@arm.com>

	* tree-vect-slp.cc (vect_build_slp_tree_2): When building a
	VEC_PERM_EXPR of an existing vector, set the SLP_TREE_LANES
	to the number of vector elements, if that's a known constant.
	(vect_optimize_slp_pass::is_compatible_layout): Remove associated
	comment about zero SLP_TREE_LANES.
	(vect_optimize_slp_pass::start_choosing_layouts): Iterate over
	all partition members when looking for potential layouts.
	Handle existing permutes of fixed-length vectors.

2022-09-01  Uroš Bizjak  <ubizjak@gmail.com>

	PR target/106707
	* config/i386/i386.md (moves to/from AX_REG into xchg peephole2):
	Do not convert a move pattern where both operands are AX_REG.

2022-09-01  Aldy Hernandez  <aldyh@redhat.com>

	* range-op-float.cc (build_le): Convert to dconst*inf.
	(build_ge): Same.
	* value-range.cc (frange::set_signbit): Same.
	(frange::normalize_kind): Same.
	(range_tests_floats): Same.
	* value-range.h (vrp_val_max): Same.
	(vrp_val_min): Same.
	(frange::set_varying): Same.

2022-09-01  Aldy Hernandez  <aldyh@redhat.com>

	* emit-rtl.cc (init_emit_once): Initialize dconstinf and
	dconstninf.
	* real.h: Add dconstinf and dconstninf.

2022-09-01  Richard Biener  <rguenther@suse.de>

	* gimple-predicate-analysis.cc (compute_control_dep_chain):
	Remove cycle detection, instead avoid walking backedges.

2022-09-01  Richard Biener  <rguenther@suse.de>

	* gimple-predicate-analysis.cc (compute_control_dep_chain):
	New wrapping overload.
	(uninit_analysis::init_use_preds): Simplify.
	(uninit_analysis::init_from_phi_def): Likewise.

2022-09-01  Aldy Hernandez  <aldyh@redhat.com>

	* gimple-range-fold.cc
	(fold_using_range::range_of_builtin_int_call): Add case for
	CFN_BUILT_IN_SIGNBIT.

2022-09-01  Aldy Hernandez  <aldyh@redhat.com>

	* range-op-float.cc (foperator_equal::op1_range): Do not copy sign
	bit.
	(foperator_not_equal::op1_range): Same.
	* value-query.cc (range_query::get_tree_range): Set sign bit.
	* value-range-pretty-print.cc (vrange_printer::visit): Dump sign bit.
	* value-range.cc (frange::set_signbit): New.
	(frange::set): Adjust for sign bit.
	(frange::normalize_kind): Same.
	(frange::union_): Remove useless comment.
	(frange::intersect): Same.
	(frange::contains_p): Adjust for sign bit.
	(frange::singleton_p): Same.
	(frange::verify_range): Same.
	(range_tests_signbit): New tests.
	(range_tests_floats): Call range_tests_signbit.
	* value-range.h (class frange_props): Add signbit
	(class frange): Same.

2022-09-01  Jakub Jelinek  <jakub@redhat.com>

	PR other/106782
	* dumpfile.h (dump_printf_loc): Use ATTRIBUTE_GCC_DUMP_PRINTF (3, 4)
	instead of ATTRIBUTE_GCC_DUMP_PRINTF (3, 0).
	* tree-parloops.cc (parloops_is_slp_reduction): Cast pointers to
	derived types of gimple to gimple * to avoid -Wformat warnings.
	* tree-vect-loop-manip.cc (vect_set_loop_condition,
	vect_update_ivs_after_vectorizer): Likewise.
	* tree-vect-stmts.cc (vectorizable_load): Likewise.
	* tree-vect-patterns.cc (vect_split_statement,
	vect_recog_mulhs_pattern, vect_recog_average_pattern,
	vect_determine_precisions_from_range,
	vect_determine_precisions_from_users): Likewise.
	* gimple-loop-versioning.cc
	(loop_versioning::analyze_term_using_scevs): Likewise.
	* tree-vect-slp.cc (vect_build_slp_tree_1): Likewise.
	(vect_build_slp_tree): Cast slp_tree to void * to avoid
	-Wformat warnings.
	(optimize_load_redistribution_1, vect_match_slp_patterns,
	vect_build_slp_instance, vect_optimize_slp_pass::materialize,
	vect_optimize_slp_pass::dump, vect_slp_convert_to_external,
	vect_slp_analyze_node_operations, vect_bb_partition_graph): Likewise.
	(vect_print_slp_tree): Likewise.  Also use
	HOST_WIDE_INT_PRINT_UNSIGNED instead of %u.
	* tree-vect-loop.cc (vect_determine_vectorization_factor,
	vect_analyze_scalar_cycles_1, vect_analyze_loop_operations,
	vectorizable_induction, vect_transform_loop): Cast pointers to derived
	types of gimple to gimple * to avoid -Wformat warnings.
	(vect_analyze_loop_2): Cast slp_tree to void * to avoid
	-Wformat warnings.
	(vect_estimate_min_profitable_iters): Use HOST_WIDE_INT_PRINT_UNSIGNED
	instead of %d.
	* tree-vect-slp-patterns.cc (vect_pattern_validate_optab): Use %G
	instead of %T and STMT_VINFO_STMT (SLP_TREE_REPRESENTATIVE (node))
	instead of SLP_TREE_DEF_TYPE (node).

2022-09-01  Jakub Jelinek  <jakub@redhat.com>

	PR c++/106655
	* doc/invoke.texi (-Winvalid-utf8): Document it.

2022-09-01  Aldy Hernandez  <aldyh@redhat.com>

	PR tree-optimization/106785
	* value-range.cc (range_tests_nan): Adjust tests for !HONOR_NANS.
	(range_tests_floats): Same.

2022-09-01  konglin1  <lingling.kong@intel.com>

	* tree-if-conv.cc (is_cond_scalar_reduction): Add MULT_EXPR
	recognition.

2022-09-01  Peter Bergner  <bergner@linux.ibm.com>

	PR target/101322
	* config/rs6000/rs6000-builtin.cc (rs6000_gimple_fold_mma_builtin):
	Enforce the use of a valid MMA pointer type.

2022-09-01  zhongjuzhe  <juzhe.zhong@rivai.ai>

	* config/riscv/riscv.cc (riscv_conditional_register_usage): Add vector
	registers.

2022-09-01  zhongjuzhe  <juzhe.zhong@rivai.ai>

	* config/riscv/riscv.cc (riscv_const_insns): Add cost of poly_int.
	(riscv_output_move): Add csrr vlenb assembly.
	* config/riscv/riscv.md (move_type): Add csrr vlenb type.
	(ext): New attribute.
	(ext_enabled): Ditto.
	(enabled): Ditto.

2022-09-01  zhongjuzhe  <juzhe.zhong@rivai.ai>

	* config/riscv/constraints.md (TARGET_VECTOR ? V_REGS : NO_REGS): Add
	"vr" constraint.
	(TARGET_VECTOR ? VD_REGS : NO_REGS): Add "vd" constraint.
	(TARGET_VECTOR ? VM_REGS : NO_REGS): Add "vm" constraint.
	(vp): Add poly constraint.

2022-09-01  zhongjuzhe  <juzhe.zhong@rivai.ai>

	* config/riscv/riscv.h (enum reg_class): Change vype to vtype.

2022-09-01  zhongjuzhe  <juzhe.zhong@rivai.ai>

	* config/riscv/riscv.cc (riscv_convert_vector_bits): Change
	configuration according to TARGET_MIN_VLEN.
	* config/riscv/riscv.h (UNITS_PER_FP_REG): Fix comment.

2022-08-31  Martin Liska  <mliska@suse.cz>

	* config.build: Remove deprecated ports.
	* config.gcc: Likewise.
	* config.host: Likewise.
	* configure.ac: Likewise.
	* configure: Regenerate.
	* config/pa/pa-hpux10.h: Removed.
	* config/pa/pa-hpux10.opt: Removed.
	* config/pa/t-dce-thr: Removed.

2022-08-31  Martin Liska  <mliska@suse.cz>

	* Makefile.in: Always install limits.h and syslimits.h to
	include folder.
	* configure.ac: Assign STMP_FIXINC blank if
	--disable-fixincludes is used.
	* configure: Regenerate.

2022-08-31  Richard Biener  <rguenther@suse.de>

	* gimple-predicate-analysis.cc (predicate::init_from_control_deps):
	Assert the guard_bb isn't empty and has more than one successor.
	Drop appropriate parts of the predicate when an edge fails to
	register a predicate.
	(predicate::dump): Dump empty predicate as TRUE.

2022-08-31  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/90994
	* gimple-predicate-analysis.cc (predicate::init_from_control_deps):
	Ignore exceptional control flow and skip the edge for the purpose of
	predicate generation also for non-calls.

2022-08-31  Aldy Hernandez  <aldyh@redhat.com>

	* value-range-storage.cc (frange_storage_slot::set_frange): Save
	endpoints.
	(frange_storage_slot::get_frange): Restore endpoints.
	* value-range-storage.h (class frange_storage_slot): Add endpoint
	fields.

2022-08-31  Martin Liska  <mliska@suse.cz>

	PR tree-optimization/106789
	* range-op-float.cc (default_frelop_fold_range): Remove the
	function.

2022-08-31  Martin Liska  <mliska@suse.cz>

	* value-range.h: Add more override keywords.

2022-08-31  Martin Liska  <mliska@suse.cz>

	* value-range.h: Add override.

2022-08-31  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/65244
	* gimple-predicate-analysis.h (predicate::init_from_control_deps):
	Add argument to specify whether the predicate is for the USE.
	* gimple-predicate-analysis.cc (predicate::init_from_control_deps):
	Also include predicates effective fallthru control edges when
	the predicate is for the USE.

2022-08-31  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/73550
	* gimple-predicate-analysis.cc (predicate::init_from_control_deps):
	Sanitize debug dumping.  Handle case labels with a CASE_HIGH.
	(predicate::dump): Adjust for better readability.

2022-08-31  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
	    Jakub Jelinek  <jakub@redhat.com>

	* omp-simd-clone.cc (simd_clone_adjust_return_type,
	simd_clone_adjust_argument_types): Use known_eq (veclen, 0U)
	instead of known_eq (veclen, 0) to avoid -Wsign-compare warnings.

2022-08-31  Richard Sandiford  <richard.sandiford@arm.com>

	* tree-vect-slp.cc (vect_optimize_slp_pass::dump): Remove bogus
	argument.

2022-08-31  zhongjuzhe  <juzhe.zhong@rivai.ai>

	* tree-vect-loop-manip.cc (vect_gen_vector_loop_niters): Simply
	initialize const_vf to 0.

2022-08-31  Martin Liska  <mliska@suse.cz>

	* config.gcc: Remove cr16.

2022-08-30  Martin Jambor  <mjambor@suse.cz>

	* vec.h (array_slice): Add constructors for non-const reference to
	heap vector and pointers to heap vectors.

2022-08-30  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.cc (early_nan_resolve): Change comment.
	(frange::union_): Handle union when one side is a NAN.
	(range_tests_nan): Add tests for NAN union.

2022-08-30  Andrew Stubbs  <ams@codesourcery.com>

	* config/gcn/gcn.cc (gcn_simd_clone_compute_vecsize_and_simdlen): New.
	(gcn_simd_clone_adjust): New.
	(gcn_simd_clone_usable): New.
	(TARGET_SIMD_CLONE_ADJUST): New.
	(TARGET_SIMD_CLONE_COMPUTE_VECSIZE_AND_SIMDLEN): New.
	(TARGET_SIMD_CLONE_USABLE): New.

2022-08-30  Andrew Stubbs  <ams@codesourcery.com>

	* doc/tm.texi: Regenerate.
	* omp-simd-clone.cc (simd_clone_adjust_return_type): Allow zero
	vecsize.
	(simd_clone_adjust_argument_types): Likewise.
	* target.def (compute_vecsize_and_simdlen): Document the new
	vecsize_int and vecsize_float semantics.

2022-08-30  Richard Sandiford  <richard.sandiford@arm.com>

	* expmed.cc (store_bit_field_1): Fix byte offset calculation
	for undefined structures.

2022-08-30  Richard Sandiford  <richard.sandiford@arm.com>

	* params.opt (-param=vect-max-layout-candidates=): New parameter.
	* doc/invoke.texi (vect-max-layout-candidates): Document it.
	* tree-vectorizer.h (auto_lane_permutation_t): New typedef.
	(auto_load_permutation_t): Likewise.
	* tree-vect-slp.cc (vect_slp_node_weight): New function.
	(slpg_layout_cost): New class.
	(slpg_vertex): Replace perm_in and perm_out with partition,
	out_degree, weight and out_weight.
	(slpg_partition_info, slpg_partition_layout_costs): New classes.
	(vect_optimize_slp_pass): Likewise, cannibalizing some part of
	the previous vect_optimize_slp.
	(vect_optimize_slp): Use it.

2022-08-30  Richard Sandiford  <richard.sandiford@arm.com>

	* hash-traits.h (vec_hash_base): New class.
	(vec_free_hash_base): Likewise.

2022-08-30  Richard Sandiford  <richard.sandiford@arm.com>

	* hash-traits.h (int_hash_base): New struct, split out from...
	(int_hash): ...this class, which now inherits from int_hash_base.
	* hash-map-traits.h (unbounded_hashmap_traits): Take a template
	parameter for the key that provides hash and equality functions.
	(unbounded_int_hashmap_traits): Turn into a type alias of
	unbounded_hashmap_traits.

2022-08-30  Richard Sandiford  <richard.sandiford@arm.com>

	* graphds.cc (graphds_scc): Add a pass-back parameter for the
	final node order.
	* graphds.h (graphds_scc): Update prototype accordingly.

2022-08-30  Richard Sandiford  <richard.sandiford@arm.com>

	* tree-vect-slp.cc (vect_transform_slp_perm_load_1): Split out from...
	(vect_transform_slp_perm_load): ...here.  Use SLP_TREE_VECTYPE instead
	of STMT_VINFO_VECTYPE.

2022-08-30  Richard Sandiford  <richard.sandiford@arm.com>

	* tree-vect-slp.cc (vectorizable_slp_permutation_1): Split out from...
	(vectorizable_slp_permutation): ...here.

2022-08-30  Richard Sandiford  <richard.sandiford@arm.com>

	* tree-vect-stmts.cc (get_related_vectype_for_scalar_type): Check
	that the requested number of units is interoperable with the requested
	prevailing mode.

2022-08-30  Martin Liska  <mliska@suse.cz>

	* config.gcc: Remove the port.
	* config/m32c/rtems.h: Removed.

2022-08-30  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/73550
	* gimple-predicate-analysis.cc (predicate::init_from_control_deps):
	Do not apply MAX_NUM_CHAINS again.

2022-08-30  Richard Biener  <rguenther@suse.de>

	* gimple-predicate-analysis.cc (format_edge_vec): Dump
	both source and destination.
	(dump_dep_chains): Remove.
	(uninit_analysis::init_use_preds): Remove redundant
	dumping of chains.

2022-08-30  Aldy Hernandez  <aldyh@redhat.com>

	* value-range-storage.cc (frange_storage_slot::get_frange): Use
	frange_nan.
	* value-range.cc (frange::set_nan): New.
	(frange_nan): Move to header file.
	(range_tests_nan): Adjust frange_nan callers to pass type.
	New test.
	* value-range.h (FRANGE_PROP_ACCESSOR): Remove.
	(frange_nan): New.

2022-08-30  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/67196
	* gimple-predicate-analysis.cc (uninit_analysis::is_use_guarded):
	Simplify and normalize use prediates before first use.

2022-08-30  Richard Biener  <rguenther@suse.de>

	* gimple-predicate-analysis.cc (dump_pred_chain): Fix
	parentizing and AND prepending.
	(predicate::dump): Do not dump the GENERIC expanded
	predicate, properly parentize and prepend ORs to the
	piecewise predicate dump.
	(build_pred_expr): Remove.

2022-08-30  Aldy Hernandez  <aldyh@redhat.com>

	* range-op-float.cc (finite_operand_p): New.
	(build_le): New.
	(build_lt): New.
	(build_ge): New.
	(build_gt): New.
	(foperator_equal::fold_range): New implementation with endpoints.
	(foperator_equal::op1_range): Same.
	(foperator_not_equal::fold_range): Same.
	(foperator_not_equal::op1_range): Same.
	(foperator_lt::fold_range): Same.
	(foperator_lt::op1_range): Same.
	(foperator_lt::op2_range): Same.
	(foperator_le::fold_range): Same.
	(foperator_le::op1_range): Same.
	(foperator_le::op2_range): Same.
	(foperator_gt::fold_range): Same.
	(foperator_gt::op1_range): Same.
	(foperator_gt::op2_range): Same.
	(foperator_ge::fold_range): Same.
	(foperator_ge::op1_range): Same.
	(foperator_ge::op2_range): Same.

2022-08-30  Aldy Hernandez  <aldyh@redhat.com>

	* range-op-float.cc (frange_set_nan): New.
	(frange_drop_inf): New.
	(frange_drop_ninf): New.
	(foperator_equal::op1_range): Adjust for endpoints.
	(foperator_lt::op1_range): Same.
	(foperator_lt::op2_range): Same.
	(foperator_gt::op1_range): Same.
	(foperator_gt::op2_range): Same.
	(foperator_unordered::op1_range): Same.
	* value-query.cc (range_query::get_tree_range): Same.
	* value-range-pretty-print.cc (vrange_printer::visit): Same.
	* value-range-storage.cc (frange_storage_slot::get_frange): Same.
	* value-range.cc (frange::set): Same.
	(frange::normalize_kind): Same.
	(frange::union_): Same.
	(frange::intersect): Same.
	(frange::operator=): Same.
	(early_nan_resolve): New.
	(frange::contains_p): New.
	(frange::singleton_p): New.
	(frange::set_nonzero): New.
	(frange::nonzero_p): New.
	(frange::set_zero): New.
	(frange::zero_p): New.
	(frange::set_nonnegative): New.
	(frange_float): New.
	(frange_nan): New.
	(range_tests_nan): New.
	(range_tests_signed_zeros): New.
	(range_tests_floats): New.
	(range_tests): New.
	* value-range.h (frange::lower_bound): New.
	(frange::upper_bound): New.
	(vrp_val_min): Use real_inf with a sign instead of negating inf.
	(frange::frange): New.
	(frange::set_varying): Adjust for endpoints.
	(real_max_representable): New.
	(real_min_representable): New.

2022-08-30  Aldy Hernandez  <aldyh@redhat.com>

	* match.pd ((cmp @0 zerop) real_zerop (negate@1 @0)): Add variant
	for real zero.

2022-08-30  Martin Liska  <mliska@suse.cz>

	* config/s390/s390.cc (s390_rtx_costs): Use proper type as
	argument.

2022-08-30  Richard Biener  <rguenther@suse.de>

	* tree-ssa-uninit.cc (warn_uninitialized_vars): Pre-compute
	the set of fallthru reachable blocks from function entry
	and use that to determine wlims.always_executed.

2022-08-30  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/56654
	* tree-ssa-uninit.cc (cand_cmp): New.
	(find_uninit_use): First process all PHIs and collect candidate
	stmts, then sort those after RPO.
	(warn_uninitialized_phi): Pass on bb_to_rpo.
	(execute_late_warn_uninitialized): Compute and pass on
	reverse lookup of RPO number from basic block index.

2022-08-30  Richard Biener  <rguenther@suse.de>

	* gimple-predicate-analysis.h (uninit_analysis::operator()):
	Remove.
	* gimple-predicate-analysis.cc
	(uninit_analysis::collect_phi_def_edges): Use phi_arg_set,
	simplify a bit.
	* tree-ssa-uninit.cc (defined_args): New global.
	(compute_uninit_opnds_pos): Mask with the recorded set
	of guarded maybe-uninitialized uses.
	(uninit_undef_val_t::operator()): Remove.
	(find_uninit_use): Process all PHI uses, recording the
	guarded ones and marking the PHI result as uninitialized
	consistently.
	(warn_uninitialized_phi): Adjust.
	(execute_late_warn_uninitialized): Get rid of the PHI worklist
	and instead walk the function in RPO order.
	* spellcheck.h (best_match::m_best_candidate_len): Initialize.

2022-08-30  Tamar Christina  <tamar.christina@arm.com>

	PR tree-optimization/106744
	* tree-ssa-phiopt.cc (minmax_replacement): Correct arguments.

2022-08-30  Tamar Christina  <tamar.christina@arm.com>

	* expmed.cc (store_bit_field_1): Initialize regnum to 0.

2022-08-29  David Faust  <david.faust@oracle.com>

	PR target/106745
	* config/bpf/coreout.cc (bpf_core_get_sou_member_index): Fix
	computation of index for anonymous members.

2022-08-29  Jose E. Marchesi  <jose.marchesi@oracle.com>

	* config/bpf/bpf.cc (bpf_target_macros): Define __bpf__ as a
	target macro.

2022-08-29  H.J. Lu  <hjl.tools@gmail.com>

	PR target/106748
	* config/i386/i386-expand.cc
	(ix86_avx256_split_vector_move_misalign): Handle E_V16BFmode.
	* config/i386/sse.md (V_256H): Add V16BF.

2022-08-29  Robin Dapp  <rdapp@linux.ibm.com>

	* config/s390/s390.cc (s390_address_cost): Declare.
	(s390_hard_regno_nregs): Declare.
	(s390_rtx_costs): Add handling for REG and MEM in SET.

2022-08-29  Robin Dapp  <rdapp@linux.ibm.com>

	* config/s390/s390.cc (expand_perm_with_vpdi): Recognize swap pattern.
	(is_reverse_perm_mask): New function.
	(expand_perm_with_rot): Recognize reverse pattern.
	(expand_perm_with_vstbrq): New function.
	(expand_perm_with_vster): Use vler/vster for element reversal on z15.
	(vectorize_vec_perm_const_1): Use.
	(s390_vectorize_vec_perm_const): Add expand functions.
	* config/s390/vx-builtins.md: Prefer vster over vler.

2022-08-29  Robin Dapp  <rdapp@linux.ibm.com>

	* config/s390/s390.md: Remove UNSPEC_VEC_EXTRACT.
	* config/s390/vector.md: Rewrite patterns to use vec_select.
	* config/s390/vx-builtins.md (vec_scatter_element<V_HW_2:mode>_SI):
	Likewise.

2022-08-29  Robin Dapp  <rdapp@linux.ibm.com>

	PR target/100869
	* config/s390/vector.md (@vpdi4_2<mode>): New pattern.
	(rotl<mode>3_di): New pattern.
	* config/s390/vx-builtins.md: Use vpdi and verll for reversing
	elements.

2022-08-29  Robin Dapp  <rdapp@linux.ibm.com>

	* config/s390/s390.cc (s390_issue_rate): Add z15.

2022-08-29  Robin Dapp  <rdapp@linux.ibm.com>

	* common/config/s390/s390-common.cc: Enable -funroll-loops and
	-munroll-only-small-loops for OPT_LEVELS_2_PLUS_SPEED_ONLY.
	* config/s390/s390.cc (s390_loop_unroll_adjust): Do not unroll
	loops larger than 12 instructions.
	(s390_override_options_after_change): Set unroll options.
	(s390_option_override_internal): Likewise.
	* config/s390/s390.opt: Document munroll-only-small-loops.

2022-08-29  Richard Biener  <rguenther@suse.de>

	* gimple-predicate-analysis.cc (is_loop_exit,
	find_control_equiv_block): Inline into single caller ...
	(uninit_analysis::init_use_preds): ... here and refactor.

2022-08-29  Richard Biener  <rguenther@suse.de>

	* gimple-predicate-analysis.cc (compute_control_dep_chain):
	Inline is_loop_exit and refactor, add comment about
	loop exits.

2022-08-29  Kito Cheng  <kito.cheng@sifive.com>

	* config/riscv/riscv.cc (riscv_frame_info): Introduce `reset(void)`;
	(riscv_frame_info::reset(void)): New.
	(riscv_compute_frame_info): Use riscv_frame_info::reset instead
	of memset when clean frame.

2022-08-29  zhongjuzhe  <juzhe.zhong@rivai.ai>

	* config/riscv/riscv.cc (riscv_v_ext_vector_mode_p): New function.
	(riscv_classify_address): Disallow PLUS/LO_SUM/CONST_INT address types for RVV.
	(riscv_address_insns): Add RVV modes condition.
	(riscv_binary_cost): Ditto.
	(riscv_rtx_costs): Adjust cost for RVV.
	(riscv_secondary_memory_needed): Add RVV modes condition.
	(riscv_hard_regno_nregs): Add RVV register allocation.
	(riscv_hard_regno_mode_ok): Add RVV register allocation.
	(riscv_class_max_nregs): Add RVV register allocation.
	* config/riscv/riscv.h (DWARF_FRAME_REGNUM): Add VL/VTYPE and vector registers in Dwarf.
	(UNITS_PER_V_REG): New macro.
	(FIRST_PSEUDO_REGISTER): Adjust first pseudo num for RVV.
	(V_REG_FIRST): New macro.
	(V_REG_LAST): Ditto.
	(V_REG_NUM): Ditto.
	(V_REG_P): Ditto.
	(VL_REG_P): Ditto.
	(VTYPE_REG_P): Ditto.
	(RISCV_DWARF_VL): Ditto.
	(RISCV_DWARF_VTYPE): Ditto.
	(enum reg_class): Add RVV register types.
	(REG_CLASS_CONTENTS): Add RVV register types.
	* config/riscv/riscv.md: Add VL/VTYPE register number constants.

2022-08-29  zhongjuzhe  <juzhe.zhong@rivai.ai>

	* config/riscv/riscv.md: Add new type for vector instructions.

2022-08-28  Peter Bergner  <bergner@linux.ibm.com>

	PR target/106017
	* config/rs6000/rs6000.cc (rs6000_invalid_conversion): Remove handling
	of MMA pointer conversions.

2022-08-27  Xi Ruoyao  <xry111@xry111.site>

	* config/i386/gcc-auto-profile: Regenerate.

2022-08-26  Aldy Hernandez  <aldyh@redhat.com>

	* real.cc (real_iszero): New.
	* real.h (real_iszero): New.

2022-08-26  Aldy Hernandez  <aldyh@redhat.com>

	* real.cc (real_isinf): New overload.
	(real_inf): Add sign argument.
	* real.h (real_isinf): New overload.
	(real_inf): Add sign argument.

2022-08-26  Marek Polacek  <polacek@redhat.com>

	PR c++/81159
	* doc/invoke.texi: Document -Wself-move.

2022-08-26  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.cc (vrange::set): Set varying.
	(vrange::set_nonzero): Same.
	(vrange::set_zero): Same.
	(vrange::set_nonnegative): Same.

2022-08-26  Aldy Hernandez  <aldyh@redhat.com>

	* range-op-float.cc (foperator_equal::op1_range): Do not blindly
	copy op2 range when honoring signed zeros.

2022-08-26  Aldy Hernandez  <aldyh@redhat.com>

	* tree-ssa-threadbackward.cc (possibly_profitable_path_p): Always
	add newline.
	(profitable_path_p): Same.

2022-08-26  Richard Biener  <rguenther@suse.de>

	* gimple-predicate-analysis.h
	(uninit_analysis::use_cannot_happen): Remove.
	* gimple-predicate-analysis.cc (can_be_invalidated_p): Remove.
	(uninit_analysis::use_cannot_happen): Likewise.
	(uninit_analysis::is_use_guarded): Do not call
	use_cannot_happen.
	(dump_predicates): Remove.
	(simple_control_dep_chain): Remove edge overload.

2022-08-26  Tobias Burnus  <tobias@codesourcery.com>

	* internal-fn.cc (expand_GOMP_TARGET_REV): New.
	* internal-fn.def (GOMP_TARGET_REV): New.
	* lto-cgraph.cc (lto_output_node, verify_node_partition): Mark
	'omp target device_ancestor_host' as in_other_partition and don't
	error if absent.
	* omp-low.cc (create_omp_child_function): Mark as 'noclone'.
	* omp-expand.cc (expand_omp_target): For reverse offload, remove
	sorry, use device = GOMP_DEVICE_HOST_FALLBACK and create
	empty-body nohost function.
	* omp-offload.cc (execute_omp_device_lower): Handle
	IFN_GOMP_TARGET_REV.
	(pass_omp_target_link::execute): For ACCEL_COMPILER, don't
	nullify fn argument for reverse offload

2022-08-26  Jakub Jelinek  <jakub@redhat.com>

	* builtins.def (BUILT_IN_ISSIGNALING): New built-in.
	* builtins.cc (expand_builtin_issignaling): New function.
	(expand_builtin_signbit): Don't overwrite target.
	(expand_builtin): Handle BUILT_IN_ISSIGNALING.
	(fold_builtin_classify): Likewise.
	(fold_builtin_1): Likewise.
	* optabs.def (issignaling_optab): New.
	* fold-const-call.cc (fold_const_call_ss): Handle
	BUILT_IN_ISSIGNALING.
	* config/i386/i386.md (issignalingxf2): New expander.
	* doc/extend.texi (__builtin_issignaling): Document.
	(__builtin_isinf, __builtin_isnan): Clarify behavior with
	-ffinite-math-only.
	* doc/md.texi (issignaling<mode>2): Likewise.

2022-08-26  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/106099
	* internal-fn.def (TRAP): Add ECF_LOOPING_CONST_OR_PURE flag.
	* tree-cfg.cc (execute_fixup_cfg): Add IFN_TRAP instead of
	__builtin_trap to avoid the need of vops.

2022-08-26  Richard Biener  <rguenther@suse.de>

	* gimple-predicate-analysis.cc (dfs_mark_dominating_region):
	New helper.
	(compute_control_dep_chain): Adjust to honor marked region
	if provided.
	(uninit_analysis::init_from_phi_def): Pre-mark the dominating
	region to improve compute_control_dep_chain walking.
	* vec.h (vec<T, va_heap, vl_ptr>::allocated): Add forwarder.

2022-08-26  Richard Biener  <rguenther@suse.de>

	* gimple-predicate-analysis.cc
	(uninit_analysis::collect_phi_def_edges): Only expand a
	PHI def edge when it is possibly undefined.

2022-08-26  Martin Liska  <mliska@suse.cz>

	* doc/extend.texi: Remove cr16 related stuff.
	* doc/install.texi: Likewise.
	* doc/invoke.texi: Likewise.
	* doc/md.texi: Likewise.
	* function-tests.cc (test_expansion_to_rtl): Likewise.
	* common/config/cr16/cr16-common.cc: Removed.
	* config/cr16/constraints.md: Removed.
	* config/cr16/cr16-protos.h: Removed.
	* config/cr16/cr16.cc: Removed.
	* config/cr16/cr16.h: Removed.
	* config/cr16/cr16.md: Removed.
	* config/cr16/cr16.opt: Removed.
	* config/cr16/predicates.md: Removed.
	* config/cr16/t-cr16: Removed.

2022-08-26  liuhongt  <hongtao.liu@intel.com>

	PR target/106704
	* config/i386/i386-builtin.def (BDESC): Add
	CODE_FOR_avx_blendvpd256/CODE_FOR_avx_blendvps256 to
	corresponding builtins.
	* config/i386/i386.cc (ix86_gimple_fold_builtin):
	Don't fold IX86_BUILTIN_PBLENDVB256, IX86_BUILTIN_BLENDVPS256,
	IX86_BUILTIN_BLENDVPD256 w/o TARGET_AVX2.

2022-08-25  Marek Polacek  <polacek@redhat.com>

	* ginclude/stddef.h: Define nullptr_t.

2022-08-25  Joseph Myers  <joseph@codesourcery.com>

	* gimplify.cc (gimplify_modify_expr): Convert initialization from
	a variable-size CONSTRUCTOR to memset before call to
	gimplify_modify_expr_rhs.

2022-08-25  Jason Merrill  <jason@redhat.com>

	* dwarf2out.cc (base_type_die): Also use DW_ATE_UTF for char8_t.

2022-08-25  Andreas Krebbel  <krebbel@linux.ibm.com>

	PR target/106101
	* config/s390/predicates.md (subreg_register_operand): New
	predicate.
	* config/s390/s390-protos.h (s390_gen_lowpart_subreg): New
	function prototype.
	* config/s390/s390.cc (s390_gen_lowpart_subreg): New function.
	(s390_expand_insv): Use s390_gen_lowpart_subreg instead of
	gen_lowpart.
	* config/s390/s390.md ("*get_tp_64", "*zero_extendhisi2_31")
	("*zero_extendqisi2_31", "*zero_extendqihi2_31"): Likewise.
	("movstrictqi", "movstricthi", "movstrictsi"): Use the
	subreg_register_operand predicate instead of register_operand.

2022-08-25  Xi Ruoyao  <xry111@xry111.site>

	* config/loongarch/loongarch-protos.h (loongarch_symbol_type):
	Add SYMBOL_PCREL64 and change the description for SYMBOL_PCREL.
	* config/loongarch/loongarch.cc (loongarch_attribute_table):
	New attribute table.
	(TARGET_ATTRIBUTE_TABLE): Define the target hook.
	(loongarch_handle_model_attribute): New static function.
	(loongarch_classify_symbol): Take TARGET_CMODEL_EXTREME and the
	model attribute of SYMBOL_REF_DECL into account returning
	SYMBOL_PCREL or SYMBOL_PCREL64.
	(loongarch_use_anchors_for_symbol_p): New static function.
	(TARGET_USE_ANCHORS_FOR_SYMBOL_P): Define the target hook.
	(loongarch_symbol_extreme_p): New static function.
	(loongarch_symbolic_constant_p): Handle SYMBOL_PCREL64.
	(loongarch_symbol_insns): Likewise.
	(loongarch_split_symbol_type): Likewise.
	(loongarch_split_symbol): Check SYMBOL_PCREL64 instead of
	TARGET_CMODEL_EXTREME for PC-relative addressing.
	(loongarch_print_operand_reloc): Likewise.
	* doc/extend.texi (Variable Attributes): Document new
	LoongArch specific attribute.

2022-08-25  Xi Ruoyao  <xry111@xry111.site>

	* config/loongarch/loongarch.cc (loongarch_classify_symbol):
	Return early if the rtx is not SYMBOL_REF.

2022-08-25  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106737
	* tree-parloops.cc (transform_to_exit_first_loop_alt): Do not
	verify SSA form.

2022-08-25  Chenghua Xu  <xuchenghua@loongson.cn>

	PR target/106459
	* config/loongarch/loongarch.cc (loongarch_build_integer):
	Use HOST_WIDE_INT.
	* config/loongarch/loongarch.h (IMM_REACH): Likewise.
	(HWIT_1U): New Defined.
	(LU12I_OPERAND): Use HOST_WIDE_INT.
	(LU32I_OPERAND): Likewise.
	(LU52I_OPERAND): Likewise.
	(HWIT_UC_0xFFF): Likwise.

2022-08-24  Andrew Pinski  <apinski@marvell.com>

	PR target/106632
	PR target/106588
	* config/riscv/bitmanip.md (*shNadduw): Use n constraint
	instead of i.
	(*slliuw): Likewise.
	(*bexti): Likewise. Also add a check for operands[2] to be less
	than the mode bitsize.

2022-08-24  Andrew Pinski  <apinski@marvell.com>

	* config/riscv/constraints.md (DbS): New constraint.
	(DnS): New constraint.
	* config/riscv/bitmanip.md (*bset<mode>_1_mask): Use new constraint.
	(*bclr<mode>): Likewise.
	(*binvi<mode>): Likewise.

2022-08-24  Andrew Pinski  <apinski@marvell.com>

	PR target/106586
	* config/riscv/predicates.md (single_bit_mask_operand):
	Use SINGLE_BIT_MASK_OPERAND instead of directly calling pow2p_hwi.
	(not_single_bit_mask_operand): Likewise.
	* config/riscv/riscv.cc (riscv_build_integer_1): Don't special case
	1<<31 for 32bits as it is already handled.
	Call trunc_int_for_mode on the upper part after the subtraction.
	(riscv_move_integer): Call trunc_int_for_mode before generating
	the integer just make sure the constant has been sign extended
	corectly.
	(riscv_emit_int_compare): Call trunc_int_for_mode after doing the
	addition for the new rhs.
	* config/riscv/riscv.h (SINGLE_BIT_MASK_OPERAND): If !TARGET64BIT,
	then mask off the upper 32bits of the HWI as it will be sign extended.

2022-08-24  Andrew Pinski  <apinski@marvell.com>

	* config/riscv/constraints.md (DsS): New constraint.
	(DsD): New constraint.
	* config/riscv/iterators.md (shiftm1c): New iterator.
	* config/riscv/bitmanip.md (*bset<mode>_mask):
	Use shiftm1c.
	(*bset<mode>_1_mask): Likewise.

2022-08-24  Andrew Pinski  <apinski@marvell.com>

	* config/riscv/constraints.md (Ds3): New constraint.
	* config/riscv/predicates.md (imm123_operand): New predicate.
	* config/riscv/bitmanip.md (*shNadd): Use Ds3 and imm123_operand.
	(*shNadduw): Likewise.

2022-08-24  Andrew Pinski  <apinski@marvell.com>

	* config/riscv/riscv.cc (riscv_print_operand):
	Handle '~'.
	(riscv_print_operand_punct_valid_p): New function
	(TARGET_PRINT_OPERAND_PUNCT_VALID_P): Define.
	* config/riscv/bitmanip.md (<bitmanip_optab>si2/clz_ctz_pcnt):
	Use %~ instead of conditional the pattern on TARGET_64BIT.
	(rotrsi3): Likewise.
	(rotlsi3): Likewise.
	* config/riscv/riscv.md: Add ~ to the list of modifiers.
	(addsi3): Use %~ instead of conditional the pattern on TARGET_64BIT.
	(subsi3): Likewise.
	(negsi2): Likewise.
	(mulsi3): Likewise.
	(optab>si3/any_div): Likewise.
	(*add<mode>hi3): Likewise.
	(<optab>si3/any_shift): Likewise.

2022-08-24  Andrew Pinski  <apinski@marvell.com>

	* config/riscv/riscv.cc (riscv_print_operand): Make a mention to
	keep the list in riscv.md in sync with this list.
	* config/riscv/riscv.md: Add list of modifiers as comments.

2022-08-24  Andrew Pinski  <apinski@marvell.com>

	* config/riscv/sync.md (any_atomic, atomic_optab): Move to ...
	* config/riscv/iterators.md: Here.

2022-08-24  Andrew Pinski  <apinski@marvell.com>

	* config/riscv/bitmanip.md
	(bitmanip_bitwise, bitmanip_minmax, clz_ctz_pcna,
	tbitmanip_optab, bitmanip_insn, shiftm1): Move to ...
	* config/riscv/iterators.md: Here.

2022-08-24  Andrew Pinski  <apinski@marvell.com>

	* config/riscv/riscv.md (GPR): Move to new file.
	(P, X, BR): Likewise.
	(MOVE32, MOVE64, SHORT): Likewise.
	(HISI, SUPERQI, SUBX): Likewise.
	(ANYI, ANYF, SOFTF): Likewise.
	(size, load, default_load): Likewise.
	(softload, store, softstore): Likewise.
	(reg, fmt, ifmt, amo): Likewise.
	(UNITMODE, HALFMODE): Likewise.
	(RINT, rint_pattern, rint_rm): Likewise.
	(QUIET_COMPARISON, quiet_pattern, QUIET_PATTERN): Likewise.
	(any_extend, any_shiftrt, any_shift): Likewise.
	(any_bitwise): Likewise.
	(any_div, any_mod): Likewise.
	(any_gt, any_ge, any_lt, any_le): Likewise.
	(u, su): Likewise.
	(optab, insn): Likewise.
	* config/riscv/iterators.md: New file.

2022-08-24  Andrew Pinski  <apinski@marvell.com>

	PR target/106601
	* config/riscv/bitmanip.md (bswaphi2): New pattern.

2022-08-24  Andrew Pinski  <apinski@marvell.com>

	PR target/106600
	* config/riscv/bitmanip.md (bswap<mode>2): Remove
	condition on TARGET_64BIT as X is already conditional there.

2022-08-24  Joseph Myers  <joseph@codesourcery.com>

	* tree.cc (build_real): Give DFP dconst0 the minimum quantum
	exponent for the type.

2022-08-24  Jose E. Marchesi  <jose.marchesi@oracle.com>

	PR target/106733
	* config/bpf/bpf.cc (bpf_legitimate_address_p): Recognize integer
	constants as legitimate addresses for functions.
	(bpf_small_register_classes_for_mode_p): Define target hook.

2022-08-24  Richard Biener  <rguenther@suse.de>

	* gimple-predicate-analysis.cc: Move predicate normalization
	after the comment documenting it.

2022-08-24  Richard Biener  <rguenther@suse.de>

	* gimple-predicate-analysis.h (predicate): Split out
	non-predicate related functionality into ..
	(uninit_analysis): .. this new class.
	* gimple-predicate-analysis.cc: Refactor into two classes.
	* tree-ssa-uninit.cc (find_uninit_use): Use uninit_analysis.

2022-08-24  Richard Biener  <rguenther@suse.de>

	* gimple-predicate-analysis.cc (predicate::use_cannot_happen):
	Do simple_control_dep_chain only up to cd_root, add the PHI
	operand edge to the chains like init_from_phi_def does.
	(predicate::is_use_guarded): Speedup early out, avoid half-way
	initializing the PHI def predicate.

2022-08-24  Jakub Jelinek  <jakub@redhat.com>

	PR target/106721
	* config/i386/sse.md (shuffletype): Add V32BF, V16BF and V8BF entries.
	Change V32HF, V16HF and V8HF entries from "f" to "i".
	(iptr): Add V32BF, V16BF, V8BF and BF entries.
	(i128vldq): Add V16HF and V16BF entries.
	(avx512er_vmrcp28<mode><mask_name><round_saeonly_name>): Fix typo,
	mask_opernad3 -> mask_operand3.

2022-08-24  Martin Liska  <mliska@suse.cz>
	    Jørgen Kvalsvik  <j@lambda.is>

	* gcov.cc (add_line_counts): Add group functions to coverage
	summary.
	(accumulate_line_counts): Similarly for files.

2022-08-24  Lulu Cheng  <chenglulu@loongson.cn>

	* config/loongarch/genopts/loongarch-strings: Support code model medium.
	* config/loongarch/genopts/loongarch.opt.in: Likewise.
	* config/loongarch/loongarch-def.c: Likewise.
	* config/loongarch/loongarch-def.h (CMODEL_LARGE): Likewise.
	(CMODEL_EXTREME): Likewise.
	(N_CMODEL_TYPES): Likewise.
	(CMODEL_MEDIUM): Likewise.
	* config/loongarch/loongarch-opts.cc: Likewise.
	* config/loongarch/loongarch-opts.h (TARGET_CMODEL_MEDIUM): Likewise.
	* config/loongarch/loongarch-str.h (STR_CMODEL_MEDIUM): Likewise.
	* config/loongarch/loongarch.cc (loongarch_call_tls_get_addr):
	Tls symbol Loading support medium mode.
	(loongarch_legitimize_call_address): When medium mode, make a symbolic
	jump with two instructions.
	(loongarch_option_override_internal): Support medium.
	* config/loongarch/loongarch.md (@pcalau12i<mode>): New template.
	(@sibcall_internal_1<mode>): New function call templates added to support
	medium mode.
	(@sibcall_value_internal_1<mode>): Likewise.
	(@sibcall_value_multiple_internal_1<mode>): Likewise.
	(@call_internal_1<mode>): Likewise.
	(@call_value_internal_1<mode>): Likewise.
	(@call_value_multiple_internal_1<mode>): Likewise.
	* config/loongarch/loongarch.opt: Support medium.
	* config/loongarch/predicates.md: Add processing about medium mode.
	* doc/invoke.texi: Document for '-mcmodel=medium'.

2022-08-24  Richard Biener  <rguenther@suse.de>

	* gimple-predicate-analysis.cc (predicate::use_cannot_happen):
	Start the compute_control_dep_chain walk from the immediate
	dominator of the PHI.

2022-08-23  H.J. Lu  <hjl.tools@gmail.com>

	PR target/106714
	* config/i386/amxtileintrin.h (_tile_loadd_internal): Cast to
	__PTRDIFF_TYPE__.
	(_tile_stream_loadd_internal): Likewise.
	(_tile_stored_internal): Likewise.

2022-08-23  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106722
	* gimple-predicate-analysis.h (MAX_NUM_CHAINS, MAX_CHAIN_LEN,
	MAX_POSTDOM_CHECK, MAX_SWITCH_CASES): Move ...
	* gimple-predicate-analysis.cc: ... here and document.
	(simple_control_dep_chain): New function, factored from
	predicate::use_cannot_happen.
	(predicate::use_cannot_happen): Adjust.
	(predicate::predicate): Use simple_control_dep_chain as fallback.

2022-08-23  Aldy Hernandez  <aldyh@redhat.com>

	* range-op-float.cc (foperator_equal::op1_range): Set range to
	range of op2.

2022-08-23  Richard Biener  <rguenther@suse.de>

	* gimple-predicate-analysis.cc (is_loop_exit): Split out
	from ...
	(is_non_loop_exit_postdominating): ... here.  Remove after
	inlining ...
	(find_control_equiv_block): ... here.
	(compute_control_dep_chain): ... and here.
	(predicate::is_use_guarded): Do not excempt loop exits
	from short-cutting the case of the use post-dominating the
	PHI definition.

2022-08-23  Andrew MacLeod  <amacleod@redhat.com>

	PR tree-optimization/106687
	* range-op.cc (operator_minus::lhs_op1_relation): Return VREL_LE
	for the VREL_GT case as well.

2022-08-22  Dimitar Dimitrov  <dimitar@dinux.eu>

	* config/pru/pru.md (pru_<code>di3): New alternative for
	two operands but without earlyclobber.

2022-08-22  Dimitar Dimitrov  <dimitar@dinux.eu>

	* config/pru/pru.md (prumov<mode>, mov<mode>): Add
	variants for loading -1 consts.

2022-08-22  Dimitar Dimitrov  <dimitar@dinux.eu>

	PR target/106564
	* config/pru/constraints.md (Um): New constraint for -1.
	(Uf): New constraint for IOR fill-bytes constants.
	(Uz): New constraint for AND zero-bytes constants.
	* config/pru/predicates.md (const_fillbytes_operand): New
	predicate for IOR fill-bytes constants.
	(const_zerobytes_operand): New predicate for AND zero-bytes
	constants.
	* config/pru/pru-protos.h (pru_output_sign_extend): Remove.
	(struct pru_byterange): New struct to describe a byte range.
	(pru_calc_byterange): New declaration.
	* config/pru/pru.cc (pru_rtx_costs): Add penalty for
	64-bit zero-extend.
	(pru_output_sign_extend): Remove.
	(pru_calc_byterange): New helper function to extract byte
	range info from a constant.
	(pru_print_operand): Remove 'y' and 'z' print modifiers.
	* config/pru/pru.md (zero_extendqidi2): New pattern.
	(zero_extendhidi2): New pattern.
	(zero_extendsidi2): New pattern.
	(extend<EQS0:mode><EQD:mode>2): Rewrite as an expand.
	(@pru_ior_fillbytes<mode>): New pattern.
	(@pru_and_zerobytes<mode>): New pattern.
	(<code>di3): Rewrite as an expand and handle ZERO and FILL
	special cases.
	(pru_<code>di3): New name for <code>di3.
	(@cbranch_qbbx_const_<BIT_TEST:code><HIDI:mode>): New pattern to
	handle bit-test for 64-bit registers.

2022-08-22  Richard Biener  <rguenther@suse.de>

	* gimple-predicate-analysis.h (predicate::m_use_expr): Remove.
	(predicate::def_expr): Likewise.
	(predicate::use_expr): Likewise.
	(predicate::expr): Likewise.
	* gimple-predicate-analysis.cc (predicate::def_expr): Remove.
	(predicate::use_expr): Likewise.
	(predicate::expr): Likewise.
	(predicate::is_use_guarded): Do not build m_use_expr.

2022-08-22  Martin Liska  <mliska@suse.cz>

	PR lto/106700
	* configure.ac: Detect O_NONBLOCK flag for open.
	* config.in: Regenerate.
	* configure: Regenerate.
	* opts-common.cc (jobserver_info::connect): Set is_connected
	properly based on O_NONBLOCK.
	* opts-jobserver.h (struct jobserver_info): Add is_connected
	member variable.

2022-08-22  zhongjuzhe  <juzhe.zhong@rivai.ai>

	* simplify-rtx.cc (test_vector_subregs_fore_back): Make first value
	and repeat value different.

2022-08-22  Tobias Burnus  <tobias@codesourcery.com>

	PR lto/106686
	* lto-wrapper.cc (free_array_of_ptrs): Move before tool_cleanup.
	(tool_cleanup): Unlink offload_names.
	(compile_offload_image): Take filename argument to set it early.
	(compile_images_for_offload_targets): Update call; set
	offload_names to NULL after freeing the array.

2022-08-22  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/105937
	* tree-ssa-uninit.cc (find_uninit_use): Do not queue PHIs
	on backedges.
	(execute_late_warn_uninitialized): Mark backedges.

2022-08-22  Richard Biener  <rguenther@suse.de>

	* gimple-predicate-analysis.cc (predicate::use_cannot_happen):
	If the use is guarded with multiple predicate paths compute
	the predicates intersection before going forward.  When
	compute_control_dep_chain wasn't able to come up with at
	least one path from function entry to the PHI edge compute
	a conservative sparse path instead.

2022-08-20  Lulu Cheng  <chenglulu@loongson.cn>

	* config/loongarch/loongarch-opts.cc: Allow cmodel to be extreme.
	* config/loongarch/loongarch.cc (loongarch_call_tls_get_addr):
	Add extreme support for TLS GD and LD types.
	(loongarch_legitimize_tls_address): Add extreme support for TLS LE
	and IE.
	(loongarch_split_symbol): When compiling with -mcmodel=extreme,
	the symbol address will be obtained through five instructions.
	(loongarch_print_operand_reloc): Add support.
	(loongarch_print_operand): Add support.
	(loongarch_print_operand_address): Add support.
	(loongarch_option_override_internal): Set '-mcmodel=extreme' option
	incompatible with '-mno-explicit-relocs'.
	* config/loongarch/loongarch.md (@lui_l_hi20<mode>):
	Loads bits 12-31 of data into registers.
	(lui_h_lo20): Load bits 32-51 of the data and spell bits 0-31 of
	the source register.
	(lui_h_hi12): Load bits 52-63 of the data and spell bits 0-51 of
	the source register.
	* config/loongarch/predicates.md: Symbols need to be decomposed
	when defining the macro TARGET_CMODEL_EXTREME
	* doc/invoke.texi: Modify the description information of cmodel in the document.
	Document -W[no-]extreme-plt.

2022-08-19  Tobias Burnus  <tobias@codesourcery.com>

	* config/gcn/mkoffload.cc (main): Add omp_requires_file and dbgobj to
	files_to_cleanup.
	* config/i386/intelmic-mkoffload.cc (prepare_target_image): Add
	omp_requires_file to temp_files.
	* config/nvptx/mkoffload.cc (omp_requires_file): New global static var.
	(main): Remove local omp_requires_file var.
	(tool_cleanup): Handle omp_requires_file.

2022-08-19  Aldy Hernandez  <aldyh@redhat.com>

	* gimple-range-path.cc (path_range_query::path_range_query):
	Remove constructor that takes edge.
	* gimple-range-path.h (class path_range_query): Same.
	* tree-ssa-loop-ch.cc (edge_range_query): New.
	(entry_loop_condition_is_static): Call edge_range_query.

2022-08-18  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/xtensa.h
	(enum reg_class, REG_CLASS_NAMES, REG_CLASS_CONTENTS):
	Add new register class "ISC_REGS".
	* config/xtensa/constraints.md (c): Add new register constraint.
	* config/xtensa/xtensa.md (define_constants): Remove "A11_REG".
	(sibcall_internal, sibcall_value_internal):
	Change to use the new register constraint, and remove two split
	patterns for fixups that are no longer needed.

2022-08-18  Maciej W. Rozycki  <macro@embecosm.com>

	* config/riscv/riscv.md (*mov<GPR:mode><X:mode>cc): Fix output
	pattern formatting.

2022-08-18  Tim Lange  <mail@tim-lange.me>

	PR analyzer/106181
	* doc/invoke.texi: Add Wanalyzer-imprecise-fp-arithmetic.

2022-08-18  Aldy Hernandez  <aldyh@redhat.com>

	* gimple-range-path.cc (path_range_query::path_range_query): Add
	various constructors to take a path.
	(path_range_query::~path_range_query): Remove m_alloced_ranger.
	(path_range_query::range_on_path_entry): Adjust for m_ranger being
	a reference.
	(path_range_query::set_path): Rename to...
	(path_range_query::reset_path): ...this and call compute_ranges.
	(path_range_query::ssa_range_in_phi): Adjust for m_ranger
	reference.
	(path_range_query::range_defined_in_block): Same.
	(path_range_query::compute_ranges_in_block): Same.
	(path_range_query::adjust_for_non_null_uses): Same.
	(path_range_query::compute_exit_dependencies): Use m_path instead
	of argument.
	(path_range_query::compute_ranges): Remove path argument.
	(path_range_query::range_of_stmt): Adjust for m_ranger reference.
	(path_range_query::compute_outgoing_relations): Same.
	* gimple-range-path.h (class path_range_query): Add various
	constructors.
	Make compute_ranges and compute_exit_dependencies private.
	Rename set_path to reset_path.
	Make m_ranger a reference.
	Remove m_alloced_ranger.
	* tree-ssa-dom.cc (pass_dominator::execute): Adjust constructor to
	path_range_query.
	* tree-ssa-loop-ch.cc (entry_loop_condition_is_static): Take a
	ranger and instantiate a new path_range_query every time.
	(ch_base::copy_headers): Pass ranger instead of path_range_query.
	* tree-ssa-threadbackward.cc (class back_threader): Remove m_solver.
	(back_threader::~back_threader): Remove m_solver.
	(back_threader::find_taken_edge_switch): Adjust for m_ranger
	reference.
	(back_threader::find_taken_edge_cond): Same.
	(back_threader::dump): Remove m_solver.
	(back_threader::back_threader): Move verify_marked_backedges
	here from the path_range_query constructor.
	* tree-ssa-threadedge.cc (hybrid_jt_simplifier::simplify): Move
	some code from compute_ranges_from_state here.
	(hybrid_jt_simplifier::compute_ranges_from_state): Rename...
	(hybrid_jt_simplifier::compute_exit_dependencies): ...to this.
	* tree-ssa-threadedge.h (class hybrid_jt_simplifier): Rename
	compute_ranges_from_state to compute_exit_dependencies.
	Remove m_path.

2022-08-18  Richard Biener  <rguenther@suse.de>

	PR middle-end/106617
	* match.pd ((a ? b : c) > d -> a ? (b > d) : (c > d)): Fix
	guard, disable on GENERIC to not cause quadratic behavior
	with the fold-const.cc implementation and the use of !

2022-08-18  Andrew Pinski  <apinski@marvell.com>

	PR gcov-profile/106659
	* gcov-dump.cc (INCLUDE_VECTOR): Include vector.h with
	INCLUDE_VECTOR.

2022-08-18  konglin1  <lingling.kong@intel.com>

	* config/i386/i386-expand.cc (ix86_expand_sse_movcc): Handle vector
	BFmode.
	(ix86_expand_vector_init_duplicate): Support vector BFmode.
	(ix86_expand_vector_init_one_nonzero): Ditto.
	(ix86_expand_vector_init_one_var): Ditto.
	(ix86_expand_vector_init_concat): Ditto.
	(ix86_expand_vector_init_interleave): Ditto.
	(ix86_expand_vector_init_general): Ditto.
	(ix86_expand_vector_init): Ditto.
	(ix86_expand_vector_set_var): Ditto.
	(ix86_expand_vector_set): Ditto.
	(ix86_expand_vector_extract): Ditto.
	* config/i386/i386.cc (classify_argument): Add BF vector modes.
	(function_arg_64): Ditto.
	(ix86_gimplify_va_arg): Ditto.
	(ix86_get_ssemov): Ditto.
	* config/i386/i386.h (VALID_AVX256_REG_MODE): Add BF vector modes.
	(VALID_AVX512F_REG_MODE): Ditto.
	(host_detect_local_cpu): Ditto.
	(VALID_SSE2_REG_MODE): Ditto.
	* config/i386/i386.md: Add BF vector modes.
	(MODE_SIZE): Ditto.
	(ssemodesuffix): Add bf suffix for BF vector modes.
	(ssevecmode): Ditto.
	* config/i386/sse.md (VMOVE): Adjust for BF vector modes.
	(VI12HFBF_AVX512VL): Ditto.
	(V_256_512): Ditto.
	(VF_AVX512HFBF16): Ditto.
	(VF_AVX512BWHFBF16): Ditto.
	(VIHFBF): Ditto.
	(avx512): Ditto.
	(VIHFBF_256): Ditto.
	(VIHFBF_AVX512BW): Ditto.
	(VI2F_256_512):Ditto.
	(V8_128):Ditto.
	(V16_256): Ditto.
	(V32_512): Ditto.
	(sseinsnmode): Ditto.
	(sseconstm1): Ditto.
	(sseintmodesuffix): New mode_attr.
	(avx512fmaskmode): Ditto.
	(avx512fmaskmodelower): Ditto.
	(ssedoublevecmode): Ditto.
	(ssehalfvecmode): Ditto.
	(ssehalfvecmodelower): Ditto.
	(ssescalarmode): Add vector BFmode mapping.
	(ssescalarmodelower): Ditto.
	(ssexmmmode): Ditto.
	(ternlogsuffix): Ditto.
	(ssescalarsize): Ditto.
	(sseintprefix): Ditto.
	(i128): Ditto.
	(xtg_mode): Ditto.
	(bcstscalarsuff): Ditto.
	(<avx512>_blendm<mode>): New define_insn for BFmode.
	(<avx512>_store<mode>_mask): Ditto.
	(vcond_mask_<mode><avx512fmaskmodelower>): Ditto.
	(vec_set<mode>_0): New define_insn for BF vector set.
	(V8BFH_128): New mode_iterator for BFmode.
	(avx512fp16_mov<mode>): Ditto.
	(vec_set<mode>): New define_insn for BF vector set.
	(@vec_extract_hi_<mode>): Ditto.
	(@vec_extract_lo_<mode>): Ditto.
	(vec_set_hi_<mode>): Ditto.
	(vec_set_lo_<mode>): Ditto.
	(*vec_extract<mode>_0): New define_insn_and_split for BF
	vector extract.
	(*vec_extract<mode>): New define_insn.
	(VEC_EXTRACT_MODE): Add BF vector modes.
	(PINSR_MODE): Add V8BF.
	(sse2p4_1): Ditto.
	(pinsr_evex_isa): Ditto.
	(<sse2p4_1>_pinsr<ssemodesuffix>): Adjust to support
	insert for V8BFmode.
	(pbroadcast_evex_isa): Add BF vector modes.
	(AVX2_VEC_DUP_MODE): Ditto.
	(VEC_INIT_MODE): Ditto.
	(VEC_INIT_HALF_MODE): Ditto.
	(avx2_pbroadcast<mode>): Adjust to support BF vector mode
	broadcast.
	(avx2_pbroadcast<mode>_1): Ditto.
	(<avx512>_vec_dup<mode>_1): Ditto.
	(<mask_codefor><avx512>_vec_dup_gpr<mode><mask_name>):
	Ditto.

2022-08-18  Martin Liska  <mliska@suse.cz>

	* configure: Regenerate.

2022-08-18  Haochen Gui  <guihaoc@gcc.gnu.org>

	PR target/103109
	* config/rs6000/rs6000.md (<u>maddditi4): New pattern for multiply-add.
	(<u>madddi4_highpart): New.
	(<u>madddi4_highpart_le): New.

2022-08-18  Aldy Hernandez  <aldyh@redhat.com>

	* gimple-range-path.cc
	(path_range_query::compute_exit_dependencies): Use
	gimple_range_ssa_names.

2022-08-18  zhongjuzhe  <juzhe.zhong@rivai.ai>

	* config/riscv/predicates.md: Adjust runtime invariant.
	* config/riscv/riscv-modes.def (MAX_BITSIZE_MODE_ANY_MODE): New.
	(NUM_POLY_INT_COEFFS): New.
	* config/riscv/riscv-protos.h (riscv_initial_elimination_offset):Adjust
	runtime invariant.
	* config/riscv/riscv-sr.cc (riscv_remove_unneeded_save_restore_calls):
	Adjust runtime invariant.
	* config/riscv/riscv.cc (struct riscv_frame_info): Adjust runtime
	invariant.
	(enum riscv_microarchitecture_type): Ditto.
	(riscv_valid_offset_p): Ditto.
	(riscv_valid_lo_sum_p): Ditto.
	(riscv_address_insns): Ditto.
	(riscv_load_store_insns): Ditto.
	(riscv_legitimize_move): Ditto.
	(riscv_binary_cost): Ditto.
	(riscv_rtx_costs): Ditto.
	(riscv_output_move): Ditto.
	(riscv_extend_comparands): Ditto.
	(riscv_flatten_aggregate_field): Ditto.
	(riscv_get_arg_info): Ditto.
	(riscv_pass_by_reference): Ditto.
	(riscv_elf_select_rtx_section): Ditto.
	(riscv_stack_align): Ditto.
	(riscv_compute_frame_info): Ditto.
	(riscv_initial_elimination_offset): Ditto.
	(riscv_set_return_address): Ditto.
	(riscv_for_each_saved_reg): Ditto.
	(riscv_first_stack_step): Ditto.
	(riscv_expand_prologue): Ditto.
	(riscv_expand_epilogue): Ditto.
	(riscv_can_use_return_insn): Ditto.
	(riscv_secondary_memory_needed): Ditto.
	(riscv_hard_regno_nregs): Ditto.
	(riscv_convert_vector_bits): New.
	(riscv_option_override): Adjust runtime invariant.
	(riscv_promote_function_mode): Ditto.
	* config/riscv/riscv.h (POLY_SMALL_OPERAND_P): New.
	(BITS_PER_RISCV_VECTOR): New.
	(BYTES_PER_RISCV_VECTOR): New.
	* config/riscv/riscv.md: Adjust runtime invariant.

2022-08-18  Lulu Cheng  <chenglulu@loongson.cn>

	* config/loongarch/loongarch.cc (loongarch_call_tls_get_addr):
	Get __tls_get_addr address through got table when disable plt.

2022-08-18  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/xtensa.cc (xtensa_expand_prologue):
	Use an "addmi" machine instruction for updating the stack pointer
	rather than addition/subtraction via hard register A9, if the amount
	of change satisfies the literal value conditions of that instruction
	when the CALL0 ABI is used.
	(xtensa_expand_epilogue): Ditto.
	And also inhibit the stack pointer addition of constant zero.

2022-08-17  Roger Sayle  <roger@nextmovesoftware.com>

	PR target/106640
	* config/i386/i386-features.cc
	(timde_scalar_chain::compute_convert_gain): Replace incorrect use
	of XINT with INTVAL (XEXP (src, 1)).

2022-08-17  Aldy Hernandez  <aldyh@redhat.com>

	* gimple-range-path.cc
	(path_range_query::compute_ranges_in_block): Remove
	set_root_oracle call.
	(path_range_query::compute_ranges): Pass ranger oracle to
	reset_path.
	* value-relation.cc (path_oracle::reset_path): Set root oracle.
	* value-relation.h (path_oracle::reset_path): Add root oracle
	argument.

2022-08-17  Marek Polacek  <polacek@redhat.com>

	PR c++/89780
	* diagnostic-spec.cc (nowarn_spec_t::nowarn_spec_t): Handle
	OPT_Wpessimizing_move and OPT_Wredundant_move.
	* diagnostic-spec.h (nowarn_spec_t): Add NW_REDUNDANT enumerator.

2022-08-17  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
	    Jakub Jelinek  <jakub@redhat.com>

	PR fortran/46539
	* common.opt (static-libquadmath): New option.
	* gcc.cc (driver_handle_option): Always accept -static-libquadmath.
	* config/darwin.h (LINK_SPEC): Handle -static-libquadmath.

2022-08-17  Tobias Burnus  <tobias@codesourcery.com>

	* lto-cgraph.cc (input_offload_tables): Improve requires diagnostic
	when filenames come out identically.

2022-08-17  Tobias Burnus  <tobias@codesourcery.com>

	PR middle-end/106548
	* omp-low.cc (lower_rec_input_clauses): Use build_outer_var_ref
	for 'simd' linear-step values that are variable.

2022-08-17  Tobias Burnus  <tobias@codesourcery.com>
	    Chung-Lin Tang  <cltang@codesourcery.com>

	PR c++/104493
	* gimplify.cc (omp_notice_variable): Call omp_mappable_type
	instead of removed langhook.
	* omp-general.h (omp_mappable_type): New prototype.
	* omp-general.cc (omp_mappable_type):  New; moved from ...
	* langhooks.cc (lhd_omp_mappable_type): ... here.
	* langhooks-def.h (lhd_omp_mappable_type,
	LANG_HOOKS_OMP_MAPPABLE_TYPE): Remove.
	(LANG_HOOKS_FOR_TYPES_INITIALIZER): Remote the latter.
	* langhooks.h (struct lang_hooks_for_types): Remove
	omp_mappable_type.

2022-08-17  Christophe Lyon  <christophe.lyon@arm.com>

	* config.gcc (arm): Define with_float to hard if target name ends
	with 'hf'.

2022-08-17  Richard Biener  <rguenther@suse.de>

	* tree-ssa-threadbackward.cc
	(back_threader_profitability): Split profitable_path_p
	into possibly_profitable_path_p and itself, keep state
	as new members.
	(back_threader::m_profit): Remove.
	(back_threader::find_paths): Likewise.
	(back_threader::maybe_register_path): Take profitability
	instance as parameter.
	(back_threader::find_paths_to_names): Likewise.  Use
	possibly_profitable_path_p and avoid the path range query
	when the path is currently too large.
	(back_threader::find_paths): Fold into ...
	(back_threader::maybe_thread_block): ... this.
	(get_gimple_control_stmt): Remove.
	(back_threader_profitability::possibly_profitable_path_p):
	Split out from profitable_path_p, do early profitability
	checks.
	(back_threader_profitability::profitable_path_p): Do final
	profitability path after the taken edge has been determined.

2022-08-17  Xi Ruoyao  <xry111@xry111.site>

	* config/loongarch/loongarch.md (fmax<mode>3): New RTL pattern.
	(fmin<mode>3): Likewise.

2022-08-17  Andrew MacLeod  <amacleod@redhat.com>

	* gimple-range-fold.cc (gimple_range_ssa_names): New.
	* gimple-range-fold.h (gimple_range_ssa_names): New prototype.
	* gimple-range-gori.cc (range_def_chain::get_def_chain): Move
	code to new routine.

2022-08-16  Martin Liska  <mliska@suse.cz>

	PR target/106637
	* doc/install.texi: Remove link to www.bullfreeware.com

2022-08-16  Kito Cheng  <kito.cheng@sifive.com>

	* common/config/riscv/riscv-common.cc (riscv_implied_info): Add
	zfh and zfhmin.
	(riscv_ext_version_table): Ditto.
	(riscv_ext_flag_table): Ditto.
	* config/riscv/riscv-opts.h (MASK_ZFHMIN): New.
	(MASK_ZFH): Ditto.
	(TARGET_ZFHMIN): Ditto.
	(TARGET_ZFH): Ditto.
	* config/riscv/riscv.cc (riscv_output_move): Handle HFmode move
	for zfh and zfhmin.
	(riscv_emit_float_compare): Handle HFmode.
	* config/riscv/riscv.md (ANYF): Add HF.
	(SOFTF): Add HF.
	(load): Ditto.
	(store): Ditto.
	(truncsfhf2): New.
	(truncdfhf2): Ditto.
	(extendhfsf2): Ditto.
	(extendhfdf2): Ditto.
	(*movhf_hardfloat): Ditto.
	(*movhf_softfloat): Make sure not ZFHMIN.
	* config/riscv/riscv.opt (riscv_zf_subext): New.

2022-08-16  Kito Cheng  <kito.cheng@sifive.com>

	* config/riscv/riscv-builtins.cc: include stringpool.h
	(riscv_float16_type_node): New.
	(riscv_init_builtin_types): Ditto.
	(riscv_init_builtins): Call riscv_init_builtin_types.
	* config/riscv/riscv-modes.def (HF): New.
	* config/riscv/riscv.cc (riscv_output_move): Handle HFmode.
	(riscv_mangle_type): New.
	(riscv_scalar_mode_supported_p): Ditto.
	(riscv_libgcc_floating_mode_supported_p): Ditto.
	(riscv_excess_precision): Ditto.
	(riscv_floatn_mode): Ditto.
	(riscv_init_libfuncs): Ditto.
	(TARGET_MANGLE_TYPE): Ditto.
	(TARGET_SCALAR_MODE_SUPPORTED_P): Ditto.
	(TARGET_LIBGCC_FLOATING_MODE_SUPPORTED_P): Ditto.
	(TARGET_INIT_LIBFUNCS): Ditto.
	(TARGET_C_EXCESS_PRECISION): Ditto.
	(TARGET_FLOATN_MODE): Ditto.
	* config/riscv/riscv.md (mode): Add HF.
	(softload): Add HF.
	(softstore): Ditto.
	(fmt): Ditto.
	(UNITMODE): Ditto.
	(movhf): New.
	(*movhf_softfloat): New.

2022-08-16  Richard Biener  <rguenther@suse.de>

	* tree-ssa-threadbackward.cc (back_threader::find_paths_to_names):
	Do not walk further if we are leaving the current loop.

2022-08-16  Sergei Trofimovich  <siarheit@google.com>

	PR driver/106624
	* gcc.cc (driver::detect_jobserver): Allocate storage xputenv()
	argument using xstrdup().

2022-08-16  Aldy Hernandez  <aldyh@redhat.com>

	* gimple-range-path.cc (path_range_query::import_p): Rename to...
	(path_range_query::exit_dependency_p): ...this.
	(path_range_query::dump): Rename imports to exit dependencies.
	(path_range_query::compute_ranges_in_phis): Same.
	(path_range_query::compute_ranges_in_block): Same.
	(path_range_query::adjust_for_non_null_uses): Same.
	(path_range_query::compute_ranges): Same.
	(path_range_query::compute_phi_relations): Same.
	(path_range_query::add_to_imports): Rename to...
	(path_range_query::add_to_exit_dependencies): ...this.
	(path_range_query::compute_imports): Rename to...
	(path_range_query::compute_exit_dependencies): ...this.
	* gimple-range-path.h (class path_range_query): Rename imports to
	exit dependencies.

2022-08-16  Martin Liska  <mliska@suse.cz>

	* value-range-storage.h (class obstack_vrange_allocator): Mark
	the class as final.
	(class ggc_vrange_allocator): Likewise.

2022-08-16  Martin Liska  <mliska@suse.cz>

	* value-range-equiv.h (class value_range_equiv): Add virtual
	destructor.
	* value-range.h: Likewise.

2022-08-16  Richard Biener  <rguenther@suse.de>

	PR middle-end/106630
	* match.pd ((T)(x * CST) -> (T)x * CST): Restrict to
	narrowing conversions.

2022-08-16  Martin Liska  <mliska@suse.cz>

	* value-range-equiv.h (class value_range_equiv):

2022-08-16  Martin Liska  <mliska@suse.cz>

	* config/i386/i386-features.h (class general_scalar_chain): Add
	final override for a method.
	(class timode_scalar_chain): Likewise.

2022-08-16  Richard Biener  <rguenther@suse.de>

	* doc/invoke.texi (max-jump-thread-paths): Adjust.

2022-08-16  Martin Liska  <mliska@suse.cz>

	* opts-common.cc (jobserver_info::connect): Open fifo
	in non-blocking mode.

2022-08-16  Kewen.Lin  <linkw@gcc.gnu.org>

	PR target/103353
	* config/rs6000/mma.md (define_expand movoo): Move TARGET_MMA condition
	check to preparation statements and add handlings for !TARGET_MMA.
	(define_expand movxo): Likewise.

2022-08-16  Kewen Lin  <linkw@linux.ibm.com>

	PR tree-optimization/106322
	* tree-vect-stmts.cc (vectorizable_call): Don't allow
	vect_emulated_vector_p type for both vectype_in and vectype_out.

2022-08-16  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* common/config/xtensa/xtensa-common.cc
	(xtensa_option_optimization_table): Add OPT_fsplit_wide_types_early
	for OPT_LEVELS_ALL in order to restore pre-GCC10 behavior.

2022-08-15  Andrew MacLeod  <amacleod@redhat.com>

	PR tree-optimization/106621
	* value-range.cc (irange::set): Check for POLY_INT_CST early.

2022-08-15  Roger Sayle  <roger@nextmovesoftware.com>

	* config/i386/i386-features.cc
	(timode_scalar_chain::compute_convert_gain): Provide costs for
	shifts and rotates.
	(timode_scalar_chain::convert_insn): Handle ASHIFTRT, ROTATERT
	and ROTATE just like existing ASHIFT and LSHIFTRT cases.
	(timode_scalar_to_vector_candidate_p): Handle all shifts and
	rotates by integer constants between 0 and 127.

2022-08-15  Roger Sayle  <roger@nextmovesoftware.com>

	* config/i386/i386-features.cc
	(timode_scalar_chain::compute_convert_gain): Provide gains for
	comparisons against 0/-1, including "*testti" patterns.

2022-08-15  Roger Sayle  <roger@nextmovesoftware.com>

	PR tree-optimization/64992
	PR tree-optimization/98956
	* match.pd (ne (lshift @0 @1) 0): Simplify (X << C) != 0 to X
	when X is zero_one_valued_p and the shift constant C is valid.
	(eq (lshift @0 @1) 0): Likewise, simplify (X << C) == 0 to !X
	when X is zero_one_valued_p and the shift constant C is valid.

2022-08-15  Roger Sayle  <roger@nextmovesoftware.com>
	    Richard Biener  <rguenther@suse.de>

	PR tree-optimization/71343
	* match.pd (op (lshift @0 @1) (lshift @2 @1)): Optimize the
	expression (X<<C) + (Y<<C) to (X+Y)<<C for multiple operators.
	(op (rshift @0 @1) (rshift @2 @1)): Likewise, simplify (X>>C)^(Y>>C)
	to (X^Y)>>C for binary logical operators, AND, IOR and XOR.

2022-08-15  Richard Biener  <rguenther@suse.de>

	* gimple-range-path.cc (range_on_path_entry): Just
	call range_on_entry.

2022-08-15  Jakub Jelinek  <jakub@redhat.com>

	PR rtl-optimization/106590
	* ifcvt.cc (check_for_cc_cmp_clobbers): New function.
	(noce_convert_multiple_sets_1): If SEQ sets or clobbers any regs
	mentioned in cc_cmp or rev_cc_cmp, don't consider seq2 for any
	further conditional moves.

2022-08-15  konglin1  <lingling.kong@intel.com>

	* config/i386/i386-builtin-types.def (BFLOAT16): New primitive type.
	* config/i386/i386-builtins.cc : Support __bf16 type for i386 backend.
	(ix86_register_bf16_builtin_type): New function.
	(ix86_bf16_type_node): New.
	(ix86_bf16_ptr_type_node): Ditto.
	(ix86_init_builtin_types): Add ix86_register_bf16_builtin_type function call.
	* config/i386/i386-modes.def (FLOAT_MODE): Add BFmode.
	(ADJUST_FLOAT_FORMAT): Ditto.
	* config/i386/i386.cc (classify_argument): Handle BFmode.
	(construct_container): Ditto.
	(function_value_32): Return __bf16 by %xmm0.
	(function_value_64): Return __bf16 by SSE register.
	(ix86_output_ssemov): Handle BFmode.
	(ix86_legitimate_constant_p): Disable BFmode constant double.
	(ix86_secondary_reload): Require gpr as intermediate register
	to store __bf16 from sse register when sse4 is not available.
	(ix86_scalar_mode_supported_p): Enable __bf16 under sse2.
	(ix86_mangle_type): Add manlging for __bf16 type.
	(ix86_invalid_conversion): New function for target hook.
	(ix86_invalid_unary_op): Ditto.
	(ix86_invalid_binary_op): Ditto.
	(TARGET_INVALID_CONVERSION): New define for target hook.
	(TARGET_INVALID_UNARY_OP): Ditto.
	(TARGET_INVALID_BINARY_OP): Ditto.
	* config/i386/i386.h (host_detect_local_cpu): Add BFmode.
	* config/i386/i386.md ("mode"): Add BFmode.
	(MODE_SIZE): Ditto.
	(X87MODEFH): Ditto.
	(HFBF): Add new define_mode_iterator.
	(*pushhf_rex64): Change for BFmode.
	(*push<mode>_rex64): Ditto.
	(*pushhf): Ditto.
	(*push<mode>): Ditto.
	(MODESH): Ditto.
	(hfbfconstf): Add new define_mode_attr.
	(*mov<mode>_internal): Add BFmode.

2022-08-13  Roger Sayle  <roger@nextmovesoftware.com>
	    Uroš Bizjak  <ubizjak@gmail.com>

	* config/i386/predicates.md (const_0_to_255_not_mul_8_operand):
	New predicate for values between 0/1 and 255, not multiples of 8.
	* config/i386/sse.md (ashlv1ti3): Delay lowering of logical left
	shifts by constant bit counts.
	(*ashlvti3_internal): New define_insn_and_split that lowers
	logical left shifts by constant bit counts, that aren't multiples
	of 8, before reload.
	(lshrv1ti3): Delay lowering of logical right shifts by constant.
	(*lshrv1ti3_internal): New define_insn_and_split that lowers
	logical right shifts by constant bit counts, that aren't multiples
	of 8, before reload.
	(ashrv1ti3):: Delay lowering of arithmetic right shifts by
	constant bit counts.
	(*ashrv1ti3_internal): New define_insn_and_split that lowers
	arithmetic right shifts by constant bit counts before reload.
	(rotlv1ti3): Delay lowering of rotate left by constant.
	(*rotlv1ti3_internal): New define_insn_and_split that lowers
	rotate left by constant bits counts before reload.
	(rotrv1ti3): Delay lowering of rotate right by constant.
	(*rotrv1ti3_internal): New define_insn_and_split that lowers
	rotate right by constant bits counts before reload.

2022-08-12  Srinath Parvathaneni  <srinath.parvathaneni@arm.com>

	* doc/invoke.texi (Arm Options): Document -mcpu=cortex-m55 options.

2022-08-12  Jan Hubicka  <hubicka@ucw.cz>

	PR middle-end/106057
	* ipa-devirt.cc (type_or_derived_type_possibly_instantiated_p): New
	function.
	(possible_polymorphic_call_targets): Use it.

2022-08-12  Andrew Carlotti  <andrew.carlotti@arm.com>

	* tree-ssa-loop.h: Improve comment

2022-08-12  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/106506
	* tree-ssa-phiopt.cc (spaceship_replacement): Don't punt for
	is_cast or orig_use_lhs cases if phi_bb has 3 predecessors.

2022-08-12  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106593
	* tree-ssa-threadbackward.cc (back_threader::find_paths):
	If the imports from the conditional do not satisfy
	gimple_range_ssa_p don't try to thread anything.

2022-08-12  Tamar Christina  <tamar.christina@arm.com>

	PR target/106524
	* config/aarch64/aarch64-sve.md (*fcmuo<mode>_nor_combine,
	*fcmuo<mode>_bic_combine): Don't accept comparisons against zero.

2022-08-12  Tim Lange  <mail@tim-lange.me>

	PR analyzer/106000
	* doc/invoke.texi: Add Wanalyzer-out-of-bounds.

2022-08-12  Andrew Pinski  <apinski@marvell.com>

	* config/aarch64/aarch64.md: Remove comment
	about MD_INCLUDES as it is out of date and not needed.

2022-08-11  Richard Biener  <rguenther@suse.de>

	* gimple-range-path.cc (path_range_query::compute_imports):
	Restrict walking SSA defs to blocks inside the path.  Track
	the same operands as range_def_chain::get_def_chain does.

2022-08-11  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106514
	* tree-ssa-threadbackward.cc (back_threader::find_paths_to_names):
	Compute and unwind both m_imports and interesting on the fly during
	path discovery.
	(back_threader::find_paths): Compute the original m_imports
	from just the SSA uses of the exit conditional.  Drop
	handling single_succ_to_potentially_threadable_block.
	* gimple-range-path.cc (path_range_query::ssa_range_in_phi): Handle
	constant PHI arguments without crashing.  Use PHI_ARG_DEF_FROM_EDGE.

2022-08-11  Richard Biener  <rguenther@suse.de>

	* gimple-range-path.h (path_range_query::compute_imports):
	Take path as argument, not the exit block.
	* gimple-range-path.cc (path_range_query::compute_imports):
	Likewise, and adjust, avoiding possibly stale m_path.
	(path_range_query::compute_outgoing_relations): Register
	relations for all conditionals.
	* tree-ssa-threadbackward.cc (back_threader::find_paths):
	Adjust.

2022-08-11  Kewen Lin  <linkw@linux.ibm.com>

	* config/rs6000/rs6000-builtin.cc (rs6000_init_builtins): Fix the
	oversight on ENB_CELL by simplifying with rs6000_builtin_is_supported.
	(rs6000_expand_builtin): Simplify with rs6000_builtin_is_supported.

2022-08-11  Kewen Lin  <linkw@linux.ibm.com>

	* config/rs6000/rs6000-internal.h (rs6000_global_entry_point_needed_p):
	Remove function declaration.

2022-08-10  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106513
	* gimple-ssa-store-merging.cc (do_shift_rotate): Use uint64_t
	for head_marker.

2022-08-10  Martin Liska  <mliska@suse.cz>

	PR lto/106328
	* opts-jobserver.h (struct jobserver_info): Add pipefd.
	(jobserver_info::connect): New.
	(jobserver_info::disconnect): Likewise.
	(jobserver_info::get_token): Likewise.
	(jobserver_info::return_token): Likewise.
	* opts-common.cc: Implement the new functions.

2022-08-10  Martin Liska  <mliska@suse.cz>

	* opts-jobserver.h: Add one member.
	* opts-common.cc (jobserver_info::jobserver_info): Parse FIFO
	format of --jobserver-auth.

2022-08-10  Martin Liska  <mliska@suse.cz>

	* gcc.cc (driver::detect_jobserver): Remove and move to
	jobserver.h.
	* lto-wrapper.cc (jobserver_active_p): Likewise.
	(run_gcc): Likewise.
	* opts-jobserver.h: New file.
	* opts-common.cc (jobserver_info::jobserver_info): New function.

2022-08-09  Roger Sayle  <roger@nextmovesoftware.com>

	* config/i386/i386-features.cc (scalar_chain::convert_compare):
	Create new pseudos only when/if needed.  Add support for TEST,
	i.e. (COMPARE (AND x y) (const_int 0)), using UNSPEC_PTEST.
	When broadcasting V2DImode and V4SImode use new pseudo register.
	(timode_scalar_chain::convert_op): Do nothing if operand is
	already V1TImode.  Avoid generating useless SUBREG conversions,
	i.e. (SUBREG:V1TImode (REG:V1TImode) 0).  Handle CONST_WIDE_INT
	in addition to CONST_INT by using CONST_SCALAR_INT_P.
	(convertible_comparison_p): Use CONST_SCALAR_INT_P to match both
	CONST_WIDE_INT and CONST_INT.  Recognize new *testti_doubleword
	pattern as an STV candidate.
	(timode_scalar_to_vector_candidate_p): Allow CONST_SCALAR_INT_P
	operands in binary logic operations.
	* config/i386/i386.cc (ix86_rtx_costs) <case UNSPEC>: Add costs
	for UNSPEC_PTEST; a PTEST that performs an AND has the same cost
	as regular PTEST, i.e. cost->sse_op.
	* config/i386/i386.md (*testti_doubleword): New pre-reload
	define_insn_and_split that recognizes comparison of TI mode AND
	against zero.
	* config/i386/sse.md (*ptest<mode>_and): New pre-reload
	define_insn_and_split that recognizes UNSPEC_PTEST of identical
	AND operands.

2022-08-09  Roger Sayle  <roger@nextmovesoftware.com>
	    Richard Biener  <rguenther@suse.de>

	PR middle-end/21137
	PR tree-optimization/98954
	* fold-const.cc (fold_binary_loc): Remove optimizations to
	optimize ((X >> C1) & C2) ==/!= 0.
	* match.pd (cmp (bit_and (lshift @0 @1) @2) @3): Remove wi::ctz
	check, and handle all values of INTEGER_CSTs @2 and @3.
	(cmp (bit_and (rshift @0 @1) @2) @3): Likewise, remove wi::clz
	checks, and handle all values of INTEGER_CSTs @2 and @3.

2022-08-09  David Malcolm  <dmalcolm@redhat.com>

	* doc/invoke.texi (Static Analyzer Options): Add notes on which
	functions the analyzer has hardcoded knowledge of.

2022-08-09  Andrew Stubbs  <ams@codesourcery.com>

	* config/gcn/gcn.cc (gcn_function_value): Allow vector return values.
	(num_arg_regs): Allow vector arguments.
	(gcn_function_arg): Likewise.
	(gcn_function_arg_advance): Likewise.
	(gcn_arg_partial_bytes): Likewise.
	(gcn_return_in_memory): Likewise.
	(gcn_expand_epilogue): Get return value from v8.
	* config/gcn/gcn.h (RETURN_VALUE_REG): Set to v8.
	(FIRST_PARM_REG): USE FIRST_SGPR_REG for clarity.
	(FIRST_VPARM_REG): New.
	(FUNCTION_ARG_REGNO_P): Allow vector parameters.
	(struct gcn_args): Add vnum field.
	(LIBCALL_VALUE): All vector return values.
	* config/gcn/gcn.md (gcn_call_value): Add vector constraints.
	(gcn_call_value_indirect): Likewise.

2022-08-09  Richard Biener  <rguenther@suse.de>

	* omp-expand.cc (expand_omp_atomic_load): Emit GIMPLE
	directly.  Avoid update_ssa when in SSA form.
	(expand_omp_atomic_store): Likewise.
	(expand_omp_atomic_fetch_op): Avoid update_ssa when in SSA
	form.
	(expand_omp_atomic_pipeline): Likewise.
	(expand_omp_atomic_mutex): Likewise.
	* tree-parloops.cc (gen_parallel_loop): Use
	TODO_update_ssa_no_phi after loop_version.

2022-08-09  Richard Biener  <rguenther@suse.de>

	* doc/invoke.texi (max-fsm-thread-length): Remove.
	* params.opt (max-fsm-thread-length): Likewise.
	* tree-ssa-threadbackward.cc
	(back_threader_profitability::profitable_path_p): Do not
	check max-fsm-thread-length.

2022-08-09  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106514
	* params.opt (max-jump-thread-paths): New.
	* doc/invoke.texi (max-jump-thread-paths): Document.
	* tree-ssa-threadbackward.cc (back_threader::find_paths_to_names):
	Honor max-jump-thread-paths, take overall_path argument.
	(back_threader::find_paths): Pass 1 as initial overall_path.

2022-08-09  Tobias Burnus  <tobias@codesourcery.com>

	PR middle-end/106492
	* omp-low.cc (lower_rec_input_clauses): Add missing folding
	to data type of linear-clause list item.

2022-08-08  Andrew MacLeod  <amacleod@redhat.com>

	PR tree-optimization/106556
	* gimple-range-gori.cc (gori_compute::condexpr_adjust): Use the
	type of the cond_expr operands being evaluted.

2022-08-08  Tom Honermann  <tom@honermann.net>

	* ginclude/stdatomic.h (atomic_char8_t,
	ATOMIC_CHAR8_T_LOCK_FREE): New typedef and macro.

2022-08-08  Andrew Pinski  <apinski@marvell.com>

	PR middle-end/103645
	* gimplify.cc (gimplify_init_constructor): Don't build/add
	gimple assignment of an empty type.

2022-08-08  Richard Biener  <rguenther@suse.de>

	PR lto/106540
	PR lto/106334
	* dwarf2out.cc (dwarf2out_register_external_die): Restore
	original assert.
	* lto-streamer-in.cc (lto_read_tree_1): Use lto_input_tree_1
	to input DECL_INITIAL, avoiding to commit drefs.

2022-08-07  Roger Sayle  <roger@nextmovesoftware.com>

	* config/i386/i386.md (*cmp<dwi>_doubleword): Change predicate
	for x86_64_hilo_general_operand to general operand.  Call
	force_reg on parts that are not x86_64_immediate_operand.

2022-08-05  David Malcolm  <dmalcolm@redhat.com>

	PR analyzer/105947
	* doc/invoke.texi: Add -Wanalyzer-jump-through-null.

2022-08-05  Roger Sayle  <roger@nextmovesoftware.com>

	* expmed.cc (emit_store_flag_1): Move code to expand double word
	equality and inequality against zero or -1, using word operations,
	to after trying to use the backend's cstore<mode>4 optab/expander.

2022-08-05  Tamar Christina  <tamar.christina@arm.com>

	PR middle-end/106534
	* tree-ssa-phiopt.cc (tree_ssa_phiopt_worker): Guard the
	value_replacement and store_elim from diamonds.

2022-08-05  Richard Biener  <rguenther@suse.de>

	* tree-ssa-threadbackward.cc (back_threader::maybe_register_path):
	Check whether the registry register_path rejected the path.
	(back_threader_registry::register_path): Return whether
	register_jump_thread succeeded.

2022-08-05  Aldy Hernandez  <aldyh@redhat.com>

	PR tree-optimization/106514
	* value-range.cc (unsupported_range::unsupported_range): Move...
	* value-range.h (unsupported_range::unsupported_range): ...here.
	(unsupported_range::set_undefined): New.

2022-08-05  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106533
	* tree-loop-distribution.cc (loop_distribution::execute): Continue
	analyzing the inner loops when find_seed_stmts_for_distribution
	fails.

2022-08-05  Andrew Pinski  <apinski@marvell.com>

	* config/riscv/predicates.md (splittable_const_int_operand):
	Remove the check for TARGET_64BIT for single bit const values.

2022-08-04  Andrew MacLeod  <amacleod@redhat.com>

	PR tree-optimization/106514
	* gimple-range-path.cc (path_range_query::compute_ranges_in_block):
	Use EXECUTE_IF_AND_IN_BITMAP to loop over 2 bitmaps.

2022-08-04  Tamar Christina  <tamar.christina@arm.com>

	* match.pd: New bit_not rule.

2022-08-04  Tamar Christina  <tamar.christina@arm.com>

	PR middle-end/106519
	* tree-ssa-phiopt.cc (tree_ssa_phiopt_worker): Check final phi edge for
	diamond shapes.

2022-08-04  Sam Feifer  <sfeifer@redhat.com>

	PR tree-optimization/106243
	* match.pd (-x & 1): New simplification.

2022-08-04  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106521
	* gimple-loop-jam.cc (tree_loop_unroll_and_jam): Perform
	CFG cleanup manually before rewriting into LC SSA.

2022-08-04  Richard Biener  <rguenther@suse.de>

	* tree-ssa-threadbackward.cc (populate_worklist): Remove.
	(back_threader::resolve_phi): Likewise.
	(back_threader::find_paths_to_names): Rewrite greedy search.

2022-08-04  Ilya Leoshkevich  <iii@linux.ibm.com>

	* config/s390/vector.md (V_HW_FT): New iterator.
	* config/s390/vx-builtins.md (vsel<mode>): Use V_HW_FT instead
	of V_HW.

2022-08-03   Michael Meissner  <meissner@linux.ibm.com>

	* config/rs6000/rs6000.cc (rs6000_option_override_internal): Remove code
	setting -mblock-ops-vector-pair.

2022-08-03  Andrew MacLeod  <amacleod@redhat.com>

	PR tree-optimization/106514
	* value-relation.cc (path_oracle::killing_def) Do not walk the
	equivalence set clearing bits.

2022-08-03  Tamar Christina  <tamar.christina@arm.com>

	* tree-ssa-phiopt.cc (minmax_replacement): Optionally search for the phi
	sequence of a three-way conditional.
	(replace_phi_edge_with_variable): Support diamonds.
	(tree_ssa_phiopt_worker): Detect diamond phi structure for three-way
	min/max.
	(strip_bit_not, invert_minmax_code): New.

2022-08-03  Richard Earnshaw  <rearnsha@arm.com>

	PR rtl-optimization/106187
	* alias.h (mems_same_for_tbaa_p): Declare.
	* alias.cc (mems_same_for_tbaa_p): New function.
	* dse.cc (record_store): Use it instead of open-coding
	alias check.
	* cselib.h (cselib_redundant_set_p): Declare.
	* cselib.cc: Include alias.h
	(cselib_redundant_set_p): New function.
	* cfgcleanup.cc: (mark_effect): Use cselib_redundant_set_p instead
	of rtx_equal_for_cselib_p.
	* postreload.cc (reload_cse_simplify): Use cselib_redundant_set_p.
	(reload_cse_noop_set_p): Delete.

2022-08-03  Martin Liska  <mliska@suse.cz>

	* doc/gcov-dump.texi: Document the new option.
	* gcov-dump.cc (main): Parse the new option.
	(print_usage): Show the option.
	(tag_counters): Sort key:value pairs of TOP N counter.

2022-08-03  Martin Liska  <mliska@suse.cz>

	* profile.cc (compute_branch_probabilities): Do not collect
	stats unless TDF_DETAILS.

2022-08-03  Roger Sayle  <roger@nextmovesoftware.com>
	    Uroš Bizjak  <ubizjak@gmail.com>

	PR target/47949
	* config/i386/i386.md (peephole2): New peephole2 to convert
	SWI48 moves to/from %rax/%eax where the src is dead to xchg,
	when optimizing for minimal size with -Oz.

2022-08-03  Roger Sayle  <roger@nextmovesoftware.com>

	* config/i386/i386.md (*cmp<dwi>_doubleword): Add a special case
	to split comparisons against -1 using AND and CMP -1 instructions.

2022-08-03  Roger Sayle  <roger@nextmovesoftware.com>

	* config/i386/i386-features.cc (compute_convert_gain): Add gain
	for converting suitable TImode shift to a V1TImode shift.
	(timode_scalar_chain::convert_insn): Add support for converting
	suitable ASHIFT and LSHIFTRT.
	(timode_scalar_to_vector_candidate_p): Consider logical shifts
	by integer constants that are multiples of 8 to be candidates.

2022-08-03  Roger Sayle  <roger@nextmovesoftware.com>
	    Segher Boessenkool  <segher@kernel.crashing.org>
	    Richard Sandiford  <richard.sandiford@arm.com>

	* simplify-rtx.cc (simplify_unary_operation_1) <ABS>: Add
	optimizations for CLRSB, PARITY, POPCOUNT, SS_ABS and LSHIFTRT
	that are all positive to complement the existing FFS and
	idempotent ABS simplifications.
	<SIGN_EXTEND>: Canonicalize SIGN_EXTEND to ZERO_EXTEND when
	val_signbit_known_clear_p is true of the operand.
	Simplify sign extensions of SUBREG truncations of operands
	that are already suitably (zero) extended.
	<ZERO_EXTEND>: Simplify zero extensions of SUBREG truncations
	of operands that are already suitably zero extended.

2022-08-02  Andrew MacLeod  <amacleod@redhat.com>

	PR tree-optimization/106510
	* gimple-range-fold.cc (fur_source::register_outgoing_edges):
	Check for unsupported statements early.

2022-08-02  Andrew MacLeod  <amacleod@redhat.com>

	PR tree-optimization/106474
	* gimple-range-cache.cc (ranger_cache::fill_block_cache): Query
	range of equivalences that may contribute to the range.

2022-08-02  Jose E. Marchesi  <jose.marchesi@oracle.com>

	* btfout.cc (output_asm_btf_vlen_bytes): Do not use the CHAR
	encoding bit in BTF.

2022-08-02  Aldy Hernandez  <aldyh@redhat.com>

	* gimple-range-fold.cc (fold_using_range::range_of_phi): Remove
	irange check.
	(tree_lower_bound): New.
	(tree_upper_bound): New.
	(fold_using_range::range_of_ssa_name_with_loop_info): Convert to
	vrange.
	* gimple-range-fold.h (range_of_ssa_name_with_loop_info): Change
	argument to vrange.

2022-08-02  Richard Biener  <rguenther@suse.de>

	* tree-ssa-threadbackward.cc
	(back_threader_profitability::profitable_path_p): Apply
	size constraints to all paths again.

2022-08-02  Aldy Hernandez  <aldyh@redhat.com>

	* range-op-float.cc (finite_operands_p): New.
	(frelop_early_resolve): New.
	(default_frelop_fold_range): New.
	(class foperator_equal): New.
	(class foperator_not_equal): New.
	(class foperator_lt): New.
	(class foperator_le): New.
	(class foperator_gt): New.
	(class foperator_ge): New.
	(class foperator_unordered): New.
	(class foperator_ordered): New.
	(class foperator_relop_unknown): New.
	(floating_op_table::floating_op_table): Add above classes to
	floating op table.
	* value-range.h (frange::supports_p): Enable.

2022-08-02  Aldy Hernandez  <aldyh@redhat.com>

	* tree-core.h (struct tree_ssa_name): Add frange_info and
	reshuffle the rest.
	* value-range-storage.cc (vrange_storage::alloc_slot): Add case
	for frange.
	(vrange_storage::set_vrange): Same.
	(vrange_storage::get_vrange): Same.
	(vrange_storage::fits_p): Same.
	(frange_storage_slot::alloc_slot): New.
	(frange_storage_slot::set_frange): New.
	(frange_storage_slot::get_frange): New.
	(frange_storage_slot::fits_p): New.
	* value-range-storage.h (class frange_storage_slot): New.

2022-08-02  Aldy Hernandez  <aldyh@redhat.com>

	* ipa-prop.cc (ipa_compute_jump_functions_for_edge): Limit ranger
	query to integrals.

2022-08-02  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.cc (frange::set): Initialize m_props and cleanup.

2022-08-02  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106497
	* tree-ssa-threadupdate.cc (fwd_jt_path_registry::update_cfg):
	Also verify we can copy EDGE_COPY_SRC_JOINER_BLOCK.

2022-08-02  Martin Liska  <mliska@suse.cz>

	* profile.cc (compute_branch_probabilities): Dump details only
	if TDF_DETAILS.
	* symtab.cc (symtab_node::dump_base): Do not dump pointer unless
	TDF_ADDRESS is used, it makes comparison harder.

2022-08-02  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106498
	* omp-expand.cc (expand_omp_taskreg): Do not perform virtual
	SSA update here.
	(expand_omp_for): Or here.
	(execute_expand_omp): Instead schedule it here together
	with CFG cleanup via TODO.

2022-08-02  Richard Biener  <rguenther@suse.de>

	PR lto/106334
	* dwarf2out.cc (dwarf2out_register_external_die): Adjust
	assert.

2022-08-02  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106495
	* tree-ssa-threadbackward.cc
	(back_threader_profitability::profitable_path_p): If known_edge
	is probably never executed avoid threading.

2022-08-01  David Malcolm  <dmalcolm@redhat.com>

	* doc/invoke.texi (-Wanalyzer-putenv-of-auto-var): Fix copy&paste
	error.

2022-08-01  Roger Sayle  <roger@nextmovesoftware.com>
	    Uroš Bizjak  <ubizjak@gmail.com>

	PR target/106481
	* config/i386/i386-features.cc (timode_scalar_chain::convert_insn):
	Convert a CONST_SCALAR_INT_P in a REG_EQUAL note into a V1TImode
	CONST_VECTOR.

2022-08-01  H.J. Lu  <hjl.tools@gmail.com>

	PR target/83782
	* config/i386/i386.cc (ix86_ifunc_ref_local_ok): New.
	(TARGET_IFUNC_REF_LOCAL_OK): Use it.

2022-08-01  Jose E. Marchesi  <jose.marchesi@oracle.com>

	PR debug/106263
	* ctfc.h (struct ctf_dtdef): Add field linkage.
	* ctfc.cc (ctf_add_function): Set ctti_linkage.
	* dwarf2ctf.cc (gen_ctf_function_type): Pass a linkage for
	function types and subprograms.
	* btfout.cc (btf_asm_func_type): Emit linkage information for the
	function.
	(btf_dtd_emit_preprocess_cb): Propagate the linkage information
	for functions.

2022-08-01  Andrew Stubbs  <ams@codesourcery.com>
	    Jakub Jelinek   <jakub@redhat.com>

	* omp-simd-clone.cc (simd_clone_adjust): Convert shift_cnt to match
	the mask type.

2022-08-01  Sam Feifer  <sfeifer@redhat.com>

	PR tree-optimization/104992
	* match.pd (x / y * y == x): New simplification.

2022-08-01  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.cc (tree_compare): New.
	(frange::set): Make more general.
	(frange::normalize_kind): Cleanup and return bool.
	(frange::union_): Use normalize_kind return value.
	(frange::intersect): Same.
	(frange::verify_range): Remove unnecessary else.
	* value-range.h (vrp_val_max): Move before frange class.
	(vrp_val_min): Same.
	(frange::frange): Remove set to m_type.

2022-08-01  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.cc (vrange::supports_type_p): Use const_tree.
	(irange::supports_type_p): Same.
	(frange::supports_type_p): Same.
	* value-range.h (Value_Range::supports_type_p): Same.
	(irange::supports_p): Same.

2022-08-01  Aldy Hernandez  <aldyh@redhat.com>

	* gimple-range-fold.cc (fold_using_range::range_of_phi): Only
	query SCEV for integers.
	(fold_using_range::range_of_ssa_name_with_loop_info): Remove
	irange check.

2022-07-31  Roger Sayle  <roger@nextmovesoftware.com>

	* config/i386/i386.md (define_expand <any_rotate>ti3): For
	rotations by 64 bits use new rot[lr]64ti2_doubleword pattern.
	(rot[lr]64ti2_doubleword): New post-reload splitter.

2022-07-31  Roger Sayle  <roger@nextmovesoftware.com>
	    H.J. Lu  <hjl.tools@gmail.com>

	PR target/106450
	* config/i386/i386-features.cc (timode_check_non_convertible_regs):
	Do nothing if REGNO is set in the REGS bitmap, or is a hard reg.
	(timode_remove_non_convertible_regs): Update comment.
	Call timode_check_non_convertible_reg on all TImode register
	DEFs and USEs in each instruction.

2022-07-30  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/xtensa.md: Change hard register number used in
	the split patterns for indirect sibling call fixups from 10 to 11,
	the last free one for the CALL0 ABI.

2022-07-30  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/xtensa.cc (xtensa_rtx_costs):
	Add new case for IF_THEN_ELSE.

2022-07-29  Andrew Stubbs  <ams@codesourcery.com>

	* config/gcn/gcn-valu.md (V_INT_noHI): New iterator.
	(<expander><mode>3<exec>): Use V_INT_noHI.
	(v<expander><mode>3<exec>): Likewise.

2022-07-29  Andrew Stubbs  <ams@codesourcery.com>

	* config/gcn/gcn.md (one_cmpldi2): New.

2022-07-29  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/105679
	* tree-ssa-threadbackward.cc
	(back_threader_profitability::profitable_path_p): Avoid threading
	when the entry edge is probably never executed.

2022-07-29  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106422
	* tree-ssa-threadupdate.cc (fwd_jt_path_registry::update_cfg):
	Check whether we can copy thread blocks and cancel the thread if not.

2022-07-29  Jakub Jelinek  <jakub@redhat.com>

	PR middle-end/106449
	* omp-expand.cc (expand_omp_simd): Fix up handling of pointer
	iterators in non-rectangular simd loops.  Unshare fd->loops[i].n2
	or n2 before regimplifying it inside of a condition.

2022-07-29  Jakub Jelinek  <jakub@redhat.com>

	* omp-expand.cc (expand_omp_for_init_counts, expand_omp_for_init_vars,
	extract_omp_for_update_vars, expand_omp_for_ordered_loops,
	expand_omp_simd): Don't fold_convert second argument to
	fold_build_pointer_plus to sizetype.

2022-07-29  Lulu Cheng  <chenglulu@loongson.cn>

	* config.in: Regenerate.
	* config/loongarch/loongarch.h (ASM_PREFERRED_EH_DATA_FORMAT):
	Select the value of the macro definition according to whether
	HAVE_AS_EH_FRAME_PCREL_ENCODING_SUPPORT is defined.
	* configure: Regenerate.
	* configure.ac: Reinstate HAVE_AS_EH_FRAME_PCREL_ENCODING_SUPPORT test.

2022-07-29  Richard Biener  <rguenther@suse.de>

	* gimple-ssa-warn-restrict.cc (builtin_memref::set_base_and_offset):
	Use CONVERT_EXPR_CODE_P.

2022-07-29  Richard Biener  <rguenther@suse.de>

	* tree-vect-patterns.cc (vect_recog_bool_pattern): Use
	get_vectype_for_scalar_type instead of
	vect_get_vector_types_for_stmt.

2022-07-28  David Malcolm  <dmalcolm@redhat.com>

	PR analyzer/105893
	* doc/invoke.texi: Add -Wanalyzer-putenv-of-auto-var.

2022-07-28  David Malcolm  <dmalcolm@redhat.com>

	* doc/invoke.texi (-fdiagnostics-show-cwe): Use uref rather than
	url.
	(Static Analyzer Options): Likewise.  Add urefs for all of the
	warnings that have associated CWE identifiers.

2022-07-28  Maciej W. Rozycki  <macro@embecosm.com>

	* doc/implement-c.texi (Floating point implementation): Mention
	`-fno-trapping-math' in the context of FENV_ACCESS pragma.
	* doc/invoke.texi (Optimize Options): Clarify FENV_ACCESS pragma
	implication in the descriptions of `-fno-trapping-math' and
	`-frounding-math'.

2022-07-28  Maciej W. Rozycki  <macro@embecosm.com>

	* config/riscv/riscv.md (UNSPECV_FSNVSNAN): New constant.
	(QUIET_PATTERN): New int attribute.
	(f<quiet_pattern>_quiet<ANYF:mode><X:mode>4): Emit the intended
	RTL insns entirely within the preparation statements.
	(*f<quiet_pattern>_quiet<ANYF:mode><X:mode>4_default)
	(*f<quiet_pattern>_quiet<ANYF:mode><X:mode>4_snan): Remove
	insns.
	(*riscv_fsnvsnan<mode>2): New insn.

2022-07-28  Richard Biener  <rguenther@suse.de>

	PR middle-end/106457
	* tree.cc (array_at_struct_end_p): Handle array objects
	specially.

2022-07-28  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/106099
	* internal-fn.def (TRAP): New internal fn.
	* internal-fn.h (expand_TRAP): Declare.
	* internal-fn.cc (expand_TRAP): Define.
	* gimple.cc (gimple_build_builtin_unreachable): For BUILT_IN_TRAP,
	use internal fn rather than builtin.

2022-07-27  Andrew Carlotti  <andrew.carlotti@arm.com>

	* doc/loop.texi: Refer to LOOPS_HAVE_RECORDED_EXITS instead.

2022-07-27  WANG Xuerui  <i@xen0n.name>

	* doc/invoke.texi: Document -m[no-]explicit-relocs for
	LoongArch.

2022-07-27  Maciej W. Rozycki  <macro@embecosm.com>

	* config/riscv/riscv.md (stack_protect_set_<mode>): Remove
	duplicate backslashes.

2022-07-27  Maciej W. Rozycki  <macro@embecosm.com>

	* config/riscv/riscv.cc (riscv_rtx_costs) <IF_THEN_ELSE>: New
	case.

2022-07-27  Jakub Jelinek  <jakub@redhat.com>

	PR debug/106261
	* cgraphunit.cc (cgraph_node::assemble_thunks_and_aliases): Don't
	output asm thunks for -dx.

2022-07-27  Jakub Jelinek  <jakub@redhat.com>

	PR middle-end/106332
	* opts-common.cc (candidates_list_and_hint): Add gcc_assert
	that candidates is not an empty vector.

2022-07-27  Xi Ruoyao  <xry111@xry111.site>

	* configure.ac (HAVE_AS_EXPLICIT_RELOCS): Define to 1 if the
	assembler supports explicit relocation for LoongArch.
	* configure: Regenerate.
	* config/loongarch/loongarch-opts.h (HAVE_AS_EXPLICIT_RELOCS):
	Define to 0 if not defined.
	* config/loongarch/genopts/loongarch.opt.in
	(TARGET_EXPLICIT_RELOCS): Default to HAVE_AS_EXPLICIT_RELOCS.
	* config/loongarch/loongarch.opt: Regenerate.

2022-07-26  Peter Bergner  <bergner@linux.ibm.com>

	PR c/106016
	* expr.cc (count_type_elements): Handle OPAQUE_TYPE.

2022-07-26  Lulu Cheng  <chenglulu@loongson.cn>

	* config/loongarch/loongarch-opts.cc: Modify the output message string
	of the warning.

2022-07-26  Martin Liska  <mliska@suse.cz>

	* doc/tm.texi.in: Fix placement of defmac.
	* doc/tm.texi: Copy.

2022-07-26  Martin Liska  <mliska@suse.cz>

	* doc/tm.texi.in: Fix cross @defmac and @hook.
	* doc/tm.texi: Copy.

2022-07-26  Aldy Hernandez  <aldyh@redhat.com>

	PR tree-optimization/106444
	* value-range-pretty-print.cc (vrange_printer::visit): Handle
	legacy ranges.
	(vrange_printer::print_irange_bound): Work on wide_int's.
	* value-range-pretty-print.h (print_irange_bound): Same.
	* value-range.cc (irange::get_nonzero_bits): Handle legacy ranges.

2022-07-26  Richard Biener  <rguenther@suse.de>

	* tree-ssa-alias.cc (ptr_derefs_may_alias_p): If ptr1
	points to a constant continue checking ptr2.

2022-07-26  Andrew Carlotti  <Andrew.Carlotti@arm.com>

	* config/aarch64/aarch64-builtins.cc
	(MODE_d_bf16, MODE_d_f16, MODE_d_f32, MODE_d_f64, MODE_d_s8)
	(MODE_d_s16, MODE_d_s32, MODE_d_s64, MODE_d_u8, MODE_d_u16)
	(MODE_d_u32, MODE_d_u64, MODE_d_p8, MODE_d_p16, MODE_d_p64)
	(MODE_q_bf16, MODE_q_f16, MODE_q_f32, MODE_q_f64, MODE_q_s8)
	(MODE_q_s16, MODE_q_s32, MODE_q_s64, MODE_q_u8, MODE_q_u16)
	(MODE_q_u32, MODE_q_u64, MODE_q_p8, MODE_q_p16, MODE_q_p64)
	(MODE_q_p128): Define macro to map to corresponding mode name.
	(QUAL_bf16, QUAL_f16, QUAL_f32, QUAL_f64, QUAL_s8, QUAL_s16)
	(QUAL_s32, QUAL_s64, QUAL_u8, QUAL_u16, QUAL_u32, QUAL_u64)
	(QUAL_p8, QUAL_p16, QUAL_p64, QUAL_p128): Define macro to map to
	corresponding qualifier name.
	(LENGTH_d, LENGTH_q): Define macro to map to "" or "q" suffix.
	(SIMD_INTR_MODE, SIMD_INTR_QUAL, SIMD_INTR_LENGTH_CHAR): Macro
	functions for the above mappings
	(VREINTERPRET_BUILTIN2, VREINTERPRET_BUILTINS1, VREINTERPRET_BUILTINS)
	(VREINTERPRETQ_BUILTIN2, VREINTERPRETQ_BUILTINS1)
	(VREINTERPRETQ_BUILTINS, VREINTERPRET_BUILTIN)
	(AARCH64_SIMD_VREINTERPRET_BUILTINS): New macros to create definitions
	for all vreinterpret intrinsics
	(enum aarch64_builtins): Add vreinterpret function codes
	(aarch64_init_simd_intrinsics): New
	(handle_arm_neon_h): Improved comment.
	(aarch64_general_fold_builtin): Fold vreinterpret calls
	* config/aarch64/arm_neon.h
	(vreinterpret_p8_f16, vreinterpret_p8_f64, vreinterpret_p8_s8)
	(vreinterpret_p8_s16, vreinterpret_p8_s32, vreinterpret_p8_s64)
	(vreinterpret_p8_f32, vreinterpret_p8_u8, vreinterpret_p8_u16)
	(vreinterpret_p8_u32, vreinterpret_p8_u64, vreinterpret_p8_p16)
	(vreinterpret_p8_p64, vreinterpretq_p8_f64, vreinterpretq_p8_s8)
	(vreinterpretq_p8_s16, vreinterpretq_p8_s32, vreinterpretq_p8_s64)
	(vreinterpretq_p8_f16, vreinterpretq_p8_f32, vreinterpretq_p8_u8)
	(vreinterpretq_p8_u16, vreinterpretq_p8_u32, vreinterpretq_p8_u64)
	(vreinterpretq_p8_p16, vreinterpretq_p8_p64, vreinterpretq_p8_p128)
	(vreinterpret_p16_f16, vreinterpret_p16_f64, vreinterpret_p16_s8)
	(vreinterpret_p16_s16, vreinterpret_p16_s32, vreinterpret_p16_s64)
	(vreinterpret_p16_f32, vreinterpret_p16_u8, vreinterpret_p16_u16)
	(vreinterpret_p16_u32, vreinterpret_p16_u64, vreinterpret_p16_p8)
	(vreinterpret_p16_p64, vreinterpretq_p16_f64, vreinterpretq_p16_s8)
	(vreinterpretq_p16_s16, vreinterpretq_p16_s32, vreinterpretq_p16_s64)
	(vreinterpretq_p16_f16, vreinterpretq_p16_f32, vreinterpretq_p16_u8)
	(vreinterpretq_p16_u16, vreinterpretq_p16_u32, vreinterpretq_p16_u64)
	(vreinterpretq_p16_p8, vreinterpretq_p16_p64, vreinterpretq_p16_p128)
	(vreinterpret_p64_f16, vreinterpret_p64_f64, vreinterpret_p64_s8)
	(vreinterpret_p64_s16, vreinterpret_p64_s32, vreinterpret_p64_s64)
	(vreinterpret_p64_f32, vreinterpret_p64_u8, vreinterpret_p64_u16)
	(vreinterpret_p64_u32, vreinterpret_p64_u64, vreinterpret_p64_p8)
	(vreinterpret_p64_p16, vreinterpretq_p64_f64, vreinterpretq_p64_s8)
	(vreinterpretq_p64_s16, vreinterpretq_p64_s32, vreinterpretq_p64_s64)
	(vreinterpretq_p64_f16, vreinterpretq_p64_f32, vreinterpretq_p64_p128)
	(vreinterpretq_p64_u8, vreinterpretq_p64_u16, vreinterpretq_p64_p16)
	(vreinterpretq_p64_u32, vreinterpretq_p64_u64, vreinterpretq_p64_p8)
	(vreinterpretq_p128_p8, vreinterpretq_p128_p16, vreinterpretq_p128_f16)
	(vreinterpretq_p128_f32, vreinterpretq_p128_p64, vreinterpretq_p128_s64)
	(vreinterpretq_p128_u64, vreinterpretq_p128_s8, vreinterpretq_p128_s16)
	(vreinterpretq_p128_s32, vreinterpretq_p128_u8, vreinterpretq_p128_u16)
	(vreinterpretq_p128_u32, vreinterpret_f16_f64, vreinterpret_f16_s8)
	(vreinterpret_f16_s16, vreinterpret_f16_s32, vreinterpret_f16_s64)
	(vreinterpret_f16_f32, vreinterpret_f16_u8, vreinterpret_f16_u16)
	(vreinterpret_f16_u32, vreinterpret_f16_u64, vreinterpret_f16_p8)
	(vreinterpret_f16_p16, vreinterpret_f16_p64, vreinterpretq_f16_f64)
	(vreinterpretq_f16_s8, vreinterpretq_f16_s16, vreinterpretq_f16_s32)
	(vreinterpretq_f16_s64, vreinterpretq_f16_f32, vreinterpretq_f16_u8)
	(vreinterpretq_f16_u16, vreinterpretq_f16_u32, vreinterpretq_f16_u64)
	(vreinterpretq_f16_p8, vreinterpretq_f16_p128, vreinterpretq_f16_p16)
	(vreinterpretq_f16_p64, vreinterpret_f32_f16, vreinterpret_f32_f64)
	(vreinterpret_f32_s8, vreinterpret_f32_s16, vreinterpret_f32_s32)
	(vreinterpret_f32_s64, vreinterpret_f32_u8, vreinterpret_f32_u16)
	(vreinterpret_f32_u32, vreinterpret_f32_u64, vreinterpret_f32_p8)
	(vreinterpret_f32_p16, vreinterpret_f32_p64, vreinterpretq_f32_f16)
	(vreinterpretq_f32_f64, vreinterpretq_f32_s8, vreinterpretq_f32_s16)
	(vreinterpretq_f32_s32, vreinterpretq_f32_s64, vreinterpretq_f32_u8)
	(vreinterpretq_f32_u16, vreinterpretq_f32_u32, vreinterpretq_f32_u64)
	(vreinterpretq_f32_p8, vreinterpretq_f32_p16, vreinterpretq_f32_p64)
	(vreinterpretq_f32_p128, vreinterpret_f64_f16, vreinterpret_f64_f32)
	(vreinterpret_f64_p8, vreinterpret_f64_p16, vreinterpret_f64_p64)
	(vreinterpret_f64_s8, vreinterpret_f64_s16, vreinterpret_f64_s32)
	(vreinterpret_f64_s64, vreinterpret_f64_u8, vreinterpret_f64_u16)
	(vreinterpret_f64_u32, vreinterpret_f64_u64, vreinterpretq_f64_f16)
	(vreinterpretq_f64_f32, vreinterpretq_f64_p8, vreinterpretq_f64_p16)
	(vreinterpretq_f64_p64, vreinterpretq_f64_s8, vreinterpretq_f64_s16)
	(vreinterpretq_f64_s32, vreinterpretq_f64_s64, vreinterpretq_f64_u8)
	(vreinterpretq_f64_u16, vreinterpretq_f64_u32, vreinterpretq_f64_u64)
	(vreinterpret_s64_f16, vreinterpret_s64_f64, vreinterpret_s64_s8)
	(vreinterpret_s64_s16, vreinterpret_s64_s32, vreinterpret_s64_f32)
	(vreinterpret_s64_u8, vreinterpret_s64_u16, vreinterpret_s64_u32)
	(vreinterpret_s64_u64, vreinterpret_s64_p8, vreinterpret_s64_p16)
	(vreinterpret_s64_p64, vreinterpretq_s64_f64, vreinterpretq_s64_s8)
	(vreinterpretq_s64_s16, vreinterpretq_s64_s32, vreinterpretq_s64_f16)
	(vreinterpretq_s64_f32, vreinterpretq_s64_u8, vreinterpretq_s64_u16)
	(vreinterpretq_s64_u32, vreinterpretq_s64_u64, vreinterpretq_s64_p8)
	(vreinterpretq_s64_p16, vreinterpretq_s64_p64, vreinterpretq_s64_p128)
	(vreinterpret_u64_f16, vreinterpret_u64_f64, vreinterpret_u64_s8)
	(vreinterpret_u64_s16, vreinterpret_u64_s32, vreinterpret_u64_s64)
	(vreinterpret_u64_f32, vreinterpret_u64_u8, vreinterpret_u64_u16)
	(vreinterpret_u64_u32, vreinterpret_u64_p8, vreinterpret_u64_p16)
	(vreinterpret_u64_p64, vreinterpretq_u64_f64, vreinterpretq_u64_s8)
	(vreinterpretq_u64_s16, vreinterpretq_u64_s32, vreinterpretq_u64_s64)
	(vreinterpretq_u64_f16, vreinterpretq_u64_f32, vreinterpretq_u64_u8)
	(vreinterpretq_u64_u16, vreinterpretq_u64_u32, vreinterpretq_u64_p8)
	(vreinterpretq_u64_p16, vreinterpretq_u64_p64, vreinterpretq_u64_p128)
	(vreinterpret_s8_f16, vreinterpret_s8_f64, vreinterpret_s8_s16)
	(vreinterpret_s8_s32, vreinterpret_s8_s64, vreinterpret_s8_f32)
	(vreinterpret_s8_u8, vreinterpret_s8_u16, vreinterpret_s8_u32)
	(vreinterpret_s8_u64, vreinterpret_s8_p8, vreinterpret_s8_p16)
	(vreinterpret_s8_p64, vreinterpretq_s8_f64, vreinterpretq_s8_s16)
	(vreinterpretq_s8_s32, vreinterpretq_s8_s64, vreinterpretq_s8_f16)
	(vreinterpretq_s8_f32, vreinterpretq_s8_u8, vreinterpretq_s8_u16)
	(vreinterpretq_s8_u32, vreinterpretq_s8_u64, vreinterpretq_s8_p8)
	(vreinterpretq_s8_p16, vreinterpretq_s8_p64, vreinterpretq_s8_p128)
	(vreinterpret_s16_f16, vreinterpret_s16_f64, vreinterpret_s16_s8)
	(vreinterpret_s16_s32, vreinterpret_s16_s64, vreinterpret_s16_f32)
	(vreinterpret_s16_u8, vreinterpret_s16_u16, vreinterpret_s16_u32)
	(vreinterpret_s16_u64, vreinterpret_s16_p8, vreinterpret_s16_p16)
	(vreinterpret_s16_p64, vreinterpretq_s16_f64, vreinterpretq_s16_s8)
	(vreinterpretq_s16_s32, vreinterpretq_s16_s64, vreinterpretq_s16_f16)
	(vreinterpretq_s16_f32, vreinterpretq_s16_u8, vreinterpretq_s16_u16)
	(vreinterpretq_s16_u32, vreinterpretq_s16_u64, vreinterpretq_s16_p8)
	(vreinterpretq_s16_p16, vreinterpretq_s16_p64, vreinterpretq_s16_p128)
	(vreinterpret_s32_f16, vreinterpret_s32_f64, vreinterpret_s32_s8)
	(vreinterpret_s32_s16, vreinterpret_s32_s64, vreinterpret_s32_f32)
	(vreinterpret_s32_u8, vreinterpret_s32_u16, vreinterpret_s32_u32)
	(vreinterpret_s32_u64, vreinterpret_s32_p8, vreinterpret_s32_p16)
	(vreinterpret_s32_p64, vreinterpretq_s32_f64, vreinterpretq_s32_s8)
	(vreinterpretq_s32_s16, vreinterpretq_s32_s64, vreinterpretq_s32_f16)
	(vreinterpretq_s32_f32, vreinterpretq_s32_u8, vreinterpretq_s32_u16)
	(vreinterpretq_s32_u32, vreinterpretq_s32_u64, vreinterpretq_s32_p8)
	(vreinterpretq_s32_p16, vreinterpretq_s32_p64, vreinterpretq_s32_p128)
	(vreinterpret_u8_f16, vreinterpret_u8_f64, vreinterpret_u8_s8)
	(vreinterpret_u8_s16, vreinterpret_u8_s32, vreinterpret_u8_s64)
	(vreinterpret_u8_f32, vreinterpret_u8_u16, vreinterpret_u8_u32)
	(vreinterpret_u8_u64, vreinterpret_u8_p8, vreinterpret_u8_p16)
	(vreinterpret_u8_p64, vreinterpretq_u8_f64, vreinterpretq_u8_s8)
	(vreinterpretq_u8_s16, vreinterpretq_u8_s32, vreinterpretq_u8_s64)
	(vreinterpretq_u8_f16, vreinterpretq_u8_f32, vreinterpretq_u8_u16)
	(vreinterpretq_u8_u32, vreinterpretq_u8_u64, vreinterpretq_u8_p8)
	(vreinterpretq_u8_p16, vreinterpretq_u8_p64, vreinterpretq_u8_p128)
	(vreinterpret_u16_f16, vreinterpret_u16_f64, vreinterpret_u16_s8)
	(vreinterpret_u16_s16, vreinterpret_u16_s32, vreinterpret_u16_s64)
	(vreinterpret_u16_f32, vreinterpret_u16_u8, vreinterpret_u16_u32)
	(vreinterpret_u16_u64, vreinterpret_u16_p8, vreinterpret_u16_p16)
	(vreinterpret_u16_p64, vreinterpretq_u16_f64, vreinterpretq_u16_s8)
	(vreinterpretq_u16_s16, vreinterpretq_u16_s32, vreinterpretq_u16_s64)
	(vreinterpretq_u16_f16, vreinterpretq_u16_f32, vreinterpretq_u16_u8)
	(vreinterpretq_u16_u32, vreinterpretq_u16_u64, vreinterpretq_u16_p8)
	(vreinterpretq_u16_p16, vreinterpretq_u16_p64, vreinterpretq_u16_p128)
	(vreinterpret_u32_f16, vreinterpret_u32_f64, vreinterpret_u32_s8)
	(vreinterpret_u32_s16, vreinterpret_u32_s32, vreinterpret_u32_s64)
	(vreinterpret_u32_f32, vreinterpret_u32_u8, vreinterpret_u32_u16)
	(vreinterpret_u32_u64, vreinterpret_u32_p8, vreinterpret_u32_p16)
	(vreinterpret_u32_p64, vreinterpretq_u32_f64, vreinterpretq_u32_s8)
	(vreinterpretq_u32_s16, vreinterpretq_u32_s32, vreinterpretq_u32_s64)
	(vreinterpretq_u32_f16, vreinterpretq_u32_f32, vreinterpretq_u32_u8)
	(vreinterpretq_u32_u16, vreinterpretq_u32_u64, vreinterpretq_u32_p8)
	(vreinterpretq_u32_p16, vreinterpretq_u32_p64, vreinterpretq_u32_p128)
	(vreinterpretq_f64_p128, vreinterpretq_p128_f64, vreinterpret_bf16_u8)
	(vreinterpret_bf16_u16, vreinterpret_bf16_u32, vreinterpret_bf16_u64)
	(vreinterpret_bf16_s8, vreinterpret_bf16_s16, vreinterpret_bf16_s32)
	(vreinterpret_bf16_s64, vreinterpret_bf16_p8, vreinterpret_bf16_p16)
	(vreinterpret_bf16_p64, vreinterpret_bf16_f16, vreinterpret_bf16_f32)
	(vreinterpret_bf16_f64, vreinterpretq_bf16_u8, vreinterpretq_bf16_u16)
	(vreinterpretq_bf16_u32, vreinterpretq_bf16_u64, vreinterpretq_bf16_s8)
	(vreinterpretq_bf16_s16, vreinterpretq_bf16_s32, vreinterpretq_bf16_s64)
	(vreinterpretq_bf16_p8, vreinterpretq_bf16_p16, vreinterpretq_bf16_p64)
	(vreinterpretq_bf16_p128, vreinterpretq_bf16_f16)
	(vreinterpretq_bf16_f32, vreinterpretq_bf16_f64, vreinterpret_s8_bf16)
	(vreinterpret_s16_bf16, vreinterpret_s32_bf16, vreinterpret_s64_bf16)
	(vreinterpret_u8_bf16, vreinterpret_u16_bf16, vreinterpret_u32_bf16)
	(vreinterpret_u64_bf16, vreinterpret_f16_bf16, vreinterpret_f32_bf16)
	(vreinterpret_f64_bf16, vreinterpret_p8_bf16, vreinterpret_p16_bf16)
	(vreinterpret_p64_bf16, vreinterpretq_s8_bf16, vreinterpretq_s16_bf16)
	(vreinterpretq_s32_bf16, vreinterpretq_s64_bf16, vreinterpretq_u8_bf16)
	(vreinterpretq_u16_bf16, vreinterpretq_u32_bf16, vreinterpretq_u64_bf16)
	(vreinterpretq_f16_bf16, vreinterpretq_f32_bf16, vreinterpretq_f64_bf16)
	(vreinterpretq_p8_bf16, vreinterpretq_p16_bf16, vreinterpretq_p64_bf16)
	(vreinterpretq_p128_bf16): Delete

2022-07-26  Andrew Carlotti  <andrew.carlotti@arm.com>

	* config/aarch64/aarch64-builtins.cc
	(aarch64_simd_builtin_std_type): Rename to...
	(aarch64_int_or_fp_type): ...this, and allow irrelevant qualifiers.
	(aarch64_lookup_simd_builtin_type): Rename to...
	(aarch64_simd_builtin_type): ...this. Add const/pointer
	support, and extract table lookup to...
	(aarch64_lookup_simd_type_in_table): ...this function.
	(aarch64_init_crc32_builtins): Update to use aarch64_simd_builtin_type.
	(aarch64_init_fcmla_laneq_builtins): Ditto.
	(aarch64_init_simd_builtin_functions): Ditto.

2022-07-26  Andrew Carlotti  <andrew.carlotti@arm.com>

	* config/aarch64/aarch64-builtins.cc
	(aarch64_general_gimple_fold_builtin): Add combine.

2022-07-26  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106189
	* gimple-array-bounds.cc (array_bounds_checker::check_mem_ref):
	Divide using offset_ints.

2022-07-26  Lulu Cheng  <chenglulu@loongson.cn>

	* common/config/loongarch/loongarch-common.cc:
	Enable '-fsection-anchors' when O1 and more advanced optimization.
	* config/loongarch/genopts/loongarch.opt.in: Add new option
	'-mexplicit-relocs', and enable by default.
	* config/loongarch/loongarch-protos.h (loongarch_split_move_insn_p):
	Delete function declaration.
	(loongarch_split_move_insn): Delete function declaration.
	(loongarch_split_symbol_type): Add function declaration.
	* config/loongarch/loongarch.cc (enum loongarch_address_type):
	Add new address type 'ADDRESS_LO_SUM'.
	(loongarch_classify_symbolic_expression): New function definitions.
	Classify the base of symbolic expression X, given that X appears in
	context CONTEXT.
	(loongarch_symbol_insns): Add a judgment condition TARGET_EXPLICIT_RELOCS.
	(loongarch_split_symbol_type): New function definitions.
	Determines whether the symbol load should be split into two instructions.
	(loongarch_valid_lo_sum_p): New function definitions.
	Return true if a LO_SUM can address a value of mode MODE when the LO_SUM
	symbol has type SYMBOL_TYPE.
	(loongarch_classify_address): Add handling of 'LO_SUM'.
	(loongarch_address_insns): Add handling of 'ADDRESS_LO_SUM'.
	(loongarch_signed_immediate_p): Sort code.
	(loongarch_12bit_offset_address_p): Return true if address type is ADDRESS_LO_SUM.
	(loongarch_const_insns): Add handling of 'HIGH'.
	(loongarch_split_move_insn_p): Add the static attribute to the function.
	(loongarch_emit_set): New function definitions.
	(loongarch_call_tls_get_addr): Add symbol handling when defining TARGET_EXPLICIT_RELOCS.
	(loongarch_legitimize_tls_address): Add symbol handling when defining the
	TARGET_EXPLICIT_RELOCS macro.
	(loongarch_split_symbol): New function definitions. Split symbol.
	(loongarch_legitimize_address): Add codes see if the address can split into a high part
	and a LO_SUM.
	(loongarch_legitimize_const_move): Add codes split moves of symbolic constants into
	high and low.
	(loongarch_split_move_insn): Delete function definitions.
	(loongarch_output_move): Add support for HIGH and LO_SUM.
	(loongarch_print_operand_reloc): New function definitions.
	Print symbolic operand OP, which is part of a HIGH or LO_SUM in context CONTEXT.
	(loongarch_memmodel_needs_release_fence): Sort code.
	(loongarch_print_operand): Rearrange alphabetical order and add H and L to support HIGH
	and LOW output.
	(loongarch_print_operand_address): Add handling of 'ADDRESS_LO_SUM'.
	(TARGET_MIN_ANCHOR_OFFSET): Define macro to -IMM_REACH/2.
	(TARGET_MAX_ANCHOR_OFFSET): Define macro to IMM_REACH/2-1.
	* config/loongarch/loongarch.md (movti): Delete the template.
	(*movti): Delete the template.
	(movtf): Delete the template.
	(*movtf): Delete the template.
	(*low<mode>): New template of normal symbol low address.
	(@tls_low<mode>): New template of tls symbol low address.
	(@ld_from_got<mode>): New template load address from got table.
	(@ori_l_lo12<mode>): New template.
	* config/loongarch/loongarch.opt: Update from loongarch.opt.in.
	* config/loongarch/predicates.md: Add support for symbol_type HIGH.

2022-07-26  Lulu Cheng  <chenglulu@loongson.cn>

	* config/loongarch/constraints.md (a): Delete the constraint.
	(b): A constant call not local address.
	(h): Delete the constraint.
	(t): Delete the constraint.
	* config/loongarch/loongarch-opts.cc (loongarch_config_target):
	Remove cModel type support other than normal.
	* config/loongarch/loongarch-protos.h (enum loongarch_symbol_type):
	Add new symbol type 'SYMBOL_PCREL', 'SYMBOL_TLS_IE' and 'SYMBOL_TLS_LE'.
	(loongarch_split_symbol): Delete useless function declarations.
	(loongarch_split_symbol_type): Delete useless function declarations.
	* config/loongarch/loongarch.cc (enum loongarch_address_type):
	Delete unnecessary comment information.
	(loongarch_symbol_binds_local_p): Modified the judgment order of label
	and symbol.
	(loongarch_classify_symbol): Return symbol type. If symbol is a label,
	or symbol is a local symbol return SYMBOL_PCREL. If is a tls symbol,
	return SYMBOL_TLS. If is a not local symbol return SYMBOL_GOT_DISP.
	(loongarch_symbolic_constant_p): Add handling of 'SYMBOL_TLS_IE'
	'SYMBOL_TLS_LE' and 'SYMBOL_PCREL'.
	(loongarch_symbol_insns): Add handling of 'SYMBOL_TLS_IE' 'SYMBOL_TLS_LE'
	and 'SYMBOL_PCREL'.
	(loongarch_address_insns): Sort code.
	(loongarch_12bit_offset_address_p): Sort code.
	(loongarch_14bit_shifted_offset_address_p): Sort code.
	(loongarch_call_tls_get_addr): Sort code.
	(loongarch_legitimize_tls_address): Sort code.
	(loongarch_output_move): Remove schema support for cmodel other than normal.
	(loongarch_memmodel_needs_release_fence): Sort code.
	(loongarch_print_operand): Sort code.
	* config/loongarch/loongarch.h (LARCH_U12BIT_OFFSET_P):
	Rename to LARCH_12BIT_OFFSET_P.
	(LARCH_12BIT_OFFSET_P): New macro.
	* config/loongarch/loongarch.md: Reimplement the function call. Remove schema
	support for cmodel other than normal.
	* config/loongarch/predicates.md (is_const_call_weak_symbol): Delete this predicate.
	(is_const_call_plt_symbol): Delete this predicate.
	(is_const_call_global_noplt_symbol): Delete this predicate.
	(is_const_call_no_local_symbol): New predicate, determines whether it is a local
	symbol or label.

2022-07-26  Kewen Lin  <linkw@linux.ibm.com>

	PR target/106091
	* config/rs6000/rs6000-p8swap.cc (replace_swapped_aligned_store): Copy
	REG_EH_REGION when replacing one store insn having it.
	(replace_swapped_aligned_load): Likewise.

2022-07-25  Aldy Hernandez  <aldyh@redhat.com>

	* Makefile.in (OBJS): Add range-op-float.o.
	* range-op.cc (get_float_handler): New.
	(range_op_handler::range_op_handler): Save code and type for
	delayed querying.
	(range_op_handler::oeprator bool): Move from header file, and
	add support for floats.
	(range_op_handler::fold_range): Add support for floats.
	(range_op_handler::op1_range): Same.
	(range_op_handler::op2_range): Same.
	(range_op_handler::lhs_op1_relation): Same.
	(range_op_handler::lhs_op2_relation): Same.
	(range_op_handler::op1_op2_relation): Same.
	* range-op.h (class range_operator_float): New.
	(class floating_op_table): New.
	* value-query.cc (range_query::get_tree_range): Add case for
	REAL_CST.
	* range-op-float.cc: New file.

2022-07-25  Roger Sayle  <roger@nextmovesoftware.com>
	    Uroš Bizjak  <ubizjak@gmail.com>

	PR target/91681
	* config/i386/i386-expand.cc (split_double_concat): A new helper
	function for setting a double word value from two word values.
	* config/i386/i386-protos.h (split_double_concat): Prototype here.
	* config/i386/i386.md (zero_extendditi2): New define_insn_and_split.
	(*add<dwi>3_doubleword_zext): New define_insn_and_split.
	(*sub<dwi>3_doubleword_zext): New define_insn_and_split.
	(*concat<mode><dwi>3_1): New define_insn_and_split replacing
	previous define_split for implementing DST = (HI<<32)|LO as
	pair of move instructions, setting lopart and hipart.
	(*concat<mode><dwi>3_2): Likewise.
	(*concat<mode><dwi>3_3): Likewise, where HI is zero_extended.
	(*concat<mode><dwi>3_4): Likewise, where HI is zero_extended.

2022-07-25  Aldy Hernandez  <aldyh@redhat.com>

	PR middle-end/106432
	* gimple-range.cc (gimple_ranger::range_on_edge): Return false
	when the result range type is unsupported.

2022-07-25  Sebastian Huber  <sebastian.huber@embedded-brains.de>

	* config/rs6000/rtems.h (CPLUSPLUS_CPP_SPEC): Undef.

2022-07-25  Richard Biener  <rguenther@suse.de>

	PR middle-end/106414
	* match.pd (~(x ^ y) -> x == y): Restrict to single bit
	precision types.

2022-07-25  Andre Vieira  <andre.simoesdiasvieira@arm.com>

	* config/aarch64/aarch64.md (rbit<mode>2): Rename this ...
	(@aarch64_rbit<mode>): ... to this and change it in...
	(ffs<mode>2,ctz<mode>2): ... here.
	(@aarch64_rev16<mode>): New.
	* config/aarch64/aarch64-builtins.cc: (aarch64_builtins):
	Define the following enum AARCH64_REV16, AARCH64_REV16L,
	AARCH64_REV16LL, AARCH64_RBIT, AARCH64_RBITL, AARCH64_RBITLL.
	(aarch64_init_data_intrinsics): New.
	(aarch64_general_init_builtins): Add call to
	aarch64_init_data_intrinsics.
	(aarch64_expand_builtin_data_intrinsic): New.
	(aarch64_general_expand_builtin): Add call to
	aarch64_expand_builtin_data_intrinsic.
	* config/aarch64/arm_acle.h (__clz, __clzl, __clzll, __cls, __clsl,
	__clsll, __rbit, __rbitl, __rbitll, __rev, __revl, __revll, __rev16,
	__rev16l, __rev16ll, __ror, __rorl, __rorll, __revsh): New.

2022-07-25  Martin Liska  <mliska@suse.cz>

	* doc/extend.texi: Remove trailing whitespaces.
	* doc/invoke.texi: Likewise.

2022-07-25  Aldy Hernandez  <aldyh@redhat.com>

	* value-range-pretty-print.cc (vrange_printer::visit): New.
	(vrange_printer::print_frange_prop): New.
	* value-range-pretty-print.h (class vrange_printer): Add visit and
	print_frange_prop.
	* value-range-storage.h (vrange_allocator::alloc_vrange): Handle frange.
	(vrange_allocator::alloc_frange): New.
	* value-range.cc (vrange::operator=): Handle frange.
	(vrange::operator==): Same.
	(frange::accept): New.
	(frange::set): New.
	(frange::normalize_kind): New.
	(frange::union_): New.
	(frange::intersect): New.
	(frange::operator=): New.
	(frange::operator==): New.
	(frange::supports_type_p): New.
	(frange::verify_range): New.
	* value-range.h (enum value_range_discriminator): Handle frange.
	(class fp_prop): New.
	(FP_PROP_ACCESSOR): New.
	(class frange_props): New.
	(FRANGE_PROP_ACCESSOR): New.
	(class frange): New.
	(Value_Range::init): Handle frange.
	(Value_Range::operator=): Same.
	(Value_Range::supports_type_p): Same.
	(frange_props::operator==): New.
	(frange_props::union_): New.
	(frange_props::intersect): New
	(frange::frange): New.
	(frange::type): New.
	(frange::set_varying): New.
	(frange::set_undefined): New.

2022-07-25  Peter Bergner  <bergner@linux.ibm.com>
	    Kewen Lin  <linkw@linux.ibm.com>

	PR testsuite/106345
	* config/rs6000/rs6000.h (DRIVER_SELF_SPECS): Adjust -mdejagnu-cpu
	to filter out all -mtune options.

2022-07-24  Aldy Hernandez  <aldyh@redhat.com>

	* value-query.cc (range_query::get_value_range): Add assert.
	* vr-values.cc (vr_values::range_of_expr): Make sure we don't ICE
	on unsupported types in vr_values.
	(simplify_using_ranges::simplify): Same.

2022-07-24  Aldy Hernandez  <aldyh@redhat.com>

	* tree-ssanames.cc (get_nonzero_bits): Return -1 for unsupported
	types.
	* value-query.cc (get_ssa_name_range_info): Remove precision check.

2022-07-24  Aldy Hernandez  <aldyh@redhat.com>

	* value-relation.cc (value_relation::set_relation): Remove assert.
	(path_oracle::register_relation): Exit when trying to register
	same SSA name relations.

2022-07-24  Aldy Hernandez  <aldyh@redhat.com>

	* gimple-range-cache.cc (ranger_cache::edge_range): Convert to vrange.
	(ranger_cache::range_from_dom): Same.
	* tree-ssa-dom.cc
	(dom_opt_dom_walker::set_global_ranges_from_unreachable_edges): Same.

2022-07-24  Roger Sayle  <roger@nextmovesoftware.com>
	    H.J. Lu  <hjl.tools@gmail.com>

	PR target/106303
	PR target/106347
	* config/i386/i386-features.cc (make_vector_copies): Move from
	general_scalar_chain to scalar_chain.
	(convert_reg): Likewise.
	(convert_insn_common): New scalar_chain method split out from
	general_scalar_chain convert_insn.
	(convert_registers): Move from general_scalar_chain to
	scalar_chain.
	(scalar_chain::convert): Call convert_insn_common before calling
	convert_insn.
	(timode_remove_non_convertible_regs): Iterate until there are
	no further changes to the candidates.
	* config/i386/i386-features.h (scalar_chain::hash_map): Move
	from general_scalar_chain.
	(scalar_chain::convert_reg): Likewise.
	(scalar_chain::convert_insn_common): New shared method.
	(scalar_chain::make_vector_copies): Move from general_scalar_chain.
	(scalar_chain::convert_registers): Likewise.  No longer virtual.
	(general_scalar_chain::hash_map): Delete.  Moved to scalar_chain.
	(general_scalar_chain::convert_reg): Likewise.
	(general_scalar_chain::make_vector_copies): Likewise.
	(general_scalar_chain::convert_registers): Delete virtual method.
	(timode_scalar_chain::convert_registers): Likewise.

2022-07-23  Immad Mir  <mirimmad@outlook.com>

	* doc/extend.texi: Add fd_arg, fd_arg_read and fd_arg_write under
	"Common Function Attributes" section.
	* doc/invoke.texi: Add docs to -Wanalyzer-fd-access-mode-mismatch,
	-Wanalyzer-use-after-close, -Wanalyzer-fd-use-without-check that these
	warnings may be emitted through usage of three function attributes used
	for static analysis of file descriptors namely fd_arg, fd_arg_read and
	fd_arg_write.

2022-07-22  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/xtensa.md (*masktrue_const_bitcmpl):
	Add a new insn_and_split pattern, and a few split patterns for
	spacial cases.

2022-07-22  Richard Sandiford  <richard.sandiford@arm.com>

	* graphds.cc (graphds_scc): Fix algorithm attribution.

2022-07-22  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106403
	* tree-ssa-sccvn.cc (vn_reference_lookup_3): Move stored
	value valueization after check for IFN_MASKED_STORE or
	IFN_LEN_STORE.

2022-07-22  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106397
	* tree-ssa-loop-prefetch.cc (emit_mfence_after_loop): Do
	not update SSA form here.
	(mark_nontemporal_stores): Return whether we marked any
	non-temporal stores and inserted mfence.
	(loop_prefetch_arrays): Note when we need to update SSA.
	(tree_ssa_prefetch_arrays): Perform required (LC) SSA update
	at the end of the pass.

2022-07-22  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106387
	* tree-vect-stmts.cc (vectorizable_load): Use make_ssa_name
	if ptr is not an SSA name.

2022-07-22  liuhongt  <hongtao.liu@intel.com>

	PR target/106038
	* config/i386/mmx.md (<code><mode>3): New define_expand, it's
	original "<code><mode>3".
	(*<code><mode>3): New define_insn, it's original
	"<code><mode>3" be extended to handle memory and immediate
	operand with ix86_binary_operator_ok. Also adjust define_split
	after it.
	(mmxinsnmode): New mode attribute.
	(*mov<mode>_imm): Refactor with mmxinsnmode.
	* config/i386/predicates.md
	(register_or_x86_64_const_vector_operand): New predicate.

2022-07-22  Will Schmidt  <will_schmidt@vnet.ibm.com>

	* config/rs6000/altivec.md:
	(vstrir_code_<mode>): Rename to...
	(vstrir_direct_<mode>): ... this.
	(vstrir_p_code_<mode>): Rename to...
	(vstrir_p_direct_<mode>): ... this.
	(vstril_code_<mode>): Rename to...
	(vstril_direct_<mode>): ... this.
	(vstril_p_code_<mode>): Rename to...
	(vstril_p_direct_<mode>): ... this.

2022-07-22  Will Schmidt  <will_schmidt@vnet.ibm.com>

	* config/rs6000/rs6000-c.cc: Update comments.
	(rs6000_target_modify_macros): Remove bu_mask references.
	(rs6000_define_or_undefine_macro): Replace bu_mask reference
	with a rs6000_cpu value check.
	(rs6000_cpu_cpp_builtins): Remove rs6000_builtin_mask_calculate()
	parameter from call to rs6000_target_modify_macros.
	* config/rs6000/rs6000-protos.h (rs6000_target_modify_macros,
	rs6000_target_modify_macros_ptr): Remove parameter from extern
	for the prototype.
	* config/rs6000/rs6000.cc (rs6000_target_modify_macros_ptr): Remove
	parameter from prototype, update calls to this function.
	(rs6000_print_builtin_options): Remove prototype, call and function.
	(rs6000_builtin_mask_calculate): Remove function.
	(rs6000_debug_reg_global): Remove call to rs6000_print_builtin_options.
	(rs6000_option_override_internal): Remove rs6000_builtin_mask var
	and builtin_mask debug output.
	(rs6000_builtin_mask_names): Remove.
	(rs6000_pragma_target_parse): Remove prev_bumask, cur_bumask,
	diff_bumask references; Update calls to rs6000_target_modify_ptr.
	* config/rs6000/rs6000.opt (rs6000_builtin_mask): Remove.

2022-07-21  Sam Feifer  <sfeifer@redhat.com>

	PR tree-optimization/94920
	* match.pd (x >= 0 ? x : 0) + (x <= 0 ? -x : 0): New simplification.
	(x <= 0 ? -x : 0): New simplification.

2022-07-21  Prathamesh Kulkarni  <prathamesh.kulkarni@linaro.org>

	Revert:
	2022-07-19  Prathamesh Kulkarni  <prathamesh.kulkarni@linaro.org>

	* tree-ssa-forwprop.cc (simplify_permutation): Use lhs type
	instead of TREE_TYPE (arg0) as result type in folding VEC_PERM_EXPR.

2022-07-21  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106379
	* match.pd (~(a ^ b) -> a == b): New pattern.

2022-07-21  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106378
	* tree-ssa-dse.cc (initialize_ao_ref_for_dse): Handle
	LEN_STORE, add mode to initialize a may-def and handle
	MASK_STORE that way.
	(dse_optimize_stmt): Query may-defs.  Handle internal
	functions LEN_STORE and MASK_STORE similar to how
	we handle memory builtins but without byte tracking.

2022-07-21  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106365
	* tree-ssa-sccvn.cc (pd_data::rhs_off): New field determining
	the offset to start encoding of RHS from.
	(vn_walk_cb_data::vn_walk_cb_data): Initialize it.
	(vn_walk_cb_data::push_partial_def): Allow the first partial
	definition to be fully providing the def.  Offset RHS
	before encoding if requested.
	(vn_reference_lookup_3): Initialize def_rhs everywhere.
	Add support for .MASK_STORE and .LEN_STORE (partial) definitions.

2022-07-21  Richard Biener  <rguenther@suse.de>

	* tree-ssa-alias.cc (ref_maybe_used_by_call_p_1): Special-case
	store internal functions and IFN_MASK_LOAD, IFN_LEN_LOAD
	and IFN_MASK_LOAD_LANES.
	(call_may_clobber_ref_p_1): Special-case IFN_MASK_STORE,
	IFN_LEN_STORE and IFN_MASK_STORE_LANES.

2022-07-20  Alexander Monakov  <amonakov@ispras.ru>

	PR rtl-optimization/101347
	* builtins.cc (expand_builtin) [BUILT_IN_SETJMP_SETUP]: Move
	population of nonlocal_goto_handler_labels from here ...
	(expand_builtin) [BUILT_IN_SETJMP_RECEIVER]: ... to here.
	* rtlanal.cc (remove_node_from_insn_list): Verify that a
	duplicate is not present in the remainder of the list.

2022-07-20  Alexander Monakov  <amonakov@ispras.ru>

	* rtl.h (remove_node_from_expr_list): Remove declaration.
	* rtlanal.cc (remove_node_from_expr_list): Remove (no uses).

2022-07-20  Richard Biener  <rguenther@suse.de>

	* tree-vect-data-refs.cc (bump_vector_ptr): Return an
	invariant updated address when the input was invariant.

2022-07-20  liuhongt  <hongtao.liu@intel.com>

	* passes.def: (Split pass_cse_sincos to pass_expand_powcabs
	and pass_cse_sincos, and move pass_cse_sincos after vectorizer).
	* timevar.def (TV_TREE_POWCABS): New timevar.
	* tree-pass.h (make_pass_expand_powcabs): Split from pass_cse_sincos.
	* tree-ssa-math-opts.cc (gimple_expand_builtin_cabs): Ditto.
	(class pass_expand_powcabs): Ditto.
	(pass_expand_powcabs::execute): Ditto.
	(make_pass_expand_powcabs): Ditto.
	(pass_cse_sincos::execute): Remove pow/cabs expand part.
	(make_pass_cse_sincos): Ditto.

2022-07-20  Richard Biener  <richard.guenther@gmail.com>
	    Hongtao Liu  <hongtao.liu@intel.com>

	PR tree-optimization/106010
	* tree-complex.cc (init_dont_simulate_again): Lower complex
	type move.
	(expand_complex_move): Also expand COMPLEX_CST for rhs.

2022-07-19  Andrew MacLeod  <amacleod@redhat.com>

	* gimple-range-cache.cc (ranger_cache::range_from_dom): Check
	for incoming ranges on join nodes and add to worklist.

2022-07-19  Andrew MacLeod  <amacleod@redhat.com>

	* gimple-range-cache.cc (ranger_cache::resolve_dom): New.
	(ranger_cache::range_from_dom): Put all nodes to be calculated
	in the worklist and resolve after the dom walk.
	* gimple-range-cache.h (resolve_dom): New prototype.

2022-07-19  Alexander Monakov  <amonakov@ispras.ru>

	* tree-cfg.cc (gimple_verify_flow_info): Check placement of
	returns_twice calls.

2022-07-19  Alexander Monakov  <amonakov@ispras.ru>

	* cfghooks.cc (duplicate_block): Expand comment.
	* tree-cfg.cc (gimple_can_duplicate_bb_p): Reject blocks with
	calls that may return twice.

2022-07-19  Alexander Monakov  <amonakov@ispras.ru>

	* tree-ssa-sink.cc (select_best_block): Punt if selected block
	has incoming abnormal edges.

2022-07-19  Martin Liska  <mliska@suse.cz>

	* doc/extend.texi: Remove trailing :.

2022-07-19  Prathamesh Kulkarni  <prathamesh.kulkarni@linaro.org>

	* tree-ssa-forwprop.cc (simplify_permutation): Use lhs type
	instead of TREE_TYPE (arg0) as result type in folding VEC_PERM_EXPR.

2022-07-19  Richard Biener  <rguenther@suse.de>

	PR middle-end/106331
	* builtins.cc (get_memory_rtx): Compute alignment from
	the original address and set MEM_OFFSET to unknown when
	we create a MEM_EXPR from the base object of the address.

2022-07-19  Richard Biener  <rguenther@suse.de>

	PR lto/106334
	* dwarf2out.cc (dwarf2out_register_external_die): Allow
	map entry re-use during WPA.

2022-07-19  Roger Sayle  <roger@nextmovesoftware.com>
	    Richard Biener  <rguenther@suse.de>

	PR c/106264
	* builtins.cc (fold_builtin_frexp): Call suppress_warning on
	COMPOUND_EXPR to silence spurious warning if result isn't used.
	(fold_builtin_modf): Likewise.
	(do_mpfr_remquo): Likewise.

2022-07-19  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/xtensa.cc (xtensa_rtx_costs):
	Change the relative cost of '(set (reg) (const_int N))' where
	N fits into signed 12-bit from 4 to 0 if optimizing for size.
	And use the appropriate macro instead of the bare number 4.

2022-07-18  Andrew MacLeod  <amacleod@redhat.com>

	PR tree-optimization/106280
	* value-relation.cc (dom_oracle::register_relation): Register
	transitives only when it is possible for there to be one.
	(dom_oracle::set_one_relation): Return NULL if this is an
	existing relation.

2022-07-18  Maciej W. Rozycki  <macro@embecosm.com>

	* doc/invoke.texi (RISC-V Options): Add index references for
	`mrelax' and `mriscv-attribute'.

2022-07-18  Maciej W. Rozycki  <macro@embecosm.com>

	* doc/invoke.texi (Option Summary): Add missing second space
	around `-mstack-protector-guard-reg='.

2022-07-18  Maciej W. Rozycki  <macro@embecosm.com>

	* doc/invoke.texi (Option Summary): Fix `-mno-riscv-attribute'.
	(RISC-V Options): Likewise, and `-mriscv-attribute'.

2022-07-18  Claudiu Zissulescu  <claziss@gmail.com>

	* config/arc/arc-arch.h (arc_tune_attr): Add
	ARC_TUNE_ARCHS4X_REL31A variant.
	* config/arc/arc.cc (arc_override_options): Tune options for
	release 310a.
	(arc_sched_issue_rate): Use correct enum.
	(arc600_corereg_hazard): Textual change.
	(arc_hazard): Add release 310a tunning.
	* config/arc/arc.md (tune): Update and take into consideration new
	tune option.
	(tune_dspmpy): Likewise.
	(tune_store): New attribute.
	* config/arc/arc.opt (mtune): New tune option.
	* config/arc/arcHS4x.md (hs4x_brcc0, hs4x_brcc1): New cpu units.
	(hs4x_brcc_op): New instruction rezervation.
	(hs4x_data_store_1_op): Likewise.
	* config/arc/arc-cpus.def (hs4x_rel31): New cpu variant.
	* config/arc/arc-tables.opt: Regenerate.
	* config/arc/t-multilib: Likewise.
	* doc/invoke.texi (ARC): Update mcpu and tune sections.

2022-07-18  Richard Biener  <rguenther@suse.de>

	* tree-loop-distribution.cc (loop_distribution::distribute_loop):
	When computing cost-based merging do not disregard builtin
	classified partitions in some cases.

2022-07-18  Richard Sandiford  <richard.sandiford@arm.com>

	PR target/106253
	* config/arm/arm-builtins.cc (arm_builtin_vectorized_function):
	Delete.
	* config/arm/arm-protos.h (arm_builtin_vectorized_function): Delete.
	* config/arm/arm.cc (TARGET_VECTORIZE_BUILTIN_VECTORIZED_FUNCTION):
	Delete.
	* config/arm/arm_neon_builtins.def (copysignf): Delete.
	* config/arm/iterators.md (nvrint_pattern): New attribute.
	* config/arm/neon.md (<NEON_VRINT:nvrint_pattern><VCVTF:mode>2):
	New pattern.
	(l<NEON_VCVT:nvrint_pattern><su_optab><VCVTF:mode><v_cmp_result>2):
	Likewise.
	(neon_copysignf<mode>): Rename to...
	(copysign<mode>3): ...this.

2022-07-18  Claudiu Zissulescu  <claziss@gmail.com>

	* config/arc/arc.cc (arc_expand_epilogue): Adjust the frame
	pointer first when in interrupts.

2022-07-18  Richard Biener  <rguenther@suse.de>

	* tree-loop-distribution.cc (copy_loop_before): Add
	the ability to replace the original LC PHI defs.
	(generate_loops_for_partition): Pass through a flag
	whether to redirect original LC PHI defs.
	(generate_code_for_partition): Likewise.
	(loop_distribution::distribute_loop): Compute the partition
	that should provide the LC PHI defs for common reductions
	and pass that down.

2022-07-18  Richard Ball  <richard.ball@arm.com>

	* config/aarch64/aarch64.cc (aarch64_evpc_trn): Use std:swap.
	(aarch64_evpc_uzp): Likewise.
	(aarch64_evpc_zip): Likewise.

2022-07-18  Roger Sayle  <roger@nextmovesoftware.com>

	PR target/106231
	* config/i386/i386.md (*ctzsidi2_<s>ext): New insn_and_split
	to recognize any_extend:DI of ctz:SI which is implicitly extended.
	(*ctzsidi2_<s>ext_falsedep): New define_insn to model a DImode
	extended ctz:SI that has preceding xor to break false dependency.

2022-07-18  Roger Sayle  <roger@nextmovesoftware.com>

	* config/i386/predicates.md (x86_64_const_vector_operand):
	Check the operand's mode matches the specified mode argument.

2022-07-18  Roger Sayle  <roger@nextmovesoftware.com>

	* config/i386/sse.md (kunpckhi): Add UNSPEC_MASKOP unspec.
	(kunpcksi): Likewise, add UNSPEC_MASKOP unspec.
	(kunpckdi): Likewise, add UNSPEC_MASKOP unspec.
	(vec_pack_trunc_qi): Update to specify the now required
	UNSPEC_MASKOP unspec.
	(vec_pack_trunc_<mode>): Likewise.

2022-07-16  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/xtensa.md
	(*masktrue_const_pow2_minus_one, *masktrue_const_negative_pow2,
	*masktrue_const_shifted_mask): If the immediate for bitwise AND is
	represented as '-(1 << N)', decrease the lower bound of N from 12
	to 1.  And the other immediate for conditional branch is now no
	longer limited to zero, but also one of some positive integers.
	Finally, remove the checks of some conditions, because the comparison
	expressions that don't satisfy such checks are determined as
	compile-time constants and thus will be optimized away before
	RTL expansion.

2022-07-16  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/xtensa.cc (xtensa_emit_constantsynth): Remove.
	(xtensa_constantsynth_2insn): Change to try all three synthetic
	methods and to use the one that fits the immediate value of
	the seed into a Narrow Move Immediate instruction "MOVI.N"
	when the Code Density Option is configured.

2022-07-15  H.J. Lu  <hjl.tools@gmail.com>

	PR target/85620
	* config/i386/i386.cc (ix86_function_ok_for_sibcall): Return
	false if callee has indirect_return attribute and caller
	doesn't.

2022-07-15  Roger Sayle  <roger@nextmovesoftware.com>

	PR target/106273
	* config/i386/i386.md (*andn<dwi>3_doubleword_bmi): Update the
	constraints to reflect the output is earlyclobber, unless it is
	the same register (pair) as one of the operands.

2022-07-15  David Malcolm  <dmalcolm@redhat.com>

	* doc/invoke.texi (Static Analyzer Options): Add the new fd
	warnings to the initial gccoptlist, and to the list of those
	disabled by -fanalyzer-checker=taint.

2022-07-15  Andrew Carlotti  <andrew.carlotti@arm.com>

	* config/aarch64/aarch64-builtins.cc
	(enum aarch64_type_qualifiers): Remove qualifier_internal.
	(aarch64_init_simd_builtin_functions): Remove qualifier_internal check.

2022-07-15  Andrew Carlotti  <andrew.carlotti@arm.com>

	* config/aarch64/aarch64-builtins.cc
	(v1di_UP): Add V1DI mode to _UP macros.
	* config/aarch64/aarch64-modes.def (VECTOR_MODE): Add V1DI mode.
	* config/aarch64/aarch64-simd-builtin-types.def: Use V1DI mode.
	* config/aarch64/aarch64-simd.md
	(vec_extractv2dfv1df): Replace with...
	(vec_extract<mode><V1half>): ...this.
	* config/aarch64/aarch64.cc
	(aarch64_classify_vector_mode): Add V1DI mode.
	* config/aarch64/iterators.md
	(VQ_2E, V1HALF, V1half): New.
	(nunits): Add V1DI mode.

2022-07-15  Roger Sayle  <roger@nextmovesoftware.com>

	PR target/106278
	* config/i386/i386-features.cc (general_scalar_chain::convert_insn):
	Fix indentation whitespace.
	(timode_scalar_chain::fix_debug_reg_uses): Likewise.
	(timode_scalar_chain::convert_insn): Delete dead code.
	Update TImode REG_EQUAL_NOTE even if the SET_DEST is already V1TI.
	Fix indentation whitespace.
	(convertible_comparison_p): Likewise.
	(timode_scalar_to_vector_candidate_p): Likewise.

2022-07-15  Aldy Hernandez  <aldyh@redhat.com>

	* gimple-pretty-print.cc (dump_ssaname_info): Use pp_vrange.

2022-07-15  Aldy Hernandez  <aldyh@redhat.com>

	* Makefile.in (OBJS): Add value-range-pretty-print.o.
	* pretty-print.h (pp_vrange): New.
	* value-range.cc (vrange::dump): Call pp version.
	(unsupported_range::dump): Move to its own file.
	(dump_bound_with_infinite_markers): Same.
	(irange::dump): Same.
	(irange::dump_bitmasks): Same.
	(vrange::debug): Remove.
	* value-range.h: Remove virtual designation for dump methods.
	Remove dump_bitmasks method.
	* value-range-pretty-print.cc: New file.
	* value-range-pretty-print.h: New file.

2022-07-15  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.cc (irange::accept): New.
	(unsupported_range::accept): New.
	* value-range.h (class vrange_visitor): New.
	(class vrange): Add accept method.
	(class unsupported_range): Same.
	(class Value_Range): Same.

2022-07-15  Jonathan Wakely  <jwakely@redhat.com>

	* diagnostic-format-json.cc (json_from_location_range): Adjust
	to new label_text API.
	* diagnostic-format-sarif.cc (sarif_builder::make_location_object):
	Likewise.
	* diagnostic-show-locus.cc (struct pod_label_text): Likewise.
	(layout::print_any_labels): Likewise.
	* tree-diagnostic-path.cc (class path_label): Likewise.
	(struct event_range): Likewise.
	(default_tree_diagnostic_path_printer): Likewise.
	(default_tree_make_json_for_path): Likewise.

2022-07-15  konglin1  <lingling.kong@intel.com>

	PR target/106113
	* config/i386/i386-builtin.def (BDESC): Fix [u]comi{ss,sd}
	comparison due to intrinsics changed over time.
	* config/i386/i386-expand.cc (ix86_ssecom_setcc):
	Add unordered check and mode for sse comi codegen.
	(ix86_expand_sse_comi): Add unordered check and check a different
	CCmode.
	(ix86_expand_sse_comi_round):Extract unordered check and mode part
	in ix86_ssecom_setcc.

2022-07-15  Prathamesh Kulkarni  <prathamesh.kulkarni@linaro.org>

	* config/aarch64/aarch64.cc (aarch64_vectorize_vec_perm_const): Use
	op_mode instead of vmode in calls to force_reg for op0 and op1.

2022-07-14  H.J. Lu  <hjl.tools@gmail.com>

	PR tree-optimization/103798
	* tree-ssa-forwprop.cc: Include "tree-ssa-strlen.h".
	(simplify_builtin_call): Inline memchr with constant strings of
	no more than the bytes of a word.
	* tree-ssa-strlen.cc (use_in_zero_equality): Make it global.
	* tree-ssa-strlen.h (use_in_zero_equality): New.

2022-07-14  Eric Botcazou  <ebotcazou@adacore.com>

	* gimplify.cc (lookup_tmp_var): Add NOT_GIMPLE_REG boolean parameter
	and set DECL_NOT_GIMPLE_REG_P on the variable according to it.
	(internal_get_tmp_var): Add NOT_GIMPLE_REG boolean parameter and
	pass it in the call to lookup_tmp_var.
	(get_formal_tmp_var): Pass false in the call to lookup_tmp_var.
	(get_initialized_tmp_var): Likewise.
	(prepare_gimple_addressable): Call internal_get_tmp_var instead of
	get_initialized_tmp_var with NOT_GIMPLE_REG set to true.

2022-07-14  Martin Liska  <mliska@suse.cz>

	* doc/gimple.texi: Close properly a deftypefn.

2022-07-14  Martin Liska  <mliska@suse.cz>

	* doc/gimple.texi: Close properly a deftypefn.

2022-07-14  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/xtensa.md:
	In FP constant synthesis split pattern, subcontract to
	avoid_constant_pool_reference() as in the case of integer,
	because it can handle well too.  And cast to int32_t before
	calling xtensa_constantsynth() in order to ignore upper 32-bit.

2022-07-13  Aldy Hernandez  <aldyh@redhat.com>

	* range-op.cc (operator_lt::fold_range): Use nonzero bits.

2022-07-13  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.cc (irange::copy_to_legacy): Set nonzero mask.
	(irange::legacy_intersect): Clear nonzero mask.
	(irange::legacy_union): Same.
	(irange::invert): Same.

2022-07-13  Richard Biener  <rguenther@suse.de>

	* tree-ssa-dom.h (record_temporary_equivalences): Remove.
	* tree-ssa-dom.cc (dom_jt_state::m_blocks_on_stack): New.
	(dom_jt_state::get_blocks_on_stack): Likewise.
	(dom_opt_dom_walker::dom_opt_dom_walker): Take dom_jt_state.
	(back_propagate_equivalences): Remove dominator bitmap
	compute and instead use passed in m_blocks_on_stack.
	(record_temporary_equivalences): Likewise.
	(record_equivalences_from_incoming_edge): Likewise.
	(dom_opt_dom_walker::before_dom_children): Maintain and
	pass down blocks on stack.
	(dom_opt_dom_walker::after_dom_children): Likewise.

2022-07-13  Andrew Carlotti  <andrew.carlotti@arm.com>

	* config/aarch64/aarch64-builtins.cc
	(aarch64_general_gimple_fold_builtin): Add fixup for invalid GIMPLE.

2022-07-13  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106249
	* tree-ssa-loop-manip.cc (tree_transform_and_unroll_loop):
	Only verify LC SSA of the new_loop if we created it.
	Use TODO_update_ssa_nophi for the SSA update after versioning
	the loop.

2022-07-12  Aldy Hernandez  <aldyh@redhat.com>

	* range-op.cc (unsigned_singleton_p): Remove.
	(operator_bitwise_and::remove_impossible_ranges): Remove.
	(operator_bitwise_and::fold_range): Set nonzero bits.  *
	* value-range.cc (irange::get_nonzero_bits): Remove
	legacy_mode_p assert.
	(irange::dump_bitmasks): Remove legacy_mode_p check.

2022-07-12  Richard Sandiford  <richard.sandiford@arm.com>

	PR target/106253
	* predict.h (insn_optimization_type): Declare.
	* predict.cc (insn_optimization_type): New function.
	* internal-fn.def (IFN_ICEIL, IFN_IFLOOR, IFN_IRINT, IFN_IROUND)
	(IFN_LCEIL, IFN_LFLOOR, IFN_LRINT, IFN_LROUND, IFN_LLCEIL)
	(IFN_LLFLOOR, IFN_LLRINT, IFN_LLROUND): New internal functions.
	* internal-fn.cc (unary_convert_direct): New macro.
	(expand_convert_optab_fn): New function.
	(expand_unary_convert_optab_fn): New macro.
	(direct_unary_convert_optab_supported_p): Likewise.
	* optabs.cc (expand_sfix_optab): Pass insn_optimization_type to
	convert_optab_handler.
	* config/aarch64/aarch64-protos.h
	(aarch64_builtin_vectorized_function): Delete.
	* config/aarch64/aarch64-builtins.cc
	(aarch64_builtin_vectorized_function): Delete.
	* config/aarch64/aarch64.cc
	(TARGET_VECTORIZE_BUILTIN_VECTORIZED_FUNCTION): Delete.
	* config/i386/i386.cc (ix86_optab_supported_p): Handle lround_optab.
	* config/i386/i386.md (lround<X87MODEF:mode><SWI248x:mode>2): Remove
	optimize_insn_for_size_p test.

2022-07-12  Richard Biener  <rguenther@suse.de>

	* tree-vect-loop-manip.cc (create_lcssa_for_virtual_phi):
	Remove.
	(vect_do_peeling): Do not call it, adjust comment.

2022-07-12  Richard Sandiford  <richard.sandiford@arm.com>

	* config/aarch64/aarch64-builtins.cc
	(aarch64_builtin_vectorized_function): Remove handling of
	floor, ceil, trunc, round, nearbyint, sqrt, clz and ctz.

2022-07-11  Andrew MacLeod  <amacleod@redhat.com>

	PR tree-optimization/106234
	* gimple-range-cache.cc (ranger_cache::range_from_dom): Check dominator
	cache value before recursively resolving it.

2022-07-11  Roger Sayle  <roger@nextmovesoftware.com>

	* config/i386/i386-features.h (scalar_chain): Add fields
	insns_conv, n_sse_to_integer and n_integer_to_sse to this
	parent class, moved from general_scalar_chain.
	(scalar_chain::convert_compare): Protected method moved
	from general_scalar_chain.
	(mark_dual_mode_def): Make protected, not private virtual.
	(scalar_chain:convert_op): New private virtual method.
	(general_scalar_chain::general_scalar_chain): Simplify constructor.
	(general_scalar_chain::~general_scalar_chain): Delete destructor.
	(general_scalar_chain): Move insns_conv, n_sse_to_integer and
	n_integer_to_sse fields to parent class, scalar_chain.
	(general_scalar_chain::mark_dual_mode_def): Delete prototype.
	(general_scalar_chain::convert_compare): Delete prototype.
	(timode_scalar_chain::compute_convert_gain): Remove simplistic
	implementation, convert to a method prototype.
	(timode_scalar_chain::mark_dual_mode_def): Delete prototype.
	(timode_scalar_chain::convert_op): Prototype new virtual method.
	* config/i386/i386-features.cc (scalar_chain::scalar_chain):
	Allocate insns_conv and initialize n_sse_to_integer and
	n_integer_to_sse fields in constructor.
	(scalar_chain::scalar_chain): Free insns_conv in destructor.
	(general_scalar_chain::general_scalar_chain): Delete
	constructor, now defined in the class declaration.
	(general_scalar_chain::~general_scalar_chain): Delete destructor.
	(scalar_chain::mark_dual_mode_def): Renamed from
	general_scalar_chain::mark_dual_mode_def.
	(timode_scalar_chain::mark_dual_mode_def): Delete.
	(scalar_chain::convert_compare): Renamed from
	general_scalar_chain::convert_compare.
	(timode_scalar_chain::compute_convert_gain): New method to
	determine the gain from converting a TImode chain to V1TImode.
	(timode_scalar_chain::convert_op): New method to convert an
	operand from TImode to V1TImode.
	(timode_scalar_chain::convert_insn) <case REG>: Only PUT_MODE
	on REG_EQUAL notes that were originally TImode (not CONST_INT).
	Handle AND, ANDN, XOR, IOR, NOT and COMPARE.
	(timode_mem_p): Helper predicate to check where operand is
	memory reference with sufficient alignment for TImode STV.
	(timode_scalar_to_vector_candidate_p): Use convertible_comparison_p
	to check whether COMPARE is convertible.  Handle SET_DESTs that
	that are REG_P or MEM_P and SET_SRCs that are REG, CONST_INT,
	CONST_WIDE_INT, MEM, AND, ANDN, IOR, XOR or NOT.

2022-07-11  Richard Sandiford  <richard.sandiford@arm.com>

	PR tree-optimization/106250
	* tree-vect-loop.cc (vectorizable_reduction): Reinstate final
	argument to directly_supported_p.

2022-07-11  Richard Biener  <rguenther@suse.de>

	* tree-into-ssa.cc (update_ssa): Do not forcefully
	re-compute dominance fast queries for TODO_update_ssa_no_phi.

2022-07-11  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106228
	* tree-vect-data-refs.cc (vect_setup_realignment): Adjust
	VUSE compute for the non-loop case.

2022-07-11  Richard Biener  <rguenther@suse.de>

	* tree-into-ssa.cc (rewrite_mode::REWRITE_UPDATE_REGION): New.
	(rewrite_update_dom_walker::rewrite_update_dom_walker): Update.
	(rewrite_update_dom_walker::m_in_region_flag): New.
	(rewrite_update_dom_walker::before_dom_children): If the region
	to update is marked, STOP at exits.
	(rewrite_blocks): For REWRITE_UPDATE_REGION mark the region
	to be updated.
	(dump_update_ssa): Use bitmap_empty_p.
	(update_ssa): Likewise.  Use REWRITE_UPDATE_REGION when
	TODO_update_ssa_no_phi.
	* tree-cfgcleanup.cc (cleanup_tree_cfg_noloop): Account
	pending update_ssa to the caller.

2022-07-11  Richard Biener  <rguenthert@suse.de>

	PR target/105459
	* config/i386/i386-options.cc (ix86_set_current_function):
	Rebuild the target optimization node whenever necessary,
	not only when the optimization node didn't change.

2022-07-11  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106228
	* tree-vect-data-refs.cc (vect_setup_realignment): Properly
	set a VUSE operand on the emitted load.

2022-07-11  Aldy Hernandez  <aldyh@redhat.com>

	* gimple-range.cc (gimple_ranger::export_global_ranges): Remove
	verification against legacy value_range.
	(gimple_ranger::register_inferred_ranges): Same.
	(gimple_ranger::export_global_ranges): Rename update_global_range
	to set_range_info.
	* tree-core.h (struct range_info_def): Remove.
	(struct irange_storage_slot): New.
	(struct tree_base): Remove SSA_NAME_ANTI_RANGE_P documentation.
	(struct tree_ssa_name): Add vrange_storage support.
	* tree-ssanames.cc (range_info_p): New.
	(range_info_fits_p): New.
	(range_info_alloc): New.
	(range_info_free): New.
	(range_info_get_range): New.
	(range_info_set_range): New.
	(set_range_info_raw): Remove.
	(set_range_info): Adjust to use vrange_storage.
	(set_nonzero_bits): Same.
	(get_nonzero_bits): Same.
	(duplicate_ssa_name_range_info): Remove overload taking
	value_range_kind.
	Rewrite tree overload to use vrange_storage.
	(duplicate_ssa_name_fn): Adjust to use vrange_storage.
	* tree-ssanames.h (struct range_info_def): Remove.
	(set_range_info): Adjust prototype to take vrange.
	* tree-vrp.cc (vrp_asserts::remove_range_assertions): Call
	duplicate_ssa_name_range_info.
	* tree.h (SSA_NAME_ANTI_RANGE_P): Remove.
	(SSA_NAME_RANGE_TYPE): Remove.
	* value-query.cc (get_ssa_name_range_info): Adjust to use
	vrange_storage.
	(update_global_range): Remove.
	(get_range_global): Remove as_a<irange>.
	* value-query.h (update_global_range): Remove.
	* tree-ssa-dom.cc (set_global_ranges_from_unreachable_edges):
	Rename update_global_range to set_range_info.
	* value-range-storage.cc (vrange_storage::alloc_slot): Remove
	gcc_unreachable.

2022-07-10  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.cc (irange::operator=): Call verify_range.
	(irange::irange_set): Normalize kind after everything else has
	been set.
	(irange::irange_set_anti_range): Same.
	(irange::set): Same.
	(irange::verify_range): Disallow nonzero masks for VARYING.
	(irange::irange_union): Call verify_range.
	Handle nonzero masks better.
	(irange::irange_intersect): Same.
	(irange::set_nonzero_bits): Calculate mask if either range has an
	explicit mask.
	(irange::intersect_nonzero_bits): Same.
	(irange::union_nonzero_bits): Same.
	(range_tests_nonzero_bits): New.
	(range_tests): Call range_tests_nonzero_bits.
	* value-range.h (class irange): Remove set_nonzero_bits method
	with trees.
	(irange::varying_compatible_p): Set nonzero mask.

2022-07-10  Xi Ruoyao  <xry111@xry111.site>

	* config/loongarch/loongarch.md (<any_div>di3_fake): Describe
	the sign-extend of result in the RTL template.
	(<any_div><mode>3): Adjust for <any_div>di3_fake change.

2022-07-10  Xi Ruoyao  <xry111@xry111.site>

	* config/loongarch/loongarch.cc (loongarch_check_zero_div_p):
	Remove static, for use in the machine description file.
	* config/loongarch/loongarch-protos.h:
	(loongarch_check_zero_div_p): Add prototype.
	* config/loongarch/loongarch.md (enabled): New attr.
	(*<optab><mode>3): Add (=r,r,r) and (=&r,0,r) alternatives for
	idiv.  Conditionally enable the alternatives using
	loongarch_check_zero_div_p.
	(<optab>di3_fake): Likewise.

2022-07-10  Xi Ruoyao  <xry111@xry111.site>

	* config/loongarch/loongarch.md (mulsidi3_64bit): Use mulw.d.w
	instead of mul.d.

2022-07-09  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.cc (irange::irange_single_pair_union): Set
	VR_VARYING when appropriate.

2022-07-09  Vit Kabele  <vit.kabele@sysgo.com>

	* stor-layout.cc (finalize_record_size): Extend warning message.

2022-07-09  Sam Feifer  <sfeifer@redhat.com>

	PR tree-optimization/98304
	* match.pd (n - (((n > C1) ? n : C1) & -C2)): New simplification.

2022-07-09  Jeff Law  <jeffreyalaw@gmail.com>

	* expr.cc (store_expr): Identify trailing NULs in a STRING_CST
	initializer and use clear_storage rather than copying the
	NULs to the destination array.

2022-07-09  Roger Sayle  <roger@nextmovesoftware.com>

	* config/i386/i386.md (define_peephole2): Use match_operand of
	flags_reg_operand to capture and preserve the mode of FLAGS_REG.
	(define_peephole2): Likewise.
	(define_peephole2): Likewise...

2022-07-09  Roger Sayle  <roger@nextmovesoftware.com>

	* config/i386/i386-features.cc (convert_compare): Add support
	for *testdi_not_doubleword pattern, "(compare (and (not ...)))"
	by generating a pandn followed by ptest.
	(convertible_comparison_p): Recognize both *cmpdi_doubleword and
	recent *testdi_not_doubleword comparison patterns.

2022-07-09  Tamar Christina  <tamar.christina@arm.com>

	* config/s390/s390.cc (s390_expand_atomic): Pass false to store_bit_field to
	indicate that the value is not undefined.

2022-07-09  Andrew Pinski  <apinski@marvell.com>

	PR tree-optimization/106087
	* tree-ssa-dce.cc (simple_dce_from_worklist): Check
	to make sure the statement is only defining one operand.

2022-07-08  Lewis Hyatt  <lhyatt@gmail.com>

	PR preprocessor/91733
	* input.cc (find_end_of_line): New helper function.
	(file_cache_slot::get_next_line): Recognize \r as a line ending.
	* diagnostic-show-locus.cc (test_escaping_bytes_1): Adapt selftest
	since \r will now be interpreted as a line-ending.

2022-07-08  Martin Liska  <mliska@suse.cz>

	PR sanitizer/106132
	* opts.cc (finish_options): Use 2 calls to
	report_conflicting_sanitizer_options.

2022-07-08  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106226
	* tree-vect-loop-manip.cc (vect_do_peeling): Assert that
	no SSA update is needed.  Move virtual SSA update ...
	* tree-vectorizer.cc (pass_vectorize::execute): ... here,
	via forced virtual renaming when TODO_update_ssa_only_virtuals
	is queued.
	(vect_transform_loops): Return TODO_update_ssa_only_virtuals
	when virtual SSA update is required.
	(try_vectorize_loop_1): Adjust.
	* tree-vect-stmts.cc (vectorizable_simd_clone_call): Allow
	virtual renaming if the ABI forces an aggregate return
	but the original call did not have a virtual definition.

2022-07-08  Martin Liska  <mliska@suse.cz>

	* toplev.cc (init_asm_output): Do not init asm_out_file.

2022-07-08  Tamar Christina  <tamar.christina@arm.com>

	PR tree-optimization/106063
	* match.pd: Do not apply pattern after veclower is not supported.

2022-07-08  Thomas Schwinge  <thomas@codesourcery.com>

	* lto-cgraph.cc (input_offload_tables) <LTO_symtab_edge>: Correct
	'fn2' computation.

2022-07-08  Tamar Christina  <tamar.christina@arm.com>

	* expmed.cc (store_bit_field_1): Add parameter that indicates if value is
	still undefined and if so emit a subreg move instead.
	(store_integral_bit_field): Likewise.
	(store_bit_field): Likewise.
	* expr.h (write_complex_part): Likewise.
	* expmed.h (store_bit_field): Add new parameter.
	* builtins.cc (expand_ifn_atomic_compare_exchange_into_call): Use new
	parameter.
	(expand_ifn_atomic_compare_exchange): Likewise.
	* calls.cc (store_unaligned_arguments_into_pseudos): Likewise.
	* emit-rtl.cc (validate_subreg): Likewise.
	* expr.cc (emit_group_store): Likewise.
	(copy_blkmode_from_reg): Likewise.
	(copy_blkmode_to_reg): Likewise.
	(clear_storage_hints): Likewise.
	(write_complex_part):  Likewise.
	(emit_move_complex_parts): Likewise.
	(expand_assignment): Likewise.
	(store_expr): Likewise.
	(store_field): Likewise.
	(expand_expr_real_2): Likewise.
	* ifcvt.cc (noce_emit_move_insn): Likewise.
	* internal-fn.cc (expand_arith_set_overflow): Likewise.
	(expand_arith_overflow_result_store): Likewise.
	(expand_addsub_overflow): Likewise.
	(expand_neg_overflow): Likewise.
	(expand_mul_overflow): Likewise.
	(expand_arith_overflow): Likewise.

2022-07-08  Haochen Jiang  <haochen.jiang@intel.com>

	PR target/106180
	* config/i386/sse.md (sse2_cvtps2pd<mask_name>_1):
	Rename from *sse2_cvtps2pd<mask_name>_1.
	(vec_unpacks_lo_v4sf): Add handler for memory operand.

2022-07-08  Lulu Cheng  <chenglulu@loongson.cn>

	* config/loongarch/loongarch.cc (loongarch_compute_frame_info):
	Modify fp_sp_offset and gp_sp_offset's calculation method,
	when frame->mask or frame->fmask is zero, don't minus UNITS_PER_WORD
	or UNITS_PER_FP_REG.

2022-07-07  David Malcolm  <dmalcolm@redhat.com>

	* diagnostic-format-json.cc (json_from_location_range): Update for
	removal of label_text::maybe_free in favor of automatic memory
	management.
	* diagnostic-format-sarif.cc
	(sarif_builder::make_location_object): Likewise.
	* diagnostic-show-locus.cc (struct pod_label_text): New.
	(class line_label): Convert m_text from label_text to pod_label_text.
	(layout::print_any_labels): Move "text" to the line_label.
	* tree-diagnostic-path.cc (path_label::get_text): Update for
	removal of label_text::maybe_free in favor of automatic memory
	management.
	(event_range::print): Likewise.
	(default_tree_diagnostic_path_printer): Likewise.
	(default_tree_make_json_for_path): Likewise.

2022-07-07  Prathamesh Kulkarni  <prathamesh.kulkarni@linaro.org>

	* statistics.cc (get_function_name): Add check to see if fn is not NULL.

2022-07-07  Richard Biener  <rguenther@suse.de>

	* tree-into-ssa.cc (iterating_old_ssa_names): New.
	(add_new_name_mapping): Grow {new,old}_ssa_names separately
	and only when actually needed.  Assert we are not growing
	the old_ssa_names set when iterating over it.
	(update_ssa): Remove old_ssa_names copying and empty_p
	query, note we are iterating over it and expect no set changes.

2022-07-07  Thomas Schwinge  <thomas@codesourcery.com>

	* config/i386/intelmic-mkoffload.cc (generate_host_descr_file)
	(prepare_target_image, main): Handle OpenMP 'requires'.
	(generate_host_descr_file): Switch to 'GOMP_offload_register_ver',
	'GOMP_offload_unregister_ver'.

2022-07-07  Richard Biener  <rguenther@suse.de>

	PR target/106219
	* config/i386/i386-builtins.cc (ix86_add_new_builtins): Properly
	set DECL_PURE_P.

2022-07-07  Richard Biener  <rguenther@suse.de>

	* tree-ssa-loop-manip.cc (add_exit_phis_var): Return the
	number of LC PHIs inserted.
	(add_exit_phis): Return whether any variable required
	multiple LC PHI nodes.
	(rewrite_into_loop_closed_ssa_1): Use TODO_update_ssa_no_phi
	when possible.

2022-07-07  Richard Biener  <rguenther@suse.de>

	* tree-ssa-loop-manip.cc (compute_live_loop_exits): Take
	the def loop exit block bitmap as argument instead of
	re-computing it here.
	(add_exit_phis_var): Adjust.
	(loop_name_cmp): New function.
	(add_exit_phis): Sort variables to insert LC PHI nodes
	after definition loop, for each definition loop compute
	the exit block bitmap once.
	(get_loops_exit): Remove.
	(rewrite_into_loop_closed_ssa_1): Do not pre-record
	all loop exit blocks into bitmaps.  Record loop exits
	if required.

2022-07-07  Dimitrije Milosevic  <Dimitrije.Milosevic@Syrmia.com>

	* config/mips/mips.cc (mips_asan_shadow_offset): Reformat
	to handle the N32 ABI.
	* config/mips/mips.h (SUBTARGET_SHADOW_OFFSET): Remove
	the macro, as it is not needed anymore.

2022-07-06  Thomas Schwinge  <thomas@codesourcery.com>

	* config/gcn/mkoffload.cc (process_obj): Clarify 'target_data' ->
	'[...]_data'.
	* config/nvptx/mkoffload.cc (process): Likewise.

2022-07-06  Thomas Schwinge  <thomas@codesourcery.com>

	* omp-general.h (enum omp_requires): Use 'GOMP_REQUIRES_[...]'.

2022-07-05  Andrew MacLeod  <amacleod@redhat.com>

	* value-relation.cc (relation_to_code): New vector.
	(relation_oracle::validate_relation): New.
	(set_relation): Allow ssa1 == ssa2 to be registered.
	* value-relation.h (validate_relation): New prototype.
	(query_relation): Make internal variant protected.

2022-07-05  Roger Sayle  <roger@nextmovesoftware.com>

	* config/i386/i386.cc (ix86_rtx_costs) <COMPARE>: Provide costs
	for double word comparisons and tests (comparisons against zero).
	* config/i386/i386.md (*test<mode>_not_doubleword): Split DWI
	and;cmp into andn;cmp $0 as a pre-reload splitter.
	(*andn<dwi>3_doubleword_bmi): Use <dwi> instead of <mode> in name.
	(*<any_or><dwi>3_doubleword): Likewise.

2022-07-05  Roger Sayle  <roger@nextmovesoftware.com>
	    Hongtao Liu  <hongtao.liu@intel.com>

	* config/i386/i386-builtin.def (__builtin_ia32_palignr128): Change
	CODE_FOR_ssse3_palignrti to CODE_FOR_ssse3_palignrv1ti.
	* config/i386/i386-expand.cc (expand_vec_perm_palignr): Use V1TImode
	and gen_ssse3_palignv1ti instead of TImode.
	* config/i386/sse.md (SSESCALARMODE): Delete.
	(define_mode_attr ssse3_avx2): Handle V1TImode instead of TImode.
	(<ssse3_avx2>_palignr<mode>): Use VIMAX_AVX2_AVX512BW as a mode
	iterator instead of SSESCALARMODE.
	(ssse3_palignrdi): Optimize cases where operands[3] is 0 or 64,
	using a single move instruction (if required).

2022-07-05  Roger Sayle  <roger@nextmovesoftware.com>
	    Uroš Bizjak  <ubizjak@gmail.com>

	PR rtl-optimization/96692
	* config/i386/i386.md (define_split): Split ((A | B) ^ C) ^ D
	as (X & ~Y) ^ Z on target BMI when either C or D is A or B.

2022-07-05  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106198
	* tree-cfgcleanup.cc (repair_loop_structures): Always do a
	full LC SSA rewrite but only if any blocks changed loop
	depth.

2022-07-05  Richard Biener  <rguenther@suse.de>

	* tree-ssa-loop-manip.cc (find_uses_to_rename_def): Remove.
	(find_uses_to_rename_in_loop): Likewise.
	(rewrite_into_loop_closed_ssa_1): Remove loop parameter and
	uses.
	(rewrite_into_loop_closed_ssa): Adjust.

2022-07-05  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106186
	* tree-ssa-propagate.cc (clean_up_loop_closed_phi):
	Properly handle virtual PHI nodes.

2022-07-05  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106196
	* tree-vect-stmts.cc (vect_finish_stmt_generation): Properly
	handle aggregate returns of calls for VDEF updates.

2022-07-05  Richard Biener  <rguenther@suse.de>

	* tree-vect-loop-manip.cc (vect_set_loop_condition_normal):
	Maintain LC SSA.

2022-07-05  Richard Sandiford  <richard.sandiford@arm.com>

	* tree-vect-patterns.cc (vect_convert_input): Expect the input
	type to be signed for optab_vector_mixed_sign.  Update the vectype
	at the same time as type.
	(vect_recog_dot_prod_pattern): Update accordingly.  If usdot isn't
	available, try sdot instead.
	* tree-vect-loop.cc (vect_is_emulated_mixed_dot_prod): New function.
	(vect_model_reduction_cost): Model the cost of implementing usdot
	using sdot.
	(vectorizable_reduction): Likewise.  Skip target support test
	for lane reductions.
	(vect_emulate_mixed_dot_prod): New function.
	(vect_transform_reduction): Use it to emulate usdot via sdot.

2022-07-05  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106182
	* loop-init.cc (fix_loop_structure): Return the number
	of newly discovered plus the number of deleted loops.
	* tree-cfgcleanup.cc (repair_loop_structures): Adjust
	variable name.

2022-07-04  Aldy Hernandez  <aldyh@redhat.com>

	* gimple-range-fold.cc
	(fold_using_range::range_of_ssa_name_with_loop_info): Restrict the
	call to SCEV for irange supported types.
	(fold_using_range::range_of_builtin_int_call): Convert to vrange.
	* gimple-range.cc (gimple_ranger::prefill_stmt_dependencies): Same.
	* tree-ssa-dom.cc (cprop_operand): Same.

2022-07-04  Roger Sayle  <roger@nextmovesoftware.com>

	PR target/104489
	* calls.cc (precompute_register_parameters): Allow promotion
	of floating point values to be passed in wider integer modes
	by calling new convert_float_to_wider_int.
	(expand_call): Allow floating point results to be returned in
	wider integer modes by calling new convert wider_int_to_float.
	* cfgexpand.cc (expand_value_return): Allow backends to promote
	a scalar floating point return value to a wider integer mode
	by calling new convert_float_to_wider_int.
	* expr.cc (convert_float_to_wider_int): New function.
	(convert_wider_int_to_float): Likewise.
	(expand_expr_real_1) <expand_decl_rtl>: Allow backends to promote
	scalar FP PARM_DECLs to wider integer modes, by calling new
	convert_wider_int_to_float.
	* expr.h (convert_modes): Name arguments for improved documentation.
	(convert_float_to_wider_int): Prototype new function here.
	(convert_wider_int_to_float): Likewise.
	* function.cc (assign_parm_setup_stack): Allow floating point
	values to be passed on the stack as wider integer modes by
	calling new convert_wider_int_to_float.

2022-07-04  Martin Jambor  <mjambor@suse.cz>

	PR tree-optimization/105860
	* tree-sra.cc (build_reconstructed_reference): Start expr
	traversal only just below the outermost union.

2022-07-04  Richard Biener  <rguenther@suse.de>

	* tree-vect-loop-manip.cc (vect_do_peeling): Revert assert
	and update virtual SSA form again.  Assert we do so for
	a known set of transforms only.
	* tree-vectorizer.h (vec_info::any_known_not_updated_vssa): New.
	* tree-vect-stmts.cc (vectorizable_load): When vectorizing
	using load-lanes allow virtual SSA update.

2022-07-04  Tobias Burnus  <tobias@codesourcery.com>
	    Chung-Lin Tang  <cltang@codesourcery.com>
	    Thomas Schwinge  <thomas@codesourcery.com>

	* config/gcn/mkoffload.cc (process_asm): Write '#include <stdint.h>'.
	(process_obj): Pass omp_requires_mask to GOMP_offload_register_ver.
	(main): Ask lto1 to obtain omp_requires_mask and pass it on.
	* config/nvptx/mkoffload.cc (process, main): Likewise.
	* lto-cgraph.cc (omp_requires_to_name): New.
	(input_offload_tables): Save omp_requires_mask.
	(output_offload_tables): Read it, check for consistency,
	save value for mkoffload.
	* omp-low.cc (lower_omp_target): Force output_offloadtables
	call for OMP_REQUIRES_TARGET_USED.

2022-07-04  Richard Biener  <rguenther@suse.de>

	* tree-vect-loop-manip.cc (vect_do_peeling): Assert that
	no SSA update is needed instead of updating virtual SSA
	form.
	* tree-vect-stmts.cc (vectorizable_load): For hoisted
	invariant load use the loop entry virtual use.
	For emulated gather loads use the virtual use of the
	original stmt like vect_finish_stmt_generation would do.

2022-07-04  Eric Botcazou  <ebotcazou@adacore.com>

	* tree-pretty-print.cc (dump_generic_node) <ARRAY_TYPE>: Add guard
	for direct circularity.

2022-07-04  Eric Botcazou  <ebotcazou@adacore.com>

	* dwarf2out.cc (gen_array_type_die): Use the default lower bound of
	the language for vector types.

2022-07-04  Aldy Hernandez  <aldyh@redhat.com>

	* value-range-storage.cc (irange_storage_slot::set_irange): Set
	nonzero bits in irange.
	(irange_storage_slot::get_irange): Get nonzero bits from irange.
	* value-range.cc (irange::operator=): Set nonzero bits.
	(irange::irange_set): Same.
	(irange::irange_set_anti_range): Same.
	(irange::set): Same.
	(irange::verify_range): Same.
	(irange::legacy_equal_p): Check nonzero bits.
	(irange::equal_p): Same.
	(irange::contains_p): Handle nonzero bits.
	(irange::irange_union): Same.
	(irange::irange_intersect): Same.
	(irange::dump): Same.
	(irange::set_nonzero_bits): New.
	(irange::get_nonzero_bits): New.
	(irange::intersect_nonzero_bits): New.
	(irange::union_nonzero_bits): New.
	(irange::dump_bitmasks): New.
	* value-range.h (class irange): Add m_nonzero_mask.
	(gt_ggc_mx): Handle nonzero bits.
	(gt_pch_nx): Same.
	(irange::set_undefined): Set nonzero bits.
	(irange::set_varying): Same.
	(irange::normalize_kind): Call set_undefined.

2022-07-04  Richard Biener  <rguenther@suse.de>

	* tree-ssa-loop-manip.h
	(rewrite_virtuals_into_loop_closed_ssa): Remove.
	(rewrite_into_loop_closed_ssa_1): Likewise.
	* tree-ssa-loop-manip.cc (rewrite_into_loop_closed_ssa_1):
	Make static.
	(rewrite_into_loop_closed_ssa): Remove loop overload,
	always rewrite virtuals into LC SSA.
	(check_loop_closed_ssa_bb): Also check virtuals.
	* tree-ssa-dce.cc (remove_dead_phis): Preserve virtual
	LC PHIs when in LC SSA.
	* gimple-loop-jam.cc (fuse_loops): Do not rewrite into
	loop-closed SSA here, but ...
	(tree_loop_unroll_and_jam): ... here once.
	* tree-if-conv.cc (version_loop_for_if_conversion): Use
	the cheaper TODO_update_ssa_no_phi.
	* tree-loop-distribution.cc (version_loop_by_alias_check):
	Likewise.
	* tree-ssa-loop-unswitch.cc (tree_unswitch_single_loop):
	Likewise.
	* tree-vect-loop-manip.cc (vect_loop_versioning): Likewise.
	(tree_unswitch_outer_loop): Do not rewrite virtuals into
	LC ssa.
	* tree-parloops.cc (transform_to_exit_first_loop_alt):
	Likewise.
	(pass_parallelize_loops::execute): After finishing rewrite
	into LC SSA again because we do not maintain it properly.

2022-07-04  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106055
	* graphite.cc (canonicalize_loop_closed_ssa): Check whether
	we can propagate.

2022-07-04  Haochen Jiang  <haochen.jiang@intel.com>

	PR target/43618
	* config/i386/sse.md (extendv2sfv2df2): New define_expand.
	(sse2_cvtps2pd_<mask_name>): Change constraint of operands[1].
	(*sse2_cvtps2pd_<mask_name>_1): Rename from extendvsdfv2df2.

2022-07-04  Aldy Hernandez  <aldyh@redhat.com>

	* ipa-cp.cc (ipcp_vr_lattice::meet_with_1): Use operator!=.
	* ipa-prop.cc (struct ipa_vr_ggc_hash_traits): Same.
	* tree-ssa-loop-unswitch.cc (struct unswitch_predicate): Use set
	with two arguments.
	(find_unswitching_predicates_for_bb): Same.
	* tree-vrp.cc (range_fold_unary_symbolics_p): Same.
	* value-range-equiv.cc (value_range_equiv::equal_p): Use operator==.
	* value-range.cc (irange::equal_p): Rename to...
	(irange::operator==): ...this.
	* value-range.h (irange::set): Remove.
	(irange::operator==): Remove.
	(irange::set_zero): Use set with two arguments.
	* vr-values.cc (vr_values::extract_range_from_binary_expr): Same.
	(vr_values::extract_range_from_unary_expr): Same.
	(check_for_binary_op_overflow): Same.
	(bounds_of_var_in_loop): Same.

2022-07-03  H.J. Lu  <hjl.tools@gmail.com>

	PR target/106022
	* config/i386/i386-protos.h (ix86_convert_const_vector_to_integer):
	New.
	* config/i386/i386.cc (ix86_convert_const_vector_to_integer):
	New.
	* config/i386/mmx.md (V_16_32_64): New.
	(*mov<mode>_imm): New patterns for stores with 16-bit, 32-bit
	and 64-bit constant vector.
	* config/i386/predicates.md (x86_64_const_vector_operand): New.

2022-07-03  Aldy Hernandez  <aldyh@redhat.com>

	* gimple-range-cache.cc: Include value-range-storage.h.
	* gimple-range-cache.h (class block_range_cache): Add "class" to
	m_range_allocator.
	* gimple-range-edge.cc
	(gimple_outgoing_range::gimple_outgoing_range): Allocate allocator.
	(gimple_outgoing_range::~gimple_outgoing_range): Free allocator.
	(gimple_outgoing_range::calc_switch_ranges): Dereference allocator.
	* gimple-range-edge.h: Add "class" to m_range_allocator.
	* gimple-range-infer.cc
	(infer_range_manager::infer_range_manager): Allocate allocator.
	(infer_range_manager::~infer_range_manager): Free allocator.
	(infer_range_manager::get_nonzero): Dereference allocator.
	(infer_range_manager::add_range): Same.
	* gimple-range-infer.h (class vrange_allocator): Add "class" to
	m_range_allocator.
	* value-range-storage.h (class vrange_allocator): Move from
	value-range.h.
	(class obstack_vrange_allocator): Same.
	(class ggc_vrange_allocator): Same.
	(vrange_allocator::alloc_vrange): Same.
	(vrange_allocator::alloc_irange): Same.
	* value-range.h (class vrange_allocator): Move to value-range-storage.h.
	(class obstack_vrange_allocator): Same.
	(class ggc_vrange_allocator): Same.

2022-07-03  Aldy Hernandez  <aldyh@redhat.com>

	* Makefile.in (OBJS): Add value-range-storage.o.
	(GTFILES): Add value-range-storage.h.
	* gengtype.cc (open_base_files): Add value-range-storage.h.
	* value-range-storage.cc: New file.
	* value-range-storage.h: New file.

2022-07-03  Xi Ruoyao  <xry111@xry111.site>
	    Lulu Cheng  <chenglulu@loongson.cn>

	* config/loongarch/loongarch.cc (loongarch_check_zero_div_p):
	New static function.
	(loongarch_idiv_insns): Use loongarch_check_zero_div_p instead
	of TARGET_CHECK_ZERO_DIV.
	(loongarch_output_division): Likewise.
	* common/config/loongarch/loongarch-common.cc
	(TARGET_DEFAULT_TARGET_FLAGS): Remove unneeded hook.
	* doc/invoke.texi: Update to match the new behavior.

2022-07-03  Ian Lance Taylor  <iant@golang.org>

	* tree-ssa-dse.cc (dse_optimize_stmt): Only delete a trapping
	statement if -fdelete-dead-exceptions.

2022-07-02  Tim Lange  <mail@tim-lange.me>

	PR analyzer/105900
	* doc/invoke.texi: Added Wanalyzer-allocation-size.

2022-07-02  Immad Mir  <mirimmad17@gmail.com>

	PR analyzer/106003
	* Makefile.in (ANALYZER_OBJS): Add sm-fd.o.
	* doc/invoke.texi:  Add -Wanalyzer-fd-double-close, -Wanalyzer-fd-leak,
	-Wanalyzer-fd-access-mode-mismatch, -Wanalyzer-fd-use-without-check,
	-Wanalyzer-fd-use-after-close.

2022-07-01  Aldy Hernandez  <aldyh@redhat.com>

	* wide-int.h (struct trailing_wide_ints): Add m_num_elements.
	(trailing_wide_ints::set_precision): Add num_elements argument.
	(trailing_wide_ints::extra_size): Same.

2022-07-01  Uroš Bizjak  <ubizjak@gmail.com>

	* config/i386/i386.md (*andn<mode>3_doubleword_bmi):
	Use "r" constraint for operand 1.

2022-07-01  Richard Biener  <rguenther@suse.de>

	* tree-into-ssa.cc (rewrite_update_dom_walker::before_dom_children):
	Do not look at interesting_blocks which is a copy of
	blocks_to_update.
	(update_ssa): Do not initialize it.
	(pass_build_ssa::execute): Set interesting_blocks to NULL
	after releasing it.

2022-07-01  Richard Biener  <rguenther@suse.de>

	* tree-ssa-sccvn.cc (vn_reference_lookup_3): Revert
	back to using maybe_ne (off, -1).

2022-07-01  Richard Biener  <rguenther@suse.de>

	* tree-ssa-sccvn.cc (vn_nary_op_insert_into): Make
	checking dominance check conditional on flag_checking.

2022-07-01  Tobias Burnus  <tobias@codesourcery.com>

	* config/gcn/gcn-protos.h (print_operand_address): Remove register
	keyword on 'rtx addr' argument.

2022-07-01  Roger Sayle  <roger@nextmovesoftware.com>
	    Uroš Bizjak  <ubizjak@gmail.com>

	* config/i386/i386.md (*andn<mode>3_doubleword_bmi): Add constraints
	to post-reload define_insn_and_split.

2022-07-01  Jakub Jelinek  <jakub@redhat.com>

	PR middle-end/106144
	* wide-int.cc (wi::shifted_mask): If end >= prec, return right after
	emitting element for shift or if shift is 0 first element after start.
	(wide_int_cc_tests): Add tests for equivalency of wi::mask and
	wi::shifted_mask with 0 start.

2022-07-01  Roger Sayle  <roger@nextmovesoftware.com>

	PR target/106122
	* config/i386/i386.md (peephole2): Avoid generating pop %esp
	when optimizing for size.

2022-07-01  Roger Sayle  <roger@nextmovesoftware.com>
	    Uroš Bizjak  <ubizjak@gmail.com>

	* config/i386/i386.md (general_szext_operand): Add TImode
	support using x86_64_hilo_general_operand predicate.
	(*cmp<dwi>_doubleword): Use x86_64_hilo_general_operand predicate.
	(*add<dwi>3_doubleword): Improved optimization of zero addition.
	(and<mode>3): Use SDWIM mode iterator to add support for double
	word bit-wise AND in TImode.  Use force_reg when double word
	immediate operand isn't x86_64_hilo_general_operand.
	(and<dwi>3_doubleword): Generalized from anddi3_doubleword and
	converted into a post-reload splitter.
	(*andndi3_doubleword): Previous define_insn deleted.
	(*andn<mode>3_doubleword_bmi): New define_insn_and_split for
	TARGET_BMI that splits post-reload.
	(*andn<mode>3_doubleword): New define_insn_and_split for
	!TARGET_BMI, that lowers/splits before reload.
	(<any_or><mode>3): Use SDWIM mode iterator to add suppport for
	double word bit-wise XOR and bit-wise IOR in TImode.  Use
	force_reg when double word immediate operand isn't
	x86_64_hilo_general_operand.
	(*<any_or>di3_doubleword): Generalized from <any_or>di3_doubleword.
	(one_cmpl<mode>2): Use SDWIM mode iterator to add support for
	double word bit-wise NOT in TImode.
	(one_cmpl<dwi>2_doubleword): Generalize from one_cmpldi2_doubleword
	and converted into a post-reload splitter.

2022-07-01  Eric Botcazou  <ebotcazou@adacore.com>

	PR middle-end/105874
	* expr.cc (expand_expr_real_1) <normal_inner_ref>: Force
	EXPAND_MEMORY for the expansion of the inner reference only
	in the usual cases where a memory reference is required.

2022-07-01  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106131
	* tree-ssa-sccvn.cc (vn_reference_lookup_3): Force alias-set
	zero when offsetting the read looking through an aggregate
	copy.

2022-07-01  Martin Liska  <mliska@suse.cz>

	PR tree-optimization/106126
	* gimple-if-to-switch.cc (struct condition_info): Save
	has_side_effect.
	(find_conditions): Parse all BBs.
	(pass_if_to_switch::execute): Allow only side effects for first
	BB.

2022-07-01  Haochen Jiang  <haochen.jiang@intel.com>

	* common/config/i386/i386-common.cc (OPTION_MASK_ISA2_AVX512F_UNSET):
	Add OPTION_MASK_ISA2_AVX512BW_UNSET, remove
	OPTION_MASK_ISA2_AVX512BF16_UNSET and
	OPTION_MASK_ISA2_AVX512FP16_UNSET.

2022-06-30  Joseph Myers  <joseph@codesourcery.com>

	PR lto/106129
	* lto-wrapper.cc (find_option): Add argument start.
	(merge_and_complain): Loop over existing_opt_index and
	existing_opt2_index for Xassembler check.  Update calls to
	find_option.
	(find_and_merge_options): Add argument first to determine whether
	to merge options with those passed in *opts.
	(run_gcc): Update calls to find_and_merge_options.

2022-06-30  Aldy Hernandez  <aldyh@redhat.com>

	* gimple-range-cache.cc (block_range_cache::block_range_cache):
	Rename vrange_allocator to obstack_vrange_allocator.
	(ssa_global_cache::ssa_global_cache): Same.
	* gimple-range-edge.h (class gimple_outgoing_range): Same.
	* gimple-range-infer.h (class infer_range_manager): Same.
	* value-range.h (class vrange_allocator): Make abstract.
	(class obstack_vrange_allocator): Inherit from vrange_allocator.
	(class ggc_vrange_allocator): New.

2022-06-30  Roger Sayle  <roger@nextmovesoftware.com>
	    Uroš Bizjak  <ubizjak@gmail.com>

	* config/i386/i386.md (swap_mode): Rename from *swap<mode> to
	provide gen_swapsi.
	(<any_rotate>di3): Handle !TARGET_64BIT rotations by 32 bits
	via new gen_<insn>32di2_doubleword below.
	(<anyrotate>32di2_doubleword): New define_insn_and_split
	that splits after reload as either a pair of move instructions
	or an xchgl (using gen_swapsi).

2022-06-30  Richard Biener  <rguenther@suse.de>

	* domwalk.h (dom_walker::dom_walker): Update comment to
	reflect reality and new special argument value for
	bb_index_to_rpo.
	* domwalk.cc (dom_walker::dom_walker): Recognize -1
	bb_index_to_rpo.
	* tree-into-ssa.cc
	(rewrite_update_dom_walker::rewrite_update_dom_walker): Tell
	dom_walker to not use RPO.

2022-06-30  Martin Liska  <mliska@suse.cz>

	* tree-ssa-dom.cc (pass_dominator::execute): Remove m_ranger as
	it is unused.

2022-06-30  Andrew MacLeod  <amacleod@redhat.com>

	PR tree-optimization/106114
	* gimple-range-fold.cc (fold_using_range::relation_fold_and_or): Check
	statement operands instead of GORI cache.

2022-06-30  Antoni Boucher  <bouanto@zoho.com>

	PR target/106095
	* config/i386/sse.md: Fix asm generation.

2022-06-29  Sergei Trofimovich  <siarheit@google.com>

	PR c++/106102
	* system.h: Introduce INCLUDE_PTHREAD_H macros to include <pthread.h>.

2022-06-29  Joseph Myers  <joseph@codesourcery.com>

	* config/nios2/nios2.cc (nios2_load_pic_address): Use gen_rtx_MEM
	not gen_const_mem for UNSPEC_PIC_CALL_SYM.

2022-06-29  Richard Biener  <rguenther@suse.de>

	PR rtl-optimization/106082
	* combine.cc (distribute_notes): Preserve notes when
	they indicate a call doesn't perform a non-local goto.

2022-06-29  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/106112
	* tree-ssa-sccvn.cc (valueized_wider_op): Properly extend
	a constant operand according to its type.

2022-06-29  Martin Liska  <mliska@suse.cz>

	* doc/invoke.texi: Remove removed evrp-mode.

2022-06-29  Lulu Cheng  <chenglulu@loongson.cn>

	PR target/106097
	* config/loongarch/loongarch.cc (loongarch_build_integer):
	Remove undefined behavior from code.

2022-06-28  Dimitar Dimitrov  <dimitar@dinux.eu>

	* doc/sourcebuild.texi: Document new no_alignment_constraints
	effective target check.

2022-06-28  Aldy Hernandez  <aldyh@redhat.com>

	* Makefile.in: Remove gimple-ssa-evrp.o and gimple-ssa-evrp-analyze.o.
	* flag-types.h (enum evrp_mode): Remove.
	* params.opt: Remove --param=evrp-mode.
	* tree-vrp.cc (make_pass_early_vrp): New.
	(pass_vrp::execute): Call early VRP instance.
	* gimple-ssa-evrp-analyze.cc: Removed.
	* gimple-ssa-evrp-analyze.h: Removed.
	* gimple-ssa-evrp.cc: Removed.

2022-06-28  Alexandre Oliva  <oliva@adacore.com>

	* Makefile.in (TFLAGS): New.
	(GCC_FOR_TARGET): Add TFLAGS.
	(FLAGS_TO_PASS): Pass TFLAGS down.

2022-06-28  Richard Biener  <rguenther@suse.de>

	* tree-ssa-loop-split.cc (fix_loop_bb_probability): Do not
	call update_ssa.

2022-06-28  Richard Biener  <rguenther@suse.de>

	* tree-into-ssa.cc (insert_updated_phi_nodes_for): Use
	mark_block_for_update.
	(update_ssa): Adjust.

2022-06-28  Xi Ruoyao  <xry111@xry111.site>

	PR target/106096
	* config/loongarch/loongarch.h (REG_CLASS_CONTENTS): Exclude
	$r13 from SIBCALL_REGS.
	* config/loongarch/loongarch.cc (loongarch_regno_to_class):
	Change $r13 to JIRL_REGS.

2022-06-28  Aldy Hernandez  <aldyh@redhat.com>

	* tree-ssa-loop-ch.cc (entry_loop_condition_is_static): Remove
	irange::supports_p.

2022-06-28  Richard Biener  <rguenther@suse.de>

	PR middle-end/106053
	* match.pd ((T)a == (T)b): Avoid folding away sign
	changes in a comparison if we'd truncate to a boolean.

2022-06-28  Kewen Lin  <linkw@linux.ibm.com>

	* config/rs6000/rs6000.md (*rotl<mode>3_insert_4): Replace mode
	iterator GPR with SImode, adjust the condition and output template,
	rename to ...
	(*rotlsi3_insert_4): ... this.

2022-06-27  David Malcolm  <dmalcolm@redhat.com>

	* genmatch.cc: Add "final" and "override" to various vfunc
	implementations, removing redundant "virtual" as appropriate.
	* gensupport.cc: Likewise.
	* gimple-range-cache.h: Likewise.
	* ipa-icf-gimple.h: Likewise.
	* ipa-icf.h: Likewise.
	* read-md.h: Likewise.
	* read-rtl-function.cc: Likewise.
	* tree-ssa-loop-ch.cc: Likewise.
	* tree-ssa-sccvn.cc: Likewise.

2022-06-27  David Malcolm  <dmalcolm@redhat.com>

	* config/i386/i386-features.h: Add "final" and "override" to
	scalar_chain vfunc implementations as appropriate.

2022-06-27  David Malcolm  <dmalcolm@redhat.com>

	* tree-switch-conversion.h: Add "final" and "override" to cluster
	vfunc implementations as appropriate.

2022-06-27  David Malcolm  <dmalcolm@redhat.com>

	* expr.cc: Add "final" and "override" to op_by_pieces_d vfunc
	implementations as appropriate.

2022-06-27  David Malcolm  <dmalcolm@redhat.com>

	* compare-elim.cc: Add "final" and "override" to dom_walker vfunc
	implementations, removing redundant "virtual" as appropriate.
	* gimple-ssa-strength-reduction.cc: Likewise.
	* ipa-prop.cc: Likewise.
	* rtl-ssa/blocks.cc: Likewise.
	* tree-into-ssa.cc: Likewise.
	* tree-ssa-dom.cc: Likewise.
	* tree-ssa-math-opts.cc: Likewise.
	* tree-ssa-phiopt.cc: Likewise.
	* tree-ssa-propagate.cc: Likewise.
	* tree-ssa-sccvn.cc: Likewise.
	* tree-ssa-strlen.cc: Likewise.
	* tree-ssa-uncprop.cc: Likewise.

2022-06-27  David Malcolm  <dmalcolm@redhat.com>

	* adjust-alignment.cc: Add "final" and "override" to opt_pass
	vfunc implementations, removing redundant "virtual" as
	appropriate.
	* asan.cc: Likewise.
	* auto-inc-dec.cc: Likewise.
	* auto-profile.cc: Likewise.
	* bb-reorder.cc: Likewise.
	* cfgcleanup.cc: Likewise.
	* cfgexpand.cc: Likewise.
	* cfgrtl.cc: Likewise.
	* cgraphbuild.cc: Likewise.
	* combine-stack-adj.cc: Likewise.
	* combine.cc: Likewise.
	* compare-elim.cc: Likewise.
	* config/i386/i386-features.cc: Likewise.
	* coroutine-passes.cc: Likewise.
	* cprop.cc: Likewise.
	* cse.cc: Likewise.
	* dce.cc: Likewise.
	* df-core.cc: Likewise.
	* dse.cc: Likewise.
	* dwarf2cfi.cc: Likewise.
	* early-remat.cc: Likewise.
	* except.cc: Likewise.
	* final.cc: Likewise.
	* function.cc: Likewise.
	* fwprop.cc: Likewise.
	* gcse.cc: Likewise.
	* gimple-harden-conditionals.cc: Likewise.
	* gimple-if-to-switch.cc: Likewise.
	* gimple-isel.cc: Likewise.
	* gimple-laddress.cc: Likewise.
	* gimple-loop-interchange.cc: Likewise.
	* gimple-loop-jam.cc: Likewise.
	* gimple-loop-versioning.cc: Likewise.
	* gimple-low.cc: Likewise.
	* gimple-ssa-backprop.cc: Likewise.
	* gimple-ssa-evrp.cc: Likewise.
	* gimple-ssa-isolate-paths.cc: Likewise.
	* gimple-ssa-nonnull-compare.cc: Likewise.
	* gimple-ssa-split-paths.cc: Likewise.
	* gimple-ssa-store-merging.cc: Likewise.
	* gimple-ssa-strength-reduction.cc: Likewise.
	* gimple-ssa-warn-access.cc: Likewise.
	* gimple-ssa-warn-alloca.cc: Likewise.
	* gimple-ssa-warn-restrict.cc: Likewise.
	* gimple-warn-recursion.cc: Likewise.
	* graphite.cc: Likewise.
	* ifcvt.cc: Likewise.
	* init-regs.cc: Likewise.
	* ipa-comdats.cc: Likewise.
	* ipa-cp.cc: Likewise.
	* ipa-devirt.cc: Likewise.
	* ipa-fnsummary.cc: Likewise.
	* ipa-free-lang-data.cc: Likewise.
	* ipa-icf.cc: Likewise.
	* ipa-inline.cc: Likewise.
	* ipa-modref.cc: Likewise.
	* ipa-profile.cc: Likewise.
	* ipa-pure-const.cc: Likewise.
	* ipa-reference.cc: Likewise.
	* ipa-split.cc: Likewise.
	* ipa-sra.cc: Likewise.
	* ipa-visibility.cc: Likewise.
	* ipa.cc: Likewise.
	* ira.cc: Likewise.
	* jump.cc: Likewise.
	* loop-init.cc: Likewise.
	* lower-subreg.cc: Likewise.
	* mode-switching.cc: Likewise.
	* modulo-sched.cc: Likewise.
	* multiple_target.cc: Likewise.
	* omp-expand.cc: Likewise.
	* omp-low.cc: Likewise.
	* omp-oacc-kernels-decompose.cc: Likewise.
	* omp-oacc-neuter-broadcast.cc: Likewise.
	* omp-offload.cc: Likewise.
	* omp-simd-clone.cc: Likewise.
	* passes.cc: Likewise.
	* postreload-gcse.cc: Likewise.
	* postreload.cc: Likewise.
	* predict.cc: Likewise.
	* recog.cc: Likewise.
	* ree.cc: Likewise.
	* reg-stack.cc: Likewise.
	* regcprop.cc: Likewise.
	* reginfo.cc: Likewise.
	* regrename.cc: Likewise.
	* reorg.cc: Likewise.
	* sancov.cc: Likewise.
	* sanopt.cc: Likewise.
	* sched-rgn.cc: Likewise.
	* stack-ptr-mod.cc: Likewise.
	* store-motion.cc: Likewise.
	* tracer.cc: Likewise.
	* trans-mem.cc: Likewise.
	* tree-call-cdce.cc: Likewise.
	* tree-cfg.cc: Likewise.
	* tree-cfgcleanup.cc: Likewise.
	* tree-complex.cc: Likewise.
	* tree-eh.cc: Likewise.
	* tree-emutls.cc: Likewise.
	* tree-if-conv.cc: Likewise.
	* tree-into-ssa.cc: Likewise.
	* tree-loop-distribution.cc: Likewise.
	* tree-nrv.cc: Likewise.
	* tree-object-size.cc: Likewise.
	* tree-parloops.cc: Likewise.
	* tree-predcom.cc: Likewise.
	* tree-profile.cc: Likewise.
	* tree-sra.cc: Likewise.
	* tree-ssa-ccp.cc: Likewise.
	* tree-ssa-copy.cc: Likewise.
	* tree-ssa-dce.cc: Likewise.
	* tree-ssa-dom.cc: Likewise.
	* tree-ssa-dse.cc: Likewise.
	* tree-ssa-forwprop.cc: Likewise.
	* tree-ssa-ifcombine.cc: Likewise.
	* tree-ssa-loop-ch.cc: Likewise.
	* tree-ssa-loop-im.cc: Likewise.
	* tree-ssa-loop-ivcanon.cc: Likewise.
	* tree-ssa-loop-prefetch.cc: Likewise.
	* tree-ssa-loop-split.cc: Likewise.
	* tree-ssa-loop-unswitch.cc: Likewise.
	* tree-ssa-loop.cc: Likewise.
	* tree-ssa-math-opts.cc: Likewise.
	* tree-ssa-phiopt.cc: Likewise.
	* tree-ssa-phiprop.cc: Likewise.
	* tree-ssa-pre.cc: Likewise.
	* tree-ssa-reassoc.cc: Likewise.
	* tree-ssa-sccvn.cc: Likewise.
	* tree-ssa-sink.cc: Likewise.
	* tree-ssa-strlen.cc: Likewise.
	* tree-ssa-structalias.cc: Likewise.
	* tree-ssa-uncprop.cc: Likewise.
	* tree-ssa-uninit.cc: Likewise.
	* tree-ssanames.cc: Likewise.
	* tree-stdarg.cc: Likewise.
	* tree-switch-conversion.cc: Likewise.
	* tree-tailcall.cc: Likewise.
	* tree-vect-generic.cc: Likewise.
	* tree-vectorizer.cc: Likewise.
	* tree-vrp.cc: Likewise.
	* tsan.cc: Likewise.
	* ubsan.cc: Likewise.
	* var-tracking.cc: Likewise.
	* vtable-verify.cc: Likewise.
	* web.cc: Likewise.

2022-06-27  Andrew Stubbs  <ams@codesourcery.com>

	* config/gcn/gcn.md (*movbi): Remove assembler bug workarounds.
	(jump): Likewise.
	(movdi_symbol_save_scc): Likewise.

2022-06-27  Roger Sayle  <roger@nextmovesoftware.com>

	PR rtl-optimization/7061
	* config/i386/i386.md (*highpartdisi2): New define_insn_and_split.

2022-06-27  Roger Sayle  <roger@nextmovesoftware.com>

	PR tree-optimization/94026
	* match.pd (((X << C1) & C2) eq/ne C3): New simplification.
	(((X >> C1) & C2) eq/ne C3): Likewise.

2022-06-27  Prathamesh Kulkarni  <prathamesh.kulkarni@linaro.org>

	* statistics.cc: Include tree.h.
	(get_function_name): New function.
	(statistics_fini_pass_2): Call get_function_name instead of
	current_function_name.
	(statistics_counter_event): Call get_function_name instead of
	function_name.
	(statistics_histogram_event): Likewise.

2022-06-27  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/xtensa.md:
	Suppress unnecessary emitting nop insn in the split patterns for
	integer/FP constant synthesis, and add new peephole2 pattern that
	folds such synthesized additions.

2022-06-25  Aldy Hernandez  <aldyh@redhat.com>

	* tree-ssa-dom.cc (dom_jt_state): Pass ranger to constructor
	instead of evrp.
	(dom_jt_state::push): Remove m_evrp.
	(dom_jt_state::pop): Same.
	(dom_jt_state::record_ranges_from_stmt): Remove.
	(dom_jt_state::register_equiv): Remove updating of evrp ranges.
	(class dom_jt_simplifier): Pass ranger to constructor.
	Inherit from hybrid_jt_simplifier.
	(dom_jt_simplifier::simplify): Convert to ranger.
	(pass_dominator::execute): Same.
	(all_uses_feed_or_dominated_by_stmt): New.
	(dom_opt_dom_walker::set_global_ranges_from_unreachable_edges): New.
	(dom_opt_dom_walker::before_dom_children): Call
	set_global_ranges_from_unreachable_edges.
	Do not call record_ranges_from_stmt.
	(dom_opt_dom_walker::after_dom_children): Remove evrp use.
	(cprop_operand): Use int_range<> instead of value_range.
	(dom_opt_dom_walker::fold_cond): New.
	(dom_opt_dom_walker::optimize_stmt): Pass ranger to
	cprop_into_stmt.
	Use fold_cond() instead of vrp_visit_cond_stmt().
	* tree-ssa-threadedge.cc (jt_state::register_equivs_stmt): Do not
	pass state to simplifier.
	* vr-values.h (class vr_values): Make fold_cond public.

2022-06-25  Jeff Law  <jeffreyalaw@gmail.com>

	* common/config/tilegx/tilegx-common.cc: Removed.
	* common/config/tilepro/tilepro-common.cc: Removed.
	* config.gcc: Remove tilegx and tilepro entries.
	* config/tilegx/constraints.md: Removed.
	* config/tilegx/feedback.h: Removed.
	* config/tilegx/linux.h: Removed.
	* config/tilegx/mul-tables.cc: Removed.
	* config/tilegx/predicates.md: Removed.
	* config/tilegx/sync.md: Removed.
	* config/tilegx/t-tilegx: Removed.
	* config/tilegx/tilegx-builtins.h: Removed.
	* config/tilegx/tilegx-c.cc: Removed.
	* config/tilegx/tilegx-generic.md: Removed.
	* config/tilegx/tilegx-modes.def: Removed.
	* config/tilegx/tilegx-multiply.h: Removed.
	* config/tilegx/tilegx-opts.h: Removed.
	* config/tilegx/tilegx-protos.h: Removed.
	* config/tilegx/tilegx.cc: Removed.
	* config/tilegx/tilegx.h: Removed.
	* config/tilegx/tilegx.md: Removed.
	* config/tilegx/tilegx.opt: Removed.
	* config/tilepro/constraints.md: Removed.
	* config/tilepro/feedback.h: Removed.
	* config/tilepro/gen-mul-tables.cc: Removed.
	* config/tilepro/linux.h: Removed.
	* config/tilepro/mul-tables.cc: Removed.
	* config/tilepro/predicates.md: Removed.
	* config/tilepro/t-tilepro: Removed.
	* config/tilepro/tilepro-builtins.h: Removed.
	* config/tilepro/tilepro-c.cc: Removed.
	* config/tilepro/tilepro-generic.md: Removed.
	* config/tilepro/tilepro-modes.def: Removed.
	* config/tilepro/tilepro-multiply.h: Removed.
	* config/tilepro/tilepro-protos.h: Removed.
	* config/tilepro/tilepro.cc: Removed.
	* config/tilepro/tilepro.h: Removed.
	* config/tilepro/tilepro.md: Removed.
	* config/tilepro/tilepro.opt: Removed.
	* configure.ac: Remove tilegx and tilepro entries.
	* configure: Rebuilt.
	* doc/extend.texi: Remove tilegx and tilepro entries.
	* doc/install.texi: Remove tilegx and tilepro entries.
	* doc/invoke.texi: Remove tilegx and tilepro entries.
	* doc/md.texi: Remove tilegx and tilepro entries.

2022-06-25  Roger Sayle  <roger@nextmovesoftware.com>
	    Richard Biener  <rguenther@suse.de>

	* regcprop.cc (pass_cprop_hardreg::execute): Perform a third
	iteration over each basic block that was updated by the second
	iteration.

2022-06-24  Jason Merrill  <jason@redhat.com>

	PR c++/87729
	PR c++/20423
	* doc/invoke.texi: Document changes.

2022-06-24  Iain Buclaw  <ibuclaw@gdcproject.org>

	* config/tilepro/gen-mul-tables.cc (tilegx_emit): Adjust loop
	condition to avoid overflow.

2022-06-24  Will Schmidt  <will_schmidt@vnet.ibm.com>

	* config/rs6000/aix71.h (MASK_PPC_GPOPT, MASK_PPC_GFXOPT): Replace with
	OPTION_MASK_PPC_GPOPT, OPTION_MASK_PPC_GFXOPT.
	* config/rs6000/darwin.h (MASK_PPC_GFXOPT): Replace with
	OPTION_MASK_PPC_GFXOPT.
	* config/rs6000/darwin64-biarch.h (MASK_PPC_GFXOPT): Same.
	* config/rs6000/default64.h (MASK_PPC_GPOPT, MASK_PPC_GFXOPT): Replace with
	OPTION_MASK_PPC_GPOPT, OPTION_MASK_PPC_GFXOPT.
	* config/rs6000/rs6000-c.cc: Update comment.
	* config/rs6000/rs6000-cpus.def: Update RS6000_CPU macro calls.
	* config/rs6000/rs6000.cc (rs6000_darwin_file_start): Replace
	MASK_PPC_GPOPT with OPTION_MASK_PPC_GPOPT.
	(rs6000_builtin_mask_names): Replace MASK_PPC_GFXOPT, MASK_POPCNTB
	with OPTION_MASK_PPC_GFXOPT, OPTION_MASK_POPCNTB.
	* config/rs6000/rs6000.h: (MASK_P8_VECTOR, MASK_P9_VECTOR,
	MASK_P9_MISC, MASK_POPCNTB, MASK_POPCNTD, MASK_PPC_GFXOPT,
	MASK_PPC_GPOPT, MASK_RECIP_PRECISION, MASK_SOFT_FLOAT,
	MASK_VSX, MASK_POWER10, MASK_P10_FUSION): Delete.

2022-06-24  Will Schmidt  <will_schmidt@vnet.ibm.com>

	* config/rs6000/aix71.h (TARGET_DEFAULT): Replace MASK_MFCRF with
	OPTION_MASK_MFCRF.
	* config/rs6000/darwin.h (TARGET_DEFAULT): Replace MASK_MULTIPLE with
	OPTION_MASK_MULTIPLE.
	* config/rs6000/darwin64-biarch.h (TARGET_DEFAULT): Same.
	* config/rs6000/default64.h (TARGET_DEFAULT): Replace MASK_MFCRF with
	OPTION_MASK_MFCRF.
	* config/rs6000/eabi.h (TARGET_DEFAULT): Replace MASK_EABI with
	OPTION_MASK_EABI.
	* config/rs6000/eabialtivec.h (TARGET_DEFAULT): Same.
	* config/rs6000/linuxaltivec.h (TARGET_DEFAULT): Replace
	MASK_ALTIVEC with OPTION_MASK_ALTIVEC.
	* config/rs6000/rs6000-cpus.def (MASK_ALTIVEC, MASK_CMPB,
	MASK_CRYPTO, MASK_DFP, MASK_DIRECT_MOVE, MASK_DLMZB, MASK_EABI,
	MASK_FLOAT128_KEYWORD, MASK_FLOAT128_HW, MASK_FPRND,
	MASK_P8_FUSION, MASK_HARD_FLOAT, MASK_HTM, MASK_ISEL, MASK_MFCRF,
	MASK_MMA, MASK_MULHW, MASK_MULTIPLE, MASK_NO_UPDATE):
	Replace with
	OPTION_MASK_ALTIVEC, OPTION_MASK_CMPB, OPTION_MASK_CRYPTO,
	OPTION_MASK_DFP, OPTION_MASK_DIRECT_MOVE, OPTION_MASK_DLMZB,
	OPTION_MASK_EABI, OPTION_MASK_FLOAT128_KEYWORD,
	OPTION_MASK_FLOAT128_HW, OPTION_MASK_FPRND, OPTION_MASK_P8_FUSION,
	OPTION_MASK_HARD_FLOAT, OPTION_MASK_HTM, OPTION_MASK_ISEL,
	OPTION_MASK_MFCRF, OPTION_MASK_MMA, OPTION_MASK_MULHW,
	OPTION_MASK_MULTIPLE, OPTION_MASK_NO_UPDATE.
	* config/rs6000/rs6000.cc (rs6000_darwin_file_start): Replace
	MASK_MFCRF, MASK_ALTIVEC with OPTION_MASK_MFCRF, OPTION_MASK_ALTIVEC.
	* config/rs6000/rs6000.h (TARGET_DEFAULT): Replace MASK_MULTIPLE
	with OPTION_MASK_MULTIPLE.
	(MASK_ALTIVEC, MASK_CMPB, MASK_CRYPTO, MASK_DFP,
	MASK_DIRECT_MOVE, MASK_DLMZB, MASK_EABI, MASK_FLOAT128_KEYWORD,
	MASK_FLOAT128_HW, MASK_FPRND, MASK_P8_FUSION, MASK_HARD_FLOAT,
	MASK_HTM, MASK_ISEL, MASK_MFCRF, MASK_MMA, MASK_MULHW,
	MASK_MULTIPLE, MASK_NO_UPDATE): Delete.
	* config/rs6000/vxworks.h (TARGET_DEFAULT): Replace MASK_EABI
	with OPTION_MASK_EABI.

2022-06-24  Will Schmidt  <will_schmidt@vnet.ibm.com>

	* config/rs6000/rs6000.cc (RS6000_BTM_ALTIVEC, RS6000_BTM_CMPB,
	RS6000_BTM_VSX, RS6000_BTM_FRE, RS6000_BTM_P8_VECTOR,
	RS6000_BTM_P9_VECTOR, RS6000_BTM_P9_MISC, RS6000_BTM_MODULO,
	RS6000_BTM_CRYPTO, RS6000_BTM_HTM): Replace with OPTION_MASK_ALTIVEC,
	OPTION_MASK_CMPB, OPTION_MASK_VSX, OPTION_MASK_POPCNTB,
	OPTION_MASK_P8_VECTOR, OPTION_MASK_P9_VECTOR, OPTION_MASK_P9_MISC,
	OPTION_MASK_MODULO, OPTION_MASK_CRYPTO, OPTION_MASK_HTM.
	* config/rs6000/rs6000.h (RS6000_BTM_MODULO, RS6000_BTM_ALTIVEC,
	RS6000_BTM_CMPB, RS6000_BTM_VSX, RS6000_BTM_P8_VECTOR,
	RS6000_BTM_P9_VECTOR, RS6000_BTM_P9_MISC, RS6000_BTM_CRYPTO,
	RS6000_BTM_HTM, RS6000_BTM_FRE): Remove.

2022-06-24  Will Schmidt  <will_schmidt@vnet.ibm.com>

	* config/rs6000/rs6000-c.cc: Update comments.
	* config/rs6000/rs6000.cc (RS6000_BTM_FRES, RS6000_BTM_FRSQRTE,
	RS6000_BTM_FRSQRTES, RS6000_BTM_POPCNTD, RS6000_BTM_CELL,
	RS6000_BTM_64BIT, RS6000_BTM_POWERPC64, RS6000_BTM_DFP,
	RS6000_BTM_HARD_FLOAT,RS6000_BTM_LDBL128, RS6000_BTM_FLOAT128,
	RS6000_BTM_FLOAT128_HW, RS6000_BTM_MMA, RS6000_BTM_P10): Replace
	with OPTION_MASK_PPC_GFXOPT, OPTION_MASK_PPC_GFXOPT,
	OPTION_MASK_POPCNTB, OPTION_MASK_POPCNTD,
	OPTION_MASK_FPRND, MASK_64BIT, MASK_POWERPC64,
	OPTION_MASK_DFP, OPTION_MASK_SOFT_FLOAT, OPTION_MASK_MULTIPLE,
	OPTION_MASK_FLOAT128_KEYWORD, OPTION_MASK_FLOAT128_HW,
	OPTION_MASK_MMA, OPTION_MASK_POWER10.
	* config/rs6000/rs6000.h (RS6000_BTM_FRES, RS6000_BTM_FRSQRTE,
	RS6000_BTM_FRSQRTES, RS6000_BTM_POPCNTD, RS6000_BTM_CELL,
	RS6000_BTM_DFP, RS6000_BTM_HARD_FLOAT, RS6000_BTM_LDBL128,
	RS6000_BTM_64BIT, RS6000_BTM_POWERPC64, RS6000_BTM_FLOAT128,
	RS6000_BTM_FLOAT128_HW, RS6000_BTM_MMA, RS6000_BTM_P10): Delete.

2022-06-24  Will Schmidt  <will_schmidt@vnet.ibm.com>

	* config/rs6000/rs6000.h (RS6000_BTM_COMMON, RS6000_BTM_ALWAYS,
	MASK_REGNAMES, OPTION_MASK_REGNAMES, MASK_PROTOTYPE,
	OPTION_MASK_PROTOTYPE, MASK_UPDATE, OPTION_MASK_UPDATE): Remove.

2022-06-24  Richard Biener  <rguenther@suse.de>

	PR middle-end/106070
	* match.pd (a != b ? a : b): Fix translation of
	operand_equal_for_comparison_p.

2022-06-24  Jan Hubicka  <jh@suse.cz>

	PR ipa/106057
	* tree-ssa-alias.cc (stmt_kills_ref_p): Check for external throw.

2022-06-24  Martin Liska  <mliska@suse.cz>

	PR middle-end/106059
	* profile-count.h: *= and /= operators need to modify this
	object.

2022-06-24  Roger Sayle  <roger@nextmovesoftware.com>
	    Uroš Bizjak  <ubizjak@gmail.com>

	PR target/105930
	* config/i386/i386.md (*<any_or>di3_doubleword): Split after
	reload.  Use rtx_equal_p to avoid creating memory-to-memory moves,
	and emit NOTE_INSN_DELETED if operand[2] is zero (i.e. with -O0).

2022-06-24  Alexandre Oliva  <oliva@adacore.com>

	* common.opt (nostdlib++): New.
	* doc/invoke.texi (-nostdlib++): Document it.

2022-06-24  Alexandre Oliva  <oliva@adacore.com>

	* doc/sourcebuild.texi (Environment attributes): Document
	two_plus_gigs.

2022-06-23  David Malcolm  <dmalcolm@redhat.com>

	* common.opt (fdiagnostics-show-rules): New option.
	* diagnostic-format-json.cc (diagnostic_output_format_init_json):
	Fix up context->show_rules.
	* diagnostic-format-sarif.cc
	(diagnostic_output_format_init_sarif): Likewise.
	* diagnostic-metadata.h (diagnostic_metadata::rule): New class.
	(diagnostic_metadata::precanned_rule): New class.
	(diagnostic_metadata::add_rule): New.
	(diagnostic_metadata::get_num_rules): New.
	(diagnostic_metadata::get_rule): New.
	(diagnostic_metadata::m_rules): New field.
	* diagnostic.cc (diagnostic_initialize): Initialize show_rules.
	(print_any_rules): New.
	(diagnostic_report_diagnostic): Call it.
	* diagnostic.h (diagnostic_context::show_rules): New field.
	* doc/invoke.texi (-fno-diagnostics-show-rules): New option.
	* opts.cc (common_handle_option): Handle
	OPT_fdiagnostics_show_rules.
	* toplev.cc (general_init): Set up global_dc->show_rules.

2022-06-23  Martin Liska  <mliska@suse.cz>

	PR c++/106062
	* ubsan.cc (sanitize_unreachable_fn): Change order of calls
	in order to initialize UBSAN built-ins.

2022-06-23  Martin Liska  <mliska@suse.cz>

	PR ipa/105600
	* ipa-icf.cc (sem_item_optimizer::filter_removed_items):
	Skip variables with body_removed.

2022-06-23  liuhongt  <hongtao.liu@intel.com>

	* config/i386/sse.md:(sse4_2_pcmpestr): Replace REGNO with
	reg_or_subregno.
	(sse4_2_pcmpistr): Ditto.

2022-06-23  Xionghu Luo  <xionghuluo@tencent.com>

	* cgraph.cc (cgraph_edge::redirect_call_stmt_to_callee): Fix
	typo.
	* tree-ssa-loop-ivopts.cc (struct iv_cand): Likewise.
	* tree-switch-conversion.h: Likewise.

2022-06-22  Jason Merrill  <jason@redhat.com>

	PR c++/104642
	* common.opt: Add -funreachable-traps.
	* doc/invoke.texi (-funreachable-traps): Document it.
	* opts.cc (finish_options): Enable at -O0 or -Og.
	* tree.cc (build_common_builtin_nodes): Add __builtin_trap.
	(builtin_decl_unreachable, build_builtin_unreachable): New.
	* tree.h: Declare them.
	* ubsan.cc (sanitize_unreachable_fn): Factor out.
	(ubsan_instrument_unreachable): Use
	gimple_build_builtin_unreachable.
	* ubsan.h (sanitize_unreachable_fn): Declare.
	* gimple.cc (gimple_build_builtin_unreachable): New.
	* gimple.h: Declare it.
	* builtins.cc (expand_builtin_unreachable): Add assert.
	(fold_builtin_0): Call build_builtin_unreachable.
	* sanopt.cc: Don't run for just SANITIZE_RETURN
	or SANITIZE_UNREACHABLE when trapping.
	* cgraphunit.cc (walk_polymorphic_call_targets): Use new
	unreachable functions.
	* gimple-fold.cc (gimple_fold_call)
	(gimple_get_virt_method_for_vtable)
	* ipa-fnsummary.cc (redirect_to_unreachable)
	* ipa-prop.cc (ipa_make_edge_direct_to_target)
	(ipa_impossible_devirt_target)
	* ipa.cc (walk_polymorphic_call_targets)
	* tree-cfg.cc (pass_warn_function_return::execute)
	(execute_fixup_cfg)
	* tree-ssa-loop-ivcanon.cc (remove_exits_and_undefined_stmts)
	(unloop_loops)
	* tree-ssa-sccvn.cc (eliminate_dom_walker::eliminate_stmt):
	Likewise.

2022-06-22  Richard Sandiford  <richard.sandiford@arm.com>

	PR tree-optimization/106019
	* tree-data-ref.cc (dr_may_alias_p): Try using the
	innermost_loop_behavior to disambiguate non-loop queries.

2022-06-22  Palmer Dabbelt  <palmer@rivosinc.com>

	* doc/invoke.texi (RISC-V): Document -mtune=thead-c906.

2022-06-22  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/xtensa.md (bswapsi2_internal):
	Enlarge the buffer that is obviously smaller than the template
	string given to sprintf().

2022-06-21  Roger Sayle  <roger@nextmovesoftware.com>
	    Marek Polacek  <polacek@redhat.com>
	    Segher Boessenkool  <segher@kernel.crashing.org>
	    Kewen Lin  <linkw@linux.ibm.com>

	PR target/105991
	* config/rs6000/rs6000.md (rotl<mode>3_insert_3): Check that
	exact_log2 doesn't return -1 (or zero).
	(plus_xor): New code iterator.
	(*rotl<mode>3_insert_3_<code>): New define_insn_and_split.

2022-06-21  Nathan Sidwell  <nathan@acm.org>

	* doc/invoke.texi (C++ Modules): Remove language-linkage
	as missing feature.

2022-06-21  Arjun Shankar  <arjun@redhat.com>

	PR tree-optimization/94899
	* match.pd (X + C < Y + C -> (signed) X < (signed) Y, if C is
	0x80000000): New simplification.

2022-06-21  Jakub Jelinek  <jakub@redhat.com>

	PR rtl-optimization/106032
	* ifcvt.cc (noce_try_sign_mask): Punt if !t_unconditional, and
	t may_trap_or_fault_p, even if it is cheap.

2022-06-21  Jakub Jelinek  <jakub@redhat.com>

	PR middle-end/106030
	* expr.cc (expand_cond_expr_using_cmove): Pass NULL_RTX instead of
	temp to expand_operands if mode has been promoted.

2022-06-21  Xionghu Luo  <xionghuluo@tencent.com>

	PR target/105740
	* gimple-if-to-switch.cc (find_conditions): Don't skip the first
	condition bb.

2022-06-21  Siddhesh Poyarekar  <siddhesh@gotplt.org>

	PR tree-optimization/105736
	* tree-object-size.cc (addr_object_size): Return size_unknown
	when object offset computation returns an error.

2022-06-20  H.J. Lu  <hjl.tools@gmail.com>

	PR target/105960
	* config/i386/i386.cc (ix86_function_ok_for_sibcall): Return
	false if PIC register is used when calling ifunc functions.

2022-06-20  Richard Biener  <rguenther@suse.de>

	PR middle-end/106027
	* fold-const.cc (fold_to_nonsharp_ineq_using_bound): Use the
	type of the prevailing comparison for the new comparison type.
	(fold_binary_loc): Use proper types for the A < X && A + 1 > Y
	to A < X && A >= Y folding.

2022-06-20  Kewen Lin  <linkw@linux.ibm.com>

	PR tree-optimization/105940
	* tree-vect-loop.cc (vect_analyze_loop_2): Add new parameter
	slp_done_for_suggested_uf and adjust with it accordingly.
	(vect_analyze_loop_1): Add new variable slp_done_for_suggested_uf,
	pass it down to vect_analyze_loop_2 for the initial analysis and
	applying suggested unroll factor.
	(vect_is_simple_reduction): Add parameter slp and adjust with it.
	(vect_analyze_scalar_cycles_1): Add parameter slp and pass down.
	(vect_analyze_scalar_cycles): Likewise.

2022-06-20  Martin Liska  <mliska@suse.cz>

	* bb-reorder.cc (find_traces_1_round): Add operators / and * and
	use them.
	(better_edge_p): Likewise.
	* cfgloop.cc (find_subloop_latch_edge_by_profile): Likewise.
	* cfgloopmanip.cc (scale_loop_profile): Likewise.
	* cfgrtl.cc (force_nonfallthru_and_redirect): Likewise.
	* cgraph.cc (cgraph_edge::maybe_hot_p): Likewise.
	* config/sh/sh.cc (expand_cbranchdi4): Likewise.
	* dojump.cc (do_compare_rtx_and_jump): Likewise.
	* final.cc (compute_alignments): Likewise.
	* ipa-cp.cc (update_counts_for_self_gen_clones): Likewise.
	(decide_about_value): Likewise.
	* ipa-inline-analysis.cc (do_estimate_edge_time): Likewise.
	* loop-unroll.cc (unroll_loop_runtime_iterations): Likewise.
	* modulo-sched.cc (sms_schedule): Likewise.
	* omp-expand.cc (extract_omp_for_update_vars): Likewise.
	(expand_omp_ordered_sink): Likewise.
	(expand_omp_for_ordered_loops): Likewise.
	(expand_omp_for_static_nochunk): Likewise.
	* predict.cc (maybe_hot_count_p): Likewise.
	(probably_never_executed): Likewise.
	(set_even_probabilities): Likewise.
	(handle_missing_profiles): Likewise.
	(expensive_function_p): Likewise.
	* profile-count.h: Likewise.
	* profile.cc (compute_branch_probabilities): Likewise.
	* stmt.cc (emit_case_dispatch_table): Likewise.
	* symtab-thunks.cc (expand_thunk): Likewise.
	* tree-ssa-loop-manip.cc (tree_transform_and_unroll_loop): Likewise.
	* tree-ssa-sink.cc (select_best_block): Likewise.
	* tree-switch-conversion.cc (switch_decision_tree::analyze_switch_statement): Likewise.
	(switch_decision_tree::balance_case_nodes): Likewise.
	(switch_decision_tree::emit_case_nodes): Likewise.
	* tree-vect-loop.cc (scale_profile_for_vect_loop): Likewise.

2022-06-20  yulong  <shiyulong@iscas.ac.cn>

	* config/riscv/riscv-builtins.cc (RISCV_ATYPE_VOID_PTR): New.
	* config/riscv/riscv-cmo.def (RISCV_BUILTIN): Changed the FUNCTION_TYPE
	of RISCV_BUILTIN.
	* config/riscv/riscv-ftypes.def (0): Remove unused.
	(1): New.

2022-06-19  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/xtensa.cc (xtensa_is_insn_L32R_p):
	Consider relaxed MOVI instructions as L32R.

2022-06-19  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/xtensa.cc (xtensa_emit_move_sequence):
	Use can_create_pseudo_p(), instead of using individual
	reload_in_progress and reload_completed.
	(xtensa_expand_block_set_small_loop): Use xtensa_simm8x256(),
	the existing predicate function.
	(xtensa_is_insn_L32R_p, gen_int_relational, xtensa_emit_sibcall):
	Use the standard RTX code predicate macros such as MEM_P,
	SYMBOL_REF_P and/or CONST_INT_P.
	* config/xtensa/xtensa.md: Avoid using numeric literals	to determine
	if callee-saved register, at the split patterns for indirect sibcall
	fixups.

2022-06-18  Jakub Jelinek  <jakub@redhat.com>

	* common.opt (flag_sanitize_trap): New variable.
	(fsanitize-trap=, fsanitize-trap): New options.
	(fsanitize-undefined-trap-on-error): Change into deprecated alias
	for -fsanitize-trap=all.
	* opts.h (struct sanitizer_opts_s): Add can_trap member.
	* opts.cc (finish_options): Complain about unsupported
	-fsanitize-trap= options.
	(sanitizer_opts): Add can_trap values to all entries.
	(get_closest_sanitizer_option): Ignore -fsanitize-trap=
	options which have can_trap false.
	(parse_sanitizer_options): Add support for -fsanitize-trap=.
	For -fsanitize-trap=all, enable
	SANITIZE_UNDEFINED | SANITIZE_UNDEFINED_NONDEFAULT.  Disallow
	-fsanitize-trap=vptr here.
	(common_handle_option): Handle OPT_fsanitize_trap_ and
	OPT_fsanitize_trap.
	* sanopt.cc (maybe_optimize_ubsan_null_ifn): Check
	flag_sanitize_trap & SANITIZE_{NULL,ALIGNMENT} instead of
	flag_sanitize_undefined_trap_on_error.
	* gcc.cc (sanitize_spec_function): Use
	flag_sanitize & ~flag_sanitize_trap instead of flag_sanitize
	and drop use of flag_sanitize_undefined_trap_on_error in
	"undefined" handling.
	* ubsan.cc (ubsan_instrument_unreachable): Use
	flag_sanitize_trap & SANITIZE_??? instead of
	flag_sanitize_undefined_trap_on_error.
	(ubsan_expand_bounds_ifn, ubsan_expand_null_ifn,
	ubsan_expand_objsize_ifn, ubsan_expand_ptr_ifn,
	ubsan_build_overflow_builtin, instrument_bool_enum_load,
	ubsan_instrument_float_cast, instrument_nonnull_arg,
	instrument_nonnull_return, instrument_builtin): Likewise.
	* doc/invoke.texi (-fsanitize-trap=, -fsanitize-trap): Document.
	(-fsanitize-undefined-trap-on-error): Document as deprecated
	alias of -fsanitize-trap.

2022-06-18  Jakub Jelinek  <jakub@redhat.com>

	PR middle-end/105998
	* varasm.cc (narrowing_initializer_constant_valid_p): Check
	SCALAR_INT_MODE_P instead of INTEGRAL_MODE_P, also break on
	! INTEGRAL_TYPE_P and do the same check also on op{0,1}'s type.

2022-06-18  Roger Sayle  <roger@nextmovesoftware.com>

	PR tree-optimization/105835
	* match.pd (convert (mult zero_one_valued_p@1 INTEGER_CST@2)):
	Narrow integer multiplication by a zero_one_valued_p operand.
	(convert (cond @1 INTEGER_CST@2 INTEGER_CST@3)): Push integer
	conversions inside COND_EXPR where both data operands are
	integer constants.

2022-06-18  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/constraints.md (Y):
	Change to include integer constants until reload begins.
	* config/xtensa/predicates.md (move_operand): Ditto.
	* config/xtensa/xtensa.cc (xtensa_emit_move_sequence):
	Change to allow storing integer constants into litpool only after
	reload begins.

2022-06-17  Uroš Bizjak  <ubizjak@gmail.com>

	PR target/105209
	* config/alpha/alpha-protos.h (alpha_store_data_bypass_p): New.
	* config/alpha/alpha.cc (alpha_store_data_bypass_p): New function.
	(alpha_store_data_bypass_p_1): Ditto.
	* config/alpha/ev4.md: Use alpha_store_data_bypass_p instead
	of generic store_data_bypass_p.
	(ev4_ist_c): Remove insn reservation.

2022-06-17  Uroš Bizjak  <ubizjak@gmail.com>

	PR target/105970
	* config/i386/i386.cc (ix86_function_arg): Assert that
	the mode of pointer argumet is equal to ptr_mode, not Pmode.

2022-06-17  Uroš Bizjak  <ubizjak@gmail.com>

	PR target/105993
	* config/i386/sse.md (vpmov splitter): Use (match_dup ...)
	instead of REGNO comparisons in combine splitter.

2022-06-17  Segher Boessenkool  <segher@kernel.crashing.org>

	* config/rs6000/rs6000.cc (rs6000_invalid_conversion): Correct some
	types.

2022-06-17  Kito Cheng  <kito.cheng@sifive.com>

	* config/riscv/bitmanip.md: Supress warning.

2022-06-17  Richard Earnshaw  <rearnsha@arm.com>

	PR target/106004
	* config/arm/arm.cc (arm_print_operand, case 'V'): Use UINTVAL.
	Clear bits in the mask above bit 31.

2022-06-17  Richard Earnshaw  <rearnsha@arm.com>

	* config/arm/mve.md (*mve_mov<mode>): Re-order constraints
	to avoid spilling trivial literals to the constant pool.

2022-06-16  David Malcolm  <dmalcolm@redhat.com>

	* gimple-ssa-warn-access.cc (warn_string_no_nul): Add
	auto_diagnostic_group to group any warning with its note.
	(maybe_warn_for_bound): Likewise.
	(check_access): Likewise.
	(warn_dealloc_offset): Likewise.
	(pass_waccess::maybe_warn_memmodel): Likewise.
	(pass_waccess::maybe_check_dealloc_call): Likewise.
	(pass_waccess::warn_invalid_pointer): Likewise.
	(pass_waccess::check_dangling_stores): Likewise.

2022-06-16  Jason Merrill  <jason@redhat.com>

	* opts.cc (common_handle_option) [OPT_fsanitize_]: Set
	opts_set->x_flag_sanitize.

2022-06-16  Jason Merrill  <jason@redhat.com>

	* flags.h (issue_strict_overflow_warning): Comment #endif.

2022-06-16  Andrew MacLeod  <amacleod@redhat.com>

	* gimple-range-cache.cc (ranger_cache::apply_inferred_ranges): If name
	was invaraint before, clear the invariant bit.
	* gimple-range-gori.cc (gori_map::set_range_invariant): Add a flag.
	* gimple-range-gori.h (gori_map::set_range_invariant): Adjust prototype.

2022-06-16  Andrew MacLeod  <amacleod@redhat.com>

	* tree-ssa-propagate.cc (before_dom_children): Call value_of_stmt.

2022-06-16  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/105983
	* match.pd (y == XXX_MIN || x < y -> x <= y - 1,
	y != XXX_MIN && x >= y -> x > y - 1): Use :cs instead of :s
	on non-equality comparisons.

2022-06-16  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/105984
	* match.pd (__builtin_mul_overflow_p (x, cst, (stype) 0) ->
	x > stype_max / cst || x < stype_min / cst): fold_convert @1
	to TREE_TYPE (@0) just once and test for negative divisor
	also on that folded constant instead of on @1.

2022-06-16  Jakub Jelinek  <jakub@redhat.com>

	PR middle-end/105951
	* tree-ssa-ccp.cc (optimize_atomic_bit_test_and,
	optimize_atomic_op_fetch_cmp_0): Remember gimple_call_fn (call)
	as last argument to the internal functions.
	* builtins.cc (expand_ifn_atomic_bit_test_and): Adjust for the
	extra call argument to ifns.  If expand_atomic_fetch_op fails for the
	lhs == NULL_TREE case, fall through into the optab code with
	gen_reg_rtx (mode) as target.  If second expand_atomic_fetch_op
	fails, construct a CALL_EXPR and expand that.
	(expand_ifn_atomic_op_fetch_cmp_0): Adjust for the extra call argument
	to ifns.  If expand_atomic_fetch_op fails, construct a CALL_EXPR and
	expand that.

2022-06-16  Haochen Gui  <guihaoc@gcc.gnu.org>

	PR target/103316
	* config/rs6000/rs6000-builtin.cc (rs6000_gimple_fold_builtin): Enable
	gimple folding for RS6000_BIF_VCMPEQUT, RS6000_BIF_VCMPNET,
	RS6000_BIF_CMPGE_1TI, RS6000_BIF_CMPGE_U1TI, RS6000_BIF_VCMPGTUT,
	RS6000_BIF_VCMPGTST, RS6000_BIF_CMPLE_1TI, RS6000_BIF_CMPLE_U1TI.
	* config/rs6000/vector.md (VEC_IC): New mode iterator.  Add support
	for new Power10 V1TI instructions.
	(vec_cmp<mode><mode>): Set mode iterator to VEC_IC.
	(vec_cmpu<mode><mode>): Likewise.
	(vector_nlt<mode>): Set mode iterator to VEC_IC.
	(vector_nltv1ti): Remove.
	(vector_gtu<mode>): Set mode iterator to VEC_IC.
	(vector_gtuv1ti): Remove.
	(vector_nltu<mode>): Set mode iterator to VEC_IC.
	(vector_nltuv1ti): Remove.
	(vector_geu<mode>): Set mode iterator to VEC_IC.
	(vector_ngt<mode>): Likewise.
	(vector_ngtv1ti): Remove.
	(vector_ngtu<mode>): Set mode iterator to VEC_IC.
	(vector_ngtuv1ti): Remove.
	(vector_gtu_<mode>_p): Set mode iterator to VEC_IC.
	(vector_gtu_v1ti_p): Remove.
	(vrotl<mode>3): Set mode iterator to VEC_IC.  Emit insns for V1TI.
	(vrotlv1ti3): Remove.
	(vashr<mode>3): Set mode iterator to VEC_IC.  Emit insns for V1TI.
	(vashrv1ti3): Remove.

2022-06-16  Martin Liska  <mliska@suse.cz>

	* gengtype-state.cc (read_a_state_token): Do not skip extra
	character after escaped sequence.

2022-06-16  Martin Liska  <mliska@suse.cz>

	PR driver/105564
	* spellcheck.cc (test_find_closest_string): Add new test.
	* spellcheck.h (class best_match): Prefer a difference in
	trailing sign symbol.

2022-06-16  liuhongt  <hongtao.liu@intel.com>

	PR tree-optimization/53533
	* match.pd: Simplify (B * v + C) * D -> BD * v + CD and
	(v + B) * C + D -> C * v + BCD when B,C,D are all INTEGER_CST,
	and there's no overflow or !TYPE_OVERFLOW_UNDEFINED.

2022-06-15  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/xtensa.md (DSC): New split pattern and mode iterator.

2022-06-15  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/predicates.md (reload_operand):
	New predicate.
	* config/xtensa/xtensa.md: New peephole2 pattern.

2022-06-15  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/xtensa.md (*round_up_to_even):
	New insn-and-split pattern.
	(*signed_ge_zero): Ditto.

2022-06-15  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/xtensa-protos.h (xtensa_prepare_expand_call,
	xtensa_emit_sibcall): New prototypes.
	(xtensa_expand_epilogue): Add new argument that specifies whether
	or not sibling call.
	* config/xtensa/xtensa.cc (TARGET_FUNCTION_OK_FOR_SIBCALL):
	New macro definition.
	(xtensa_prepare_expand_call): New function in order to share
	the common code.
	(xtensa_emit_sibcall, xtensa_function_ok_for_sibcall):
	New functions.
	(xtensa_expand_epilogue): Add new argument sibcall_p and use it
	for sibling call handling.
	* config/xtensa/xtensa.md (call, call_value):
	Use xtensa_prepare_expand_call.
	(call_internal, call_value_internal):
	Add the condition in order to be disabled if sibling call.
	(sibcall, sibcall_value, sibcall_epilogue): New expansions.
	(sibcall_internal, sibcall_value_internal): New insn patterns,
	and split ones in order to take care of the indirect sibcalls.

2022-06-15  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* doc/invoke.texi: Document -mextra-l32r-costs= option.

2022-06-15  David Malcolm  <dmalcolm@redhat.com>

	PR analyzer/105962
	* doc/invoke.texi: Add -fno-analyzer-undo-inlining.
	* tree-diagnostic-path.cc (default_tree_diagnostic_path_printer):
	Extend -fdiagnostics-path-format=separate-events so that with
	-fdiagnostics-show-path-depths it prints fndecls as well as stack
	depths.

2022-06-15  David Malcolm  <dmalcolm@redhat.com>

	* value-relation.h: Add "final" and "override" to relation_oracle
	vfunc implementations as appropriate.

2022-06-15  Richard Sandiford  <richard.sandiford@arm.com>

	PR middle-end/105975
	Revert everything apart from the expand_fn_using_insn and
	expand_direct_optab_fn changes from:
	* internal-fn.def (DEF_INTERNAL_INSN_FN): New macro.
	(GOMP_SIMT_ENTER_ALLOC, GOMP_SIMT_EXIT, GOMP_SIMT_LANE)
	(GOMP_SIMT_LAST_LANE, GOMP_SIMT_ORDERED_PRED, GOMP_SIMT_VOTE_ANY)
	(GOMP_SIMT_XCHG_BFLY, GOMP_SIMT_XCHG_IDX): Use it.
	* internal-fn.h (direct_internal_fn_info::directly_mapped): New
	member variable.
	(direct_internal_fn_info::vectorizable): Reduce to 1 bit.
	(direct_internal_fn_p): Also return true for internal functions
	that map directly to instructions defined target-insns.def.
	(direct_internal_fn): Adjust comment accordingly.
	* internal-fn.cc (direct_insn, optab1, optab2, vectorizable_optab1)
	(vectorizable_optab2): New local macros.
	(not_direct): Initialize directly_mapped.
	(mask_load_direct, load_lanes_direct, mask_load_lanes_direct)
	(gather_load_direct, len_load_direct, mask_store_direct)
	(store_lanes_direct, mask_store_lanes_direct, vec_cond_mask_direct)
	(vec_cond_direct, scatter_store_direct, len_store_direct)
	(vec_set_direct, unary_direct, binary_direct, ternary_direct)
	(cond_unary_direct, cond_binary_direct, cond_ternary_direct)
	(while_direct, fold_extract_direct, fold_left_direct)
	(mask_fold_left_direct, check_ptrs_direct): Use the macros above.
	(expand_GOMP_SIMT_ENTER_ALLOC, expand_GOMP_SIMT_EXIT): Delete
	(expand_GOMP_SIMT_LANE, expand_GOMP_SIMT_LAST_LANE): Likewise;
	(expand_GOMP_SIMT_ORDERED_PRED, expand_GOMP_SIMT_VOTE_ANY): Likewise.
	(expand_GOMP_SIMT_XCHG_BFLY, expand_GOMP_SIMT_XCHG_IDX): Likewise.
	(direct_internal_fn_types): Handle functions that map to instructions
	defined in target-insns.def.
	(direct_internal_fn_types): Likewise.
	(direct_internal_fn_supported_p): Likewise.
	(internal_fn_expanders): Likewise.
	(expand_fn_using_insn): New function,
	split out and adapted from...
	(expand_direct_optab_fn): ...here.
	(expand_GOMP_SIMT_ENTER_ALLOC): Use it.
	(expand_GOMP_SIMT_EXIT): Likewise.
	(expand_GOMP_SIMT_LANE): Likewise.
	(expand_GOMP_SIMT_LAST_LANE): Likewise.
	(expand_GOMP_SIMT_ORDERED_PRED): Likewise.
	(expand_GOMP_SIMT_VOTE_ANY): Likewise.
	(expand_GOMP_SIMT_XCHG_BFLY): Likewise.
	(expand_GOMP_SIMT_XCHG_IDX): Likewise.

2022-06-15  Richard Earnshaw  <rearnsha@arm.com>

	PR target/105981
	* config/arm/arm.cc (gen_cpymem_ldrd_strd): Rename low_reg and hi_reg
	to first_reg and second_reg respectively.  Initialize them correctly
	when generating big-endian code.

2022-06-15  Richard Earnshaw  <rearnsha@arm.com>

	PR target/105974
	* config/arm/arm.cc (arm_bfi_1_p): Use UINTVAL instead of XUINT.

2022-06-15  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/105971
	* tree-ssa-alias.cc (refs_may_alias_p_2): Put bail-out for
	FUNCTION_DECL and LABEL_DECL refs after decl-decl disambiguation
	to leak less surprising alias results.

2022-06-15  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/105969
	* gimple-ssa-sprintf.cc (get_origin_and_offset_r): Avoid division
	by zero in overflow check.

2022-06-15  Richard Sandiford  <richard.sandiford@arm.com>

	PR tree-optimization/105254
	PR tree-optimization/105940
	Revert:
	* config/aarch64/aarch64.cc
	(aarch64_vector_costs::determine_suggested_unroll_factor): Take a
	loop_vec_info as argument.  Restrict the unroll factor to values
	that divide the VF.
	(aarch64_vector_costs::finish_cost): Update call accordingly.

2022-06-15  Richard Sandiford  <richard.sandiford@arm.com>

	* read-rtl.cc (find_int): Substitute symbolic constants
	before converting the string to an integer.

2022-06-15  Roger Sayle  <roger@nextmovesoftware.com>
	    Richard Biener  <rguenther@suse.de>

	* match.pd (convert (lshift @1 INTEGER_CST@2)): Narrow integer
	left shifts by a constant when the result is truncated, and the
	shift constant is well-defined.
	* tree-vect-patterns.cc (vect_recog_rotate_pattern): Add
	support for rotations of signed integer types, by lowering
	using unsigned vector shifts.

2022-06-15  liuhongt  <hongtao.liu@intel.com>

	PR target/105953
	* config/i386/sse.md (*avx_cmp<mode>3_ltint_not): Force_reg
	operands[3].

2022-06-14  Surya Kumari Jangala  <jskumari@linux.ibm.com>

	PR rtl-optimization/105041
	* regrename.cc (check_new_reg_p): Use nregs value from du chain.

2022-06-14  Segher Boessenkool  <segher@kernel.crashing.org>

	* config/rs6000/vsx.md (VS_scalar): Delete.
	(rest of file): Adjust.

2022-06-14  Jan Hubicka  <hubicka@ucw.cz>

	PR ipa/105739
	* ipa-prop.cc (ipa_load_from_parm_agg): Punt on volatile loads.

2022-06-14  Philipp Tomsich  <philipp.tomsich@vrull.eu>

	* config/riscv/bitmanip.md: Add split to handle opportunities
	for slli + sh[123]add.uw

2022-06-14  Philipp Tomsich  <philipp.tomsich@vrull.eu>

	* config/riscv/predicates.md (consecutive_bits_operand):
	Implement new predicate.

2022-06-14  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/105946
	* tree-ssa-uninit.cc (maybe_warn_pass_by_reference):
	Do not look at arguments not specified in the function call.

2022-06-14  Richard Biener  <rguenther@suse.de>

	PR middle-end/105965
	* match.pd (view_convert CONSTRUCTOR): Handle single-element
	CTOR case.

2022-06-14  Eric Botcazou  <ebotcazou@adacore.com>

	* warning-control.cc (copy_warning) [generic version]: Do not erase
	the warning data of the destination location when the no-warning
	bit is not set on the source.
	(copy_warning) [tree version]: Return early if TO is equal to FROM.
	(copy_warning) [gimple version]: Likewise.

2022-06-14  Kewen Lin  <linkw@linux.ibm.com>

	PR tree-optimization/105940
	* tree-vect-loop.cc (vect_analyze_loop_2): Move the place of
	applying suggested_unroll_factor after start_over.

2022-06-14  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/predicates.md (shifted_mask_operand):
	New predicate.
	* config/xtensa/xtensa.md (*andsi3_const_pow2_minus_one):
	New insn-and-split pattern.
	(*andsi3_const_negative_pow2, *andsi3_const_shifted_mask,
	*masktrue_const_pow2_minus_one, *masktrue_const_negative_pow2,
	*masktrue_const_shifted_mask): Ditto.

2022-06-14  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/xtensa.md (*masktrue_bitcmpl): New insn pattern.

2022-06-14  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/xtensa-protos.h (xtensa_emit_branch):
	Remove the first argument.
	(xtensa_emit_bit_branch): Remove it because now called only from the
	output statement of *bittrue insn pattern.
	* config/xtensa/xtensa.cc (gen_int_relational): Remove the last
	argument 'p_invert', and make so that the condition is reversed by
	itself as needed.
	(xtensa_expand_conditional_branch): Share the common path, and remove
	condition inversion code.
	(xtensa_emit_branch, xtensa_emit_movcc): Simplify by removing the
	"false side" pattern.
	(xtensa_emit_bit_branch): Remove it because of the abovementioned
	reason, and move the function body to *bittrue insn pattern.
	* config/xtensa/xtensa.md (*bittrue): Transplant the output
	statement from removed xtensa_emit_bit_branch().
	(*bfalse, *ubfalse, *bitfalse, *maskfalse): Remove the "false side"
	insn patterns.

2022-06-14  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/predicates.md (logical_shift_operator,
	xtensa_shift_per_byte_operator): New predicates.
	* config/xtensa/xtensa-protos.h (xtensa_shlrd_which_direction):
	New prototype.
	* config/xtensa/xtensa.cc (xtensa_shlrd_which_direction):
	New helper function for funnel shift patterns.
	* config/xtensa/xtensa.md (ior_op): New code iterator.
	(*ashlsi3_1): Replace with new split pattern.
	(*shift_per_byte): Unify *ashlsi3_3x, *ashrsi3_3x and *lshrsi3_3x.
	(*shift_per_byte_omit_AND_0, *shift_per_byte_omit_AND_1):
	New insn-and-split patterns that redirect to *xtensa_shift_per_byte,
	in order to omit unnecessary bitwise AND operation.
	(*shlrd_reg_<code>, *shlrd_const_<code>, *shlrd_per_byte_<code>,
	*shlrd_per_byte_<code>_omit_AND):
	New insn patterns for funnel shifts.

2022-06-13  Jason Merrill  <jason@redhat.com>

	* tree-cfg.cc (pass_warn_function_return::execute): Also check
	BUILT_IN_TRAP.

2022-06-13  Maciej W. Rozycki  <macro@embecosm.com>

	* config/riscv/riscv.md (length): Remove the explicit setting
	for "fcmp".

2022-06-13  H.J. Lu  <hjl.tools@gmail.com>

	* common/config/i386/cpuinfo.h (get_available_features): Require
	AVX for F16C and VAES.

2022-06-13  Uroš Bizjak  <ubizjak@gmail.com>

	PR target/105927
	* config/i386/predicates.md (register_no_elim_operand):
	Return true for subreg of a memory operand.

2022-06-13  Richard Sandiford  <richard.sandiford@arm.com>

	* internal-fn.def (DEF_INTERNAL_INSN_FN): New macro.
	(GOMP_SIMT_ENTER_ALLOC, GOMP_SIMT_EXIT, GOMP_SIMT_LANE)
	(GOMP_SIMT_LAST_LANE, GOMP_SIMT_ORDERED_PRED, GOMP_SIMT_VOTE_ANY)
	(GOMP_SIMT_XCHG_BFLY, GOMP_SIMT_XCHG_IDX): Use it.
	* internal-fn.h (direct_internal_fn_info::directly_mapped): New
	member variable.
	(direct_internal_fn_info::vectorizable): Reduce to 1 bit.
	(direct_internal_fn_p): Also return true for internal functions
	that map directly to instructions defined target-insns.def.
	(direct_internal_fn): Adjust comment accordingly.
	* internal-fn.cc (direct_insn, optab1, optab2, vectorizable_optab1)
	(vectorizable_optab2): New local macros.
	(not_direct): Initialize directly_mapped.
	(mask_load_direct, load_lanes_direct, mask_load_lanes_direct)
	(gather_load_direct, len_load_direct, mask_store_direct)
	(store_lanes_direct, mask_store_lanes_direct, vec_cond_mask_direct)
	(vec_cond_direct, scatter_store_direct, len_store_direct)
	(vec_set_direct, unary_direct, binary_direct, ternary_direct)
	(cond_unary_direct, cond_binary_direct, cond_ternary_direct)
	(while_direct, fold_extract_direct, fold_left_direct)
	(mask_fold_left_direct, check_ptrs_direct): Use the macros above.
	(expand_GOMP_SIMT_ENTER_ALLOC, expand_GOMP_SIMT_EXIT): Delete
	(expand_GOMP_SIMT_LANE, expand_GOMP_SIMT_LAST_LANE): Likewise;
	(expand_GOMP_SIMT_ORDERED_PRED, expand_GOMP_SIMT_VOTE_ANY): Likewise.
	(expand_GOMP_SIMT_XCHG_BFLY, expand_GOMP_SIMT_XCHG_IDX): Likewise.
	(direct_internal_fn_types): Handle functions that map to instructions
	defined in target-insns.def.
	(direct_internal_fn_types): Likewise.
	(direct_internal_fn_supported_p): Likewise.
	(internal_fn_expanders): Likewise.

2022-06-13  Richard Sandiford  <richard.sandiford@arm.com>

	* internal-fn.cc (expand_fn_using_insn): New function,
	split out and adapted from...
	(expand_direct_optab_fn): ...here.
	(expand_GOMP_SIMT_ENTER_ALLOC): Use it.
	(expand_GOMP_SIMT_EXIT): Likewise.
	(expand_GOMP_SIMT_LANE): Likewise.
	(expand_GOMP_SIMT_LAST_LANE): Likewise.
	(expand_GOMP_SIMT_ORDERED_PRED): Likewise.
	(expand_GOMP_SIMT_VOTE_ANY): Likewise.
	(expand_GOMP_SIMT_XCHG_BFLY): Likewise.
	(expand_GOMP_SIMT_XCHG_IDX): Likewise.

2022-06-13  Jakub Jelinek  <jakub@redhat.com>

	* omp-expand.cc (expand_omp_target): Remap user provided
	device clause arguments, -1 to -2 and -2 to -3, either
	at compile time if constant, or at runtime.

2022-06-13  Eric Botcazou  <ebotcazou@adacore.com>

	* common.opt (finstrument-functions): Set explicit value.
	(-finstrument-functions-once): New option.
	* doc/invoke.texi (Program Instrumentation Options): Document it.
	* gimplify.cc (build_instrumentation_call): New static function.
	(gimplify_function_tree): Call it to emit the instrumentation calls
	if -finstrument-functions[-once] is specified.

2022-06-13  Eric Botcazou  <ebotcazou@adacore.com>

	* dwarf2out.cc (output_one_line_info_table): Initialize prev_addr.
	* gimple.h (gimple_set_location): Do not copy warning data from
	the previous location when it is UNKNOWN_LOCATION.
	* optabs.cc (expand_widen_pattern_expr): Always set oprnd{1,2}.

2022-06-13  Jakub Jelinek  <jakub@redhat.com>

	PR target/105911
	* config/i386/i386.md (*ashl<dwi>3_doubleword_mask,
	*<insn><dwi>3_doubleword_mask): Use operands[3] masked with
	(<MODE_SIZE> * BITS_PER_UNIT) - 1 as AND operand instead of
	operands[3] unmodified.

2022-06-12  Simon Wright  <simon@pushface.org>

	PR target/104871
	* config/darwin-driver.cc (darwin_find_version_from_kernel): If the OS
	version is darwin20 (macOS 11) or greater, truncate the version to the
	major number.

2022-06-12  Mark Mentovai  <mark@mentovai.com>

	* config/darwin-c.cc: Make -mmacosx-version-min more future-proof.

2022-06-12  Prathamesh Kulkarni  <prathamesh.kulkarni@linaro.org>

	PR target/96463
	* config/aarch64/aarch64-sve-builtins-base.cc: Include ssa.h.
	(svld1rq_impl::fold): Define.
	* config/aarch64/aarch64.cc (expand_vec_perm_d): Define new members
	op_mode and op_vec_flags.
	(aarch64_evpc_reencode): Initialize newd.op_mode and
	newd.op_vec_flags.
	(aarch64_evpc_sve_dup): New function.
	(aarch64_expand_vec_perm_const_1): Gate existing calls to
	aarch64_evpc_* functions under d->vmode == d->op_mode,
	and call aarch64_evpc_sve_dup.
	(aarch64_vectorize_vec_perm_const): Remove assert
	d->vmode != d->op_mode, and initialize d.op_mode and d.op_vec_flags.
	* tree-cfg.cc (verify_gimple_assign_ternary): Allow different
	vector types for lhs and rhs in VEC_PERM_EXPR if rhs3 is
	constant.

2022-06-11  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/xtensa-protos.h (xtensa_constantsynth):
	New prototype.
	* config/xtensa/xtensa.cc (xtensa_emit_constantsynth,
	xtensa_constantsynth_2insn, xtensa_constantsynth_rtx_SLLI,
	xtensa_constantsynth_rtx_ADDSUBX, xtensa_constantsynth):
	New backend functions that process the abovementioned logic.
	(xtensa_emit_move_sequence): Revert the previous changes.
	* config/xtensa/xtensa.md: New split patterns for integer
	and floating-point, as the frontend part.

2022-06-11  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/xtensa.cc (xtensa_rtx_costs): Correct wrong case
	for ABS and NEG, add missing case for BSWAP and CLRSB, and
	double the costs for integer divisions using libfuncs if
	optimizing for speed, in order to take advantage of fast constant
	division by multiplication.
	(TARGET_INSN_COST): New macro definition.
	(xtensa_is_insn_L32R_p, xtensa_insn_cost): New functions for
	calculating relative costs of a RTL insns, for both of speed and
	size.
	* config/xtensa/xtensa.md (return, nop, trap): Correct values of
	the attribute "length" that depends on TARGET_DENSITY.
	(define_asm_attributes, blockage, frame_blockage): Add missing
	attributes.
	* config/xtensa/xtensa.opt (-mextra-l32r-costs=): New machine-
	dependent option, however, preparatory work for now.

2022-06-11  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/xtensa.cc (xtensa_expand_block_set_small_loop):
	Pass through the block length / loop count conditions if
	zero-overhead looping is configured and active,

2022-06-11  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/xtensa.md (mulsidi3, umulsidi3):
	Split into individual signedness, in order to use libcall
	"__umulsidi3" but not the other.
	(<u>mulhisi3): Merge into one by using code iterator.
	(<u>mulsidi3, mulhisi3, umulhisi3): Remove.

2022-06-11   Michael Meissner  <meissner@linux.ibm.com>

	* config/rs6000/rs6000.cc (rs6000_option_override_internal): Do
	not generate block copies with vector pair instructions if we are
	tuning for power10.

2022-06-10  Roger Sayle  <roger@nextmovesoftware.com>

	PR rtl-optimization/7061
	* expr.cc (emit_group_store): For groups that consist of a single
	scalar integer register that hold a complex mode value, use
	gen_lowpart to generate a SUBREG to "view_convert" to the complex
	mode.  For modes of different sizes, first convert to an integer
	mode of the appropriate size.

2022-06-09  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/xtensa.md (clrsbsi2): New insn pattern.

2022-06-09  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/xtensa.md (*andsi3_bitcmpl):
	New insn_and_split pattern.

2022-06-09  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/xtensa.md (one_cmplsi2):
	Rearrange as an insn_and_split pattern.

2022-06-09  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/xtensa.md (bswaphi2): New insn pattern.

2022-06-09  Segher Boessenkool  <segher@kernel.crashing.org>

	* config/rs6000/rs6000.md (FP_ISA3): Delete.
	(float<QHI:mode><FP_ISA3:mode>2): Rename to...
	(float<QHI:mode><SFDF:mode>2): ... this.  Adjust.
	(*float<QHI:mode><FP_ISA3:mode>2_internal): Rename to...
	(*float<QHI:mode><SFDF:mode>2_internal): ... this.  Adjust.
	(floatuns<QHI:mode><FP_ISA3:mode>2): Rename to...
	(floatuns<QHI:mode><SFDF:mode>2): ... this.  Adjust.
	(*floatuns<QHI:mode><FP_ISA3:mode>2_internal): Rename to...
	(*floatuns<QHI:mode><SFDF:mode>2_internal): ... this.  Adjust.

2022-06-09  Maciej W. Rozycki  <macro@embecosm.com>

	* config/riscv/riscv.md
	(*f<quiet_pattern>_quiet<ANYF:mode><X:mode>4_default)
	(*f<quiet_pattern>_quiet<ANYF:mode><X:mode>4_snan): Emit a tab
	rather than space with FSFLAGS.

2022-06-09  Tobias Burnus  <tobias@codesourcery.com>

	* omp-offload.cc (omp_discover_declare_target_tgt_fn_r,
	omp_discover_declare_target_fn_r): Don't walk reverse-offload
	target regions.

2022-06-09  Jakub Jelinek  <jakub@redhat.com>

	* doc/invoke.texi (-Waddress): Fix a typo in small example.
	Fix typos inptr_t -> intptr_t and uinptr_t -> uintptr_t.

2022-06-09  Cui,Lili  <lili.cui@intel.com>

	PR target/105493
	* config/i386/x86-tune-costs.h (skylake_cost): Raise the gpr load cost
	from 4 to 6 and gpr store cost from 6 to 8. Change SSE loads and
	unaligned loads cost from {6, 6, 6, 10, 20} to {8, 8, 8, 8, 16}.
	(icelake_cost): Ditto.
	(alderlake_cost): Raise the gpr store cost from 6 to 8 and SSE loads,
	stores and unaligned stores cost from {6, 6, 6, 10, 15} to
	{8, 8, 8, 10, 15}.

2022-06-09  Haochen Gui  <guihaoc@gcc.gnu.org>

	* config/rs6000/rs6000.md (define_split for bswapdi load): Merge shift
	and ior insns to one rotate and mask insn.
	(define_split for bswapdi register): Likewise.

2022-06-08  Roger Sayle  <roger@nextmovesoftware.com>

	PR middle-end/105874
	* expr.cc (expand_expr_real_1) <normal_inner_ref>:  New local
	variable tem_modifier for calculating the expand_modifier enum to
	use for expanding tem.  If tem is a VAR_DECL, use EXPAND_MEMORY.

2022-06-08  Max Filippov  <jcmvbkbc@gmail.com>

	PR target/105879
	* config/xtensa/xtensa.md (movdi): Rename 'first' and 'second'
	to 'lowpart' and 'highpart' so that they match 'gen_lowpart' and
	'gen_highpart' bitwise semantics and fix order of highpart and
	lowpart depending on target endianness.

2022-06-08  Chung-Ju Wu  <jasonwucj@gmail.com>

	* config/arm/arm-cpus.in (star-mc1): New cpu.
	* config/arm/arm-tables.opt: Regenerate.
	* config/arm/arm-tune.md: Regenerate.
	* doc/invoke.texi: Update docs.

2022-06-08  liuhongt  <hongtao.liu@intel.com>

	PR target/105513
	PR target/105504
	* config/i386/i386.md (*movsi_internal): Change alternative
	from *v to ?v.
	(*movdi_internal): Ditto.
	* config/i386/sse.md (vec_set<mode>_0): Change alternative *r
	to ?r.
	(*vec_extractv4sf_mem): Ditto.
	(*vec_extracthf): Ditto.

2022-06-07  Richard Earnshaw  <rearnsha@arm.com>

	PR target/105090
	* config/arm/arm.cc (arm_bfi_1_p): New function.
	(arm_bfi_p): New function.
	(arm_rtx_costs_internal): Add costs for BFI idioms.
	(arm_print_operand [case 'V']): Format output for BFI/BFC masks.
	* config/arm/constraints.md (Dj): New constraint.
	* config/arm/arm.md (arm_andsi3_insn): Add alternative to use BFC.
	(insv_zero): Convert to an insn with a split.
	(*bfi, *bfi_alt1, *bfi_alt2, *bfi_alt3): New patterns.

2022-06-07  liuhongt  <hongtao.liu@intel.com>

	PR target/105854
	* config/i386/sse.md (ssse3_palignrdi): Change alternative 2
	from Yv to Yw.

2022-06-07  Roger Sayle  <roger@nextmovesoftware.com>

	PR middle-end/105853
	PR target/105856
	* calls.cc (load_register_parameters): Call store_constructor
	and int_expr_size directly instead of expanding via expand_expr.
	* expr.cc (static void store_constructor): Don't prototype here.
	(static HOST_WIDE_INT int_expr_size): Likewise.
	(store_constructor): No longer static.
	(int_expr_size): Likewise, no longer static.
	* expr.h (store_constructor): Prototype here.
	(int_expr_size): Prototype here.

2022-06-07  Jan Beulich  <jbeulich@suse.com>

	Revert:
	2022-06-03  Jan Beulich  <jbeulich@suse.com>

	* Makefile.in (ORIGINAL_OBJCOPY_FOR_TARGET): New.
	* configure.ac: Check for objcopy, producing
	ORIGINAL_OBJCOPY_FOR_TARGET.
	* configure: Update accordingly.
	* exec-tool.in (ORIGINAL_OBJCOPY_FOR_TARGET): New.
	Handle objcopy.

2022-06-07  Jakub Jelinek  <jakub@redhat.com>

	* tree.h (OMP_CLAUSE_LINEAR_OLD_LINEAR_MODIFIER): Define.
	* tree-pretty-print.cc (dump_omp_clause) <case OMP_CLAUSE_LINEAR>:
	Adjust clause printing style depending on
	OMP_CLAUSE_LINEAR_OLD_LINEAR_MODIFIER.

2022-06-07  Jan Beulich  <jbeulich@suse.com>

	* config/i386/i386-builtin.def (__builtin_ia32_psadbw256):
	Change type.
	* config/i386/i386-builtin-types.def: New function type
	(V4DI, V32QI, V32QI).
	* config/i386/i386-expand.cc (ix86_expand_args_builtin): Handle
	V4DI_FTYPE_V32QI_V32QI.

2022-06-07  Jan Beulich  <jbeulich@suse.com>

	* config/i386/i386.cc (ix86_attr_length_vex_default): Take REX.B
	into account for reg-only insns.

2022-06-07  Roger Sayle  <roger@nextmovesoftware.com>

	* config/i386/i386.cc (ix86_rtx_costs): Add a new case for
	IF_THEN_ELSE, and provide costs for TARGET_XOP's vpcmov and
	TARGET_CMOVE's (scalar integer) conditional moves.
	* config/i386/sse.md (define_split): Recognize XOP's vpcmov
	from its equivalent (canonical) pxor;pand;pxor sequence.

2022-06-07  Kewen Lin  <linkw@linux.ibm.com>

	* machmode.def (VECTOR_MODES_WITH_PREFIX): Update document for
	parameter ORDER.

2022-06-06  Andrew Stubbs  <ams@codesourcery.com>

	* config.in: Regenerate.
	* configure: Regenerate.
	* configure.ac: Reinstate HAVE_GAS_ARM_EXTENDED_ARCH test.

2022-06-04  Roger Sayle  <roger@nextmovesoftware.com>

	PR middle-end/95126
	* calls.cc (load_register_parameters): When loading a suitable
	immediate_const_ctor_p VAR_DECL into a single word_mode register,
	construct it directly in a pseudo rather than read it (by parts)
	from memory.
	* expr.cc (int_expr_size): Make tree argument a const_tree.
	(immediate_const_ctor_p): Helper predicate.  Return true for
	simple constructors that may be materialized in a register.
	(expand_expr_real_1) [VAR_DECL]: When expanding a constant
	VAR_DECL with a suitable immediate_const_ctor_p constructor
	use store_constructor to materialize it directly in a pseudo.
	* expr.h (immediate_const_ctor_p): Prototype here.
	* varasm.cc (initializer_constant_valid_for_bitfield_p): Change
	VALUE argument from tree to const_tree.
	* varasm.h (initializer_constant_valid_for_bitfield_p): Update
	prototype.

2022-06-04  Jakub Jelinek  <jakub@redhat.com>

	PR target/105825
	* config/i386/i386.md (*ashl<dwi>3_doubleword_mask,
	*<insn><dwi>3_doubleword_mask): If top bit of mask is clear, but lower
	bits of mask aren't all set, use operands[2] mode for the AND
	operation instead of always SImode.

2022-06-03  Jakub Jelinek  <jakub@redhat.com>

	PR middle-end/30314
	PR middle-end/105777
	* match.pd (__builtin_mul_overflow_p (x, cst, (stype) 0) ->
	x > stype_max / cst || x < stype_min / cst): New simplification.

2022-06-03  Aldy Hernandez  <aldyh@redhat.com>

	* gimple-range-cache.cc (ranger_cache::range_from_dom): Use
	Value_Range.
	* gimple-range.cc (gimple_ranger::register_inferred_ranges): Same.
	* value-range.h (Value_Range::Value_Range): Implement copy
	constructor for Value_Range.

2022-06-03  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.h (struct vrange_traits): Remove.
	(is_a): Rewrite without vrange_traits.
	(as_a): Same.

2022-06-03  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.cc (vrange::contains_p): Implement.
	(vrange::type): Return void.
	(vrange::supports_type_p): Implement.
	(irange::fits_p): Same.
	(vrange::set_undefined): Same.
	(irange::set_nonnegative): Same.
	(vrange::set_varying): Same.
	(vrange::union_): Same.
	(unsupported_range::set): Move to vrange.
	(unsupported_range::type): Move to vrange.
	(vrange::intersect): Implement for varying and undefined.
	(vrange::zero_p): Implement.
	(unsupported_range::supports_type_p): Move to vrange.
	(vrange::nonzero_p): Implement.
	(unsupported_range::set_undefined): Move to vrange.
	(unsupported_range::set_varying): Same.
	(unsupported_range::dump): Same.
	(unsupported_range::union_): Same.  Implement for varying and
	undefined.
	(unsupported_range::intersect): Move to vrange.
	(unsupported_range::zero_p): Same.
	(unsupported_range::nonzero_p): Same.
	(unsupported_range::set_nonzero): Same.
	(unsupported_range::set_zero): Same.
	(unsupported_range::set_nonnegative): Same.
	(unsupported_range::fits_p): Same.
	* value-range.h (class vrange): Remove abstract markers for most
	methods.
	(class unsupported_range): Remove most methods as they will now be
	inherited from vrange.

2022-06-03  Aldy Hernandez  <aldyh@redhat.com>

	* gimple-range-edge.cc (gimple_outgoing_range_stmt_p): Adjust for
	an object level supports_type_p for irange and a static
	Value_Range::supports_type_p.
	* gimple-range-fold.cc (fold_using_range::range_of_range_op): Same.
	(fold_using_range::range_of_address): Same.
	(fold_using_range::range_of_builtin_call): Same.
	* gimple-range-fold.h (gimple_range_type): Same.
	(gimple_range_ssa_p): Same.
	* gimple-range-path.cc (path_range_query::internal_range_of_expr):
	Same.
	(path_range_query::range_of_stmt): Same.
	(path_range_query::add_to_imports): Same.
	* gimple-range.cc (gimple_ranger::range_on_edge): Same.
	(gimple_ranger::export_global_ranges): Same.
	* gimple-ssa-evrp-analyze.cc
	(evrp_range_analyzer::record_ranges_from_phis):  Same.
	* range-op.cc (range_operator::wi_fold): Same.
	(range_operator::fold_range): Same.
	* tree-ssa-loop-ch.cc (entry_loop_condition_is_static): Same.
	* tree-ssa-loop-unswitch.cc (struct unswitch_predicate): Same.
	(evaluate_control_stmt_using_entry_checks): Same.
	* tree-ssa-threadedge.cc
	(hybrid_jt_simplifier::compute_ranges_from_state): Same.
	* tree-vrp.cc (supported_types_p): Same.
	* value-query.cc (range_query::value_of_expr): Same.
	(range_query::value_on_edge): Same.
	(range_query::value_of_stmt): Same.
	(range_query::get_tree_range): Same.
	(get_range_global): Same.
	(global_range_query::range_of_expr): Same.
	* value-range-equiv.h (class value_range_equiv): Same.
	* value-range.cc (irange::supports_type_p): Same.
	(unsupported_range::supports_type_p): Same.
	* value-range.h (enum value_range_discriminator): Same.
	(Value_Range::init): Same.
	(Value_Range::supports_type_p): Same.
	(irange::supports_type_p): Same.
	(irange::supports_p): Same.
	(vrange::supports_type_p): Same.
	(vrange_allocator::alloc_vrange): Same.

2022-06-03  Jan Beulich  <jbeulich@suse.com>

	* Makefile.in (ORIGINAL_OBJCOPY_FOR_TARGET): New.
	* configure.ac: Check for objcopy, producing
	ORIGINAL_OBJCOPY_FOR_TARGET.
	* configure: Update accordingly.
	* exec-tool.in (ORIGINAL_OBJCOPY_FOR_TARGET): New.
	Handle objcopy.

2022-06-03  Jan Beulich  <jbeulich@suse.com>

	* config/i386/mmx.md (mmx_psadbw): Convert to expander.
	(*mmx_psadbw): New. Mark as commutative.
	* config/i386/sse.md (<sse2_avx2>_psadbw): Convert to expander.
	(*<sse2_avx2>_psadbw): New. Mark as commutative.

2022-06-03  Alexandre Oliva  <oliva@adacore.com>

	PR tree-optimization/105665
	PR tree-optimization/100810
	* tree-ssa-loop-ivopts.cc
	(ssa_name_maybe_undef_p, ssa_name_set_maybe_undef): New.
	(ssa_name_any_use_dominates_bb_p, mark_ssa_maybe_undefs): New.
	(find_ssa_undef): Check precomputed flag and intervening uses.
	(tree_ssa_iv_optimize): Call mark_ssa_maybe_undefs.

2022-06-02  David Malcolm  <dmalcolm@redhat.com>

	* Makefile.in (OBJS): Add tree-diagnostic-client-data-hooks.o and
	tree-logical-location.o.
	(OBJS-libcommon): Add diagnostic-format-sarif.o; reorder.
	(CFLAGS-tree-diagnostic-client-data-hooks.o): Add TARGET_NAME.
	* common.opt (fdiagnostics-format=): Add sarif-stderr and sarif-file.
	(sarif-stderr, sarif-file): New enum values.
	* diagnostic-client-data-hooks.h: New file.
	* diagnostic-format-sarif.cc: New file.
	* diagnostic-path.h (enum diagnostic_event::verb): New enum.
	(enum diagnostic_event::noun): New enum.
	(enum diagnostic_event::property): New enum.
	(struct diagnostic_event::meaning): New struct.
	(diagnostic_event::get_logical_location): New vfunc.
	(diagnostic_event::get_meaning): New vfunc.
	(simple_diagnostic_event::get_logical_location): New vfunc impl.
	(simple_diagnostic_event::get_meaning): New vfunc impl.
	* diagnostic.cc: Include "diagnostic-client-data-hooks.h".
	(diagnostic_initialize): Initialize m_client_data_hooks.
	(diagnostic_finish): Clean up m_client_data_hooks.
	(diagnostic_event::meaning::dump_to_pp): New.
	(diagnostic_event::meaning::maybe_get_verb_str): New.
	(diagnostic_event::meaning::maybe_get_noun_str): New.
	(diagnostic_event::meaning::maybe_get_property_str): New.
	(get_cwe_url): Make non-static.
	(diagnostic_output_format_init): Handle
	DIAGNOSTICS_OUTPUT_FORMAT_SARIF_STDERR and
	DIAGNOSTICS_OUTPUT_FORMAT_SARIF_FILE.
	* diagnostic.h (enum diagnostics_output_format): Add
	DIAGNOSTICS_OUTPUT_FORMAT_SARIF_STDERR and
	DIAGNOSTICS_OUTPUT_FORMAT_SARIF_FILE.
	(class diagnostic_client_data_hooks): New forward decl.
	(class logical_location): New forward decl.
	(diagnostic_context::m_client_data_hooks): New field.
	(diagnostic_output_format_init_sarif_stderr): New decl.
	(diagnostic_output_format_init_sarif_file): New decl.
	(get_cwe_url): New decl.
	* doc/invoke.texi (-fdiagnostics-format=): Add sarif-stderr and
	sarif-file.
	* doc/sourcebuild.texi (Scan a particular file): Add
	scan-sarif-file and scan-sarif-file-not.
	* langhooks-def.h (lhd_get_sarif_source_language): New decl.
	(LANG_HOOKS_GET_SARIF_SOURCE_LANGUAGE): New macro.
	(LANG_HOOKS_INITIALIZER): Add
	LANG_HOOKS_GET_SARIF_SOURCE_LANGUAGE.
	* langhooks.cc (lhd_get_sarif_source_language): New.
	* langhooks.h (lang_hooks::get_sarif_source_language): New field.
	* logical-location.h: New file.
	* plugin.cc (struct for_each_plugin_closure): New.
	(for_each_plugin_cb): New.
	(for_each_plugin): New.
	* plugin.h (for_each_plugin): New decl.
	* tree-diagnostic-client-data-hooks.cc: New file.
	* tree-diagnostic.cc: Include "diagnostic-client-data-hooks.h".
	(tree_diagnostics_defaults): Populate m_client_data_hooks.
	* tree-logical-location.cc: New file.
	* tree-logical-location.h: New file.

2022-06-02  David Malcolm  <dmalcolm@redhat.com>

	* common.opt (fdiagnostics-format=): Add json-stderr and json-file
	to description.
	(DIAGNOSTICS_OUTPUT_FORMAT_JSON): Rename to...
	(DIAGNOSTICS_OUTPUT_FORMAT_JSON_STDERR): ...this.
	(diagnostics_output_format): Add json-stderr and json-file.
	* diagnostic-format-json.cc (json_flush_to_file): New.
	(json_final_cb): Convert to...
	(json_flush_to_file): ...this, ...
	(json_stderr_final_cb): ...this, and...
	(json_file_final_cb): ...this.
	(diagnostic_output_format_init): Move to diagnostic.cc.
	(json_output_base_file_name): New.
	(diagnostic_output_format_init_json): New.
	(diagnostic_output_format_init_json_stderr): New.
	(diagnostic_output_format_init_json_file): New.
	* diagnostic.cc (diagnostic_output_format_init): Move here from
	diagnostic-format-json.cc; update for changes to enum.
	* diagnostic.h (enum diagnostics_output_format): Rename
	DIAGNOSTICS_OUTPUT_FORMAT_JSON to
	DIAGNOSTICS_OUTPUT_FORMAT_JSON_STDERR, and add
	DIAGNOSTICS_OUTPUT_FORMAT_JSON_FILE.
	(diagnostic_output_format_init): Add base_file_name param.
	(diagnostic_output_format_init_json_stderr): New decl.
	(diagnostic_output_format_init_json_file): New dec.
	* doc/invoke.texi (-fdiagnostics-format=): Add "json-stderr" and
	"json-file".  Rewrite so that the existing "json" is a synonym of
	"json-stderr".
	* gcc.cc (driver_handle_option): Pass dump_base_name to
	diagnostic_output_format_init.
	* opts.cc (common_handle_option): Likewise.

2022-06-02  David Malcolm  <dmalcolm@redhat.com>

	* json.cc (string::print): Fix escaping of '\'.

2022-06-02  Philipp Tomsich  <philipp.tomsich@vrull.eu>

	* config/riscv/riscv.cc (riscv_build_integer_1): Rewrite value as
	(-1 << 31) for the single-bit case, when operating on (1 << 31)
	in SImode.
	* config/riscv/riscv.h (SINGLE_BIT_MASK_OPERAND): Allow for
	any single-bit value, moving the special case for (1 << 31) to
	riscv_build_integer_1 (in riscv.c).

2022-06-02  Roger Sayle  <roger@nextmovesoftware.com>

	PR target/105791
	* config/i386/sse.md (V_128_256):Add V1TI and V2TI.
	(define_mode_attr avxsizesuffix): Add support for V1TI and V2TI.

2022-06-02  Jakub Jelinek  <jakub@redhat.com>

	PR target/105778
	* config/i386/i386.md (*ashl<dwi>3_doubleword_mask): Remove :SI
	from AND and its operands and just verify operands[2] has HImode,
	SImode or for TARGET_64BIT DImode.  Allow operands[3] to be a mask
	with all low 6 (64-bit) or 5 (32-bit) bits set and in that case
	just throw away the masking.  Use force_reg before calling
	gen_lowpart.
	(*ashl<dwi>3_doubleword_mask_1): Allow operands[3] to be a mask
	with all low 6 (64-bit) or 5 (32-bit) bits set and in that case
	just throw away the masking.
	(*ashl<mode>3_doubleword): Rename to ...
	(ashl<mode>3_doubleword): ... this.
	(*ashl<mode>3_mask): Remove :SI from AND and its operands and just
	verify operands[2] has HImode, SImode or for TARGET_64BIT DImode.
	Use force_reg before calling gen_lowpart.
	(*<insn><mode>3_mask): Likewise.
	(*<insn><dwi>3_doubleword_mask): Likewise.  Allow operands[3] to be
	a mask with all low 6 (64-bit) or 5 (32-bit) bits set and in that
	case just throw away the masking.  Use force_reg before calling
	gen_lowpart.
	(*<insn><dwi>3_doubleword_mask_1): Allow operands[3] to be a mask
	with all low 6 (64-bit) or 5 (32-bit) bits set and in that case just
	throw away the masking.
	(*<insn><mode>3_doubleword): Rename to ...
	(<insn><mode>3_doubleword): ... this.
	(*<insn><mode>3_mask): Remove :SI from AND and its operands and just
	verify operands[2] has HImode, SImode or for TARGET_64BIT DImode.
	Use force_reg before calling gen_lowpart.
	(splitter after it): Remove :SI from AND and its operands and just
	verify operands[2] has HImode, SImode or for TARGET_64BIT DImode.
	(*<btsc><mode>_mask, *<btsc><mode>_mask): Remove :SI from AND and its
	operands and just verify operands[1] has HImode, SImode or for
	TARGET_64BIT DImode.  Use force_reg before calling gen_lowpart.
	(*jcc_bt<mode>_mask_1): New define_insn_and_split pattern.
	* config/i386/i386.cc (ix86_rtx_costs): For ZERO_EXTRACT with
	ZERO_EXTEND QI->SI in last operand ignore the cost of the ZERO_EXTEND.

2022-06-02  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/101668
	* tree-vect-slp.cc (vect_build_slp_tree_1): Allow BIT_FIELD_REFs
	for vector types with compatible lane types.
	(vect_build_slp_tree_2): Deal with this.
	(vect_add_slp_permutation): Adjust.  Emit lowpart/concat
	special cases without VEC_PERM.
	(vectorizable_slp_permutation): Select the operand vector
	type and relax requirements.  Handle identity permutes
	with mismatching operand types.
	* optabs-query.cc (can_vec_perm_const_p): Only allow variable
	permutes for op_mode == mode.

2022-06-02  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/105802
	* tree-ssa-loop-unswitch.cc (find_unswitching_predicates_for_bb):
	Make sure to also compute the range in the type of the switch index.

2022-06-01  David Seifert  <soap@gentoo.org>

	PR plugins/95648
	* configure: Regenerate.

2022-06-01  H.J. Lu  <hjl.tools@gmail.com>

	PR rtl-optimization/105638
	* df-core.cc (df_find_single_def_src): Moved and renamed from
	find_single_def_src in loop-iv.cc.  Change the argument to rtx
	and use rtx_equal_p.  Return null for partial or conditional
	defs.
	* df.h (df_find_single_def_src): New prototype.
	* dse.cc (record_store): Use the constant source if the source
	register is set only once.
	* loop-iv.cc (find_single_def_src): Moved to df-core.cc.
	(replace_single_def_regs): Replace find_single_def_src with
	df_find_single_def_src.

2022-06-01  Wilco Dijkstra  <wilco.dijkstra@arm.com>

	* config/aarch64/aarch64.opt (explicit_tune_core): Rename to
	selected_tune.
	(explicit_arch): Rename to selected_arch.
	(x_aarch64_override_tune_string): Remove.
	(aarch64_ra_sign_key): Add as TargetVariable so it gets saved/restored.
	(aarch64_override_tune_string): Add Save so it gets saved/restored.
	* config/aarch64/aarch64.h (aarch64_architecture_version): Remove.
	* config/aarch64/aarch64.cc (aarch64_architecture_version): Remove.
	(processor): Remove archtecture_version field.
	(selected_arch): Remove global.
	(selected_cpu): Remove global.
	(selected_tune): Remove global.
	(aarch64_ra_sign_key): Move global to aarch64.opt so it is saved.
	(aarch64_override_options_internal): Use aarch64_get_tune_cpu.
	(aarch64_override_options): Further simplify code to only set
	selected_arch and selected_tune globals.
	(aarch64_option_save): Remove now that target options are saved.
	(aarch64_option_restore): Remove redundant target option restores.
	* config/aarch64/aarch64-c.cc (aarch64_update_cpp_builtins): Use
	AARCH64_ISA_V9.
	* config/aarch64/aarch64-opts.h (aarch64_key_type): Add, moved from...
	* config/aarch64/aarch64-protos.h (aarch64_key_type): Remove.
	(aarch64_ra_sign_key): Remove.

2022-06-01  Jakub Jelinek  <jakub@redhat.com>

	PR middle-end/30314
	* match.pd (__builtin_mul_overflow_p (x, cst, (utype) 0) ->
	x > ~(utype)0 / cst): New simplification.

2022-06-01  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/105786
	* tree-loop-distribution.cc
	(loop_distribution::transform_reduction_loop): Only do strlen
	replacement for integer type reductions.

2022-06-01  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/105770
	* tree-ssa-loop-unswitch.cc (find_unswitching_predicates_for_bb): Cast
	CASE_LOW and CASE_HIGH to TREE_TYPE (idx) before comparisons with idx.

2022-06-01  Aldy Hernandez  <aldyh@redhat.com>

	* gimple-range-cache.cc (ssa_block_ranges::dump): Convert to vrange.
	(sbr_vector::sbr_vector): Same.
	(sbr_vector::grow): Same.
	(sbr_vector::set_bb_range): Same.
	(sbr_vector::get_bb_range): Same.
	(sbr_sparse_bitmap::sbr_sparse_bitmap): Same.
	(sbr_sparse_bitmap::set_bb_range): Same.
	(sbr_sparse_bitmap::get_bb_range): Same.
	(block_range_cache::set_bb_range): Same.
	(block_range_cache::get_bb_range): Same.
	(block_range_cache::dump): Same.
	(ssa_global_cache::get_global_range): Same.
	(ssa_global_cache::set_global_range): Same.
	(ssa_global_cache::clear): Same.
	(ssa_global_cache::dump): Same.
	(ranger_cache::get_global_range): Same.
	(ranger_cache::set_global_range): Same.
	(ranger_cache::range_of_def): Same.
	(ranger_cache::entry_range): Same.
	(ranger_cache::exit_range): Same.
	(ranger_cache::edge_range): Same.
	(ranger_cache::range_of_expr): Same.
	(ranger_cache::range_on_edge): Same.
	(ranger_cache::block_range): Same.
	(ranger_cache::propagate_cache): Same.
	(ranger_cache::fill_block_cache): Same.
	(ranger_cache::range_from_dom): Same.
	* gimple-range-cache.h: Same.
	* gimple-range-edge.cc (gimple_outgoing_range::get_edge_range):
	Same.
	(gimple_outgoing_range::switch_edge_range): Same.
	(gimple_outgoing_range::edge_range_p): Same.
	* gimple-range-edge.h: Same.
	* gimple-range-fold.cc (fur_source::get_operand): Same.
	(fur_source::get_phi_operand): Same.
	(fur_edge::get_operand): Same.
	(fur_edge::get_phi_operand): Same.
	(fur_stmt::get_operand): Same.
	(fur_stmt::get_phi_operand): Same.
	(fur_list::fur_list): Same.
	(fur_list::get_operand): Same.
	(fur_list::get_phi_operand): Same.
	(fold_range): Same.
	(adjust_imagpart_expr): Same.
	(adjust_realpart_expr): Same.
	(gimple_range_adjustment): Same.
	(fold_using_range::fold_stmt): Same.
	(fold_using_range::range_of_range_op): Same.
	(fold_using_range::range_of_address): Same.
	(fold_using_range::range_of_phi): Same.
	(fold_using_range::range_of_call): Same.
	(fold_using_range::range_of_builtin_call): Same.
	(fold_using_range::range_of_builtin_int_call): Same.
	(fold_using_range::range_of_cond_expr): Same.
	(fur_source::register_outgoing_edges): Same.
	* gimple-range-fold.h (fold_range): Same.
	(gimple_range_type): Same.
	(gimple_range_ssa_p): Same.
	* gimple-range-gori.cc (gimple_range_calc_op1): Same.
	(gimple_range_calc_op2): Same.
	(gori_compute::compute_operand_range_switch): Same.
	(gori_compute::compute_operand_range): Same.
	(gori_compute::logical_combine): Same.
	(gori_compute::compute_logical_operands): Same.
	(gori_compute::compute_operand1_range): Same.
	(gori_compute::compute_operand2_range): Same.
	(gori_compute::compute_operand1_and_operand2_range): Same.
	(gori_compute::outgoing_edge_range_p): Same.
	(gori_compute::condexpr_adjust): Same.
	* gimple-range-gori.h (gimple_range_calc_op1): Same.
	(gimple_range_calc_op2): Same.
	* gimple-range-path.cc (path_range_query::get_cache): Same.
	(path_range_query::set_cache): Same.
	(path_range_query::range_on_path_entry): Same.
	(path_range_query::internal_range_of_expr): Same.
	(path_range_query::range_of_expr): Same.
	(path_range_query::ssa_range_in_phi): Same.
	(path_range_query::range_defined_in_block): Same.
	(path_range_query::compute_ranges_in_phis): Same.
	(path_range_query::compute_ranges_in_block): Same.
	(path_range_query::add_to_imports): Same.
	(path_range_query::range_of_stmt): Same.
	* gimple-range-path.h: Same.
	* gimple-range-infer.cc (gimple_infer_range::add_range): Same.
	(gimple_infer_range::~side_effect_manager): Same.
	(gimple_infer_range::get_nonzero): Same.
	(gimple_infer_range::maybe_adjust_range): Same.
	(gimple_infer_range::add_range): Same.
	* gimple-range-infer.h: Same.
	* gimple-range-tests.cc: Same.
	* gimple-range-trace.cc (range_tracer::trailer): Same.
	(debug_seed_ranger): Same.
	* gimple-range-trace.h: Same.
	* gimple-range.cc (gimple_ranger::range_of_expr): Same.
	(gimple_ranger::range_on_entry): Same.
	(gimple_ranger::range_on_exit): Same.
	(gimple_ranger::range_on_edge): Same.
	(gimple_ranger::fold_range_internal): Same.
	(gimple_ranger::range_of_stmt): Same.
	(gimple_ranger::prefill_name): Same.
	(gimple_ranger::prefill_stmt_dependencies): Same.
	(gimple_ranger::export_global_ranges): Same.
	(gimple_ranger::dump_bb): Same.
	* gimple-range.h: Same.
	* gimple-ssa-warn-access.cc (check_nul_terminated_array): Same.
	(memmodel_to_uhwi): Same.
	* tree-ssa-loop-niter.cc (refine_value_range_using_guard): Same.
	(determine_value_range): Same.
	(record_nonwrapping_iv): Same.
	(infer_loop_bounds_from_signedness): Same.
	(scev_var_range_cant_overflow): Same.
	* tree-ssa-threadedge.cc (hybrid_jt_simplifier::simplify): Same.
	* value-query.cc (range_query::range_on_edge): Same.
	(range_query::range_of_stmt): Same.
	(range_query::value_of_expr): Same.
	(range_query::value_on_edge): Same.
	(range_query::value_of_stmt): Same.
	(range_query::get_tree_range): Same.
	(update_global_range): Same.
	(get_range_global): Same.
	(gimple_range_global): Same.
	(global_range_query::range_of_expr): Same.
	(range_query::query_relation): Same.
	* value-query.h (gimple_range_global): Same.
	(update_global_range): Same.
	* vr-values.cc (vr_values::range_of_expr): Same.
	(bounds_of_var_in_loop): Same.
	(simplify_using_ranges::vrp_visit_cond_stmt): Same.
	* vr-values.h (class vr_values): Same.
	* tree-ssa-loop-unswitch.cc (unswitch_predicate): Same.

2022-06-01  Aldy Hernandez  <aldyh@redhat.com>

	* gimple-range-cache.cc (sbr_vector::sbr_vector): Adjust for
	vrange allocator.
	(sbr_vector::grow): Same.
	(sbr_vector::set_bb_range): Same.
	(sbr_sparse_bitmap::sbr_sparse_bitmap): Same.
	(sbr_sparse_bitmap::set_bb_range): Same.
	(block_range_cache::~block_range_cache): Same.
	(block_range_cache::set_bb_range): Same.
	(ssa_global_cache::ssa_global_cache): Same.
	(ssa_global_cache::~ssa_global_cache): Same.
	(ssa_global_cache::set_global_range): Same.
	* gimple-range-cache.h (block_range_cache): Same.
	(ssa_global_cache): Same.
	* gimple-range-edge.cc
	(gimple_outgoing_range::calc_switch_ranges): Same.
	* gimple-range-edge.h (gimple_outgoing_range): Same.
	* gimple-range-infer.cc (infer_range_manager::get_nonzero):
	Same.
	(infer_range_manager::add_range): Same.
	* gimple-range-infer.h (class infer_range_manager): Same.
	* value-range.h (class irange_allocator): Rename to...
	(class vrange_allocator): ...this.
	(irange_allocator::irange_allocator): New.
	(vrange_allocator::vrange_allocator): New.
	(irange_allocator::~irange_allocator): New.
	(vrange_allocator::~vrange_allocator): New.
	(irange_allocator::get_memory): Rename to...
	(vrange_allocator::alloc): ...this.
	(vrange_allocator::alloc_vrange): Rename from...
	(irange_allocator::allocate): ...this.
	(vrange_allocator::alloc_irange): New.

2022-06-01  Aldy Hernandez  <aldyh@redhat.com>

	* gimple-range-edge.cc (gimple_outgoing_range_stmt_p): Adjust for
	vrange and convert range_op_handler function calls to use the
	identically named object.
	* gimple-range-fold.cc (gimple_range_operand1): Same.
	(gimple_range_operand2): Same.
	(fold_using_range::fold_stmt): Same.
	(fold_using_range::range_of_range_op): Same.
	(fold_using_range::range_of_builtin_ubsan_call): Same.
	(fold_using_range::relation_fold_and_or): Same.
	(fur_source::register_outgoing_edges): Same.
	* gimple-range-fold.h (gimple_range_handler): Remove.
	* gimple-range-gori.cc (gimple_range_calc_op1): Adjust for vrange.
	(gimple_range_calc_op2): Same.
	(range_def_chain::get_def_chain): Same.
	(gori_compute::compute_operand_range): Same.
	(gori_compute::condexpr_adjust): Same.
	* gimple-range.cc (gimple_ranger::prefill_name): Same.
	(gimple_ranger::prefill_stmt_dependencies): Same.
	* range-op.cc (get_bool_state): Same.
	(class operator_equal): Add using clause.
	(class operator_not_equal): Same.
	(class operator_lt): Same.
	(class operator_le): Same.
	(class operator_gt): Same.
	(class operator_ge): Same.
	(class operator_plus): Same.
	(class operator_minus): Same.
	(class operator_mult): Same.
	(class operator_exact_divide): Same.
	(class operator_lshift): Same.
	(class operator_rshift): Same.
	(class operator_cast): Same.
	(class operator_logical_and): Same.
	(class operator_bitwise_and): Same.
	(class operator_logical_or): Same.
	(class operator_bitwise_or): Same.
	(class operator_bitwise_xor): Same.
	(class operator_trunc_mod): Same.
	(class operator_logical_not): Same.
	(class operator_bitwise_not): Same.
	(class operator_cst): Same.
	(class operator_identity): Same.
	(class operator_unknown): Same.
	(class operator_abs): Same.
	(class operator_negate): Same.
	(class operator_addr_expr): Same.
	(class pointer_or_operator): Same.
	(operator_plus::op1_range): Adjust for vrange.
	(operator_minus::op1_range): Same.
	(operator_mult::op1_range): Same.
	(operator_cast::op1_range): Same.
	(operator_bitwise_not::fold_range): Same.
	(operator_negate::fold_range): Same.
	(range_op_handler): Rename to...
	(get_handler): ...this.
	(range_op_handler::range_op_handler): New.
	(range_op_handler::fold_range): New.
	(range_op_handler::op1_range): New.
	(range_op_handler::op2_range): New.
	(range_op_handler::lhs_op1_relation): New.
	(range_op_handler::lhs_op2_relation): New.
	(range_op_handler::op1_op2_relation): New.
	(range_cast): Adjust for vrange.
	* range-op.h (range_op_handler): Remove function.
	(range_cast): Adjust for vrange.
	(class range_op_handler): New.
	(get_bool_state): Adjust for vrange.
	(empty_range_varying): Same.
	(relop_early_resolve): Same.
	* tree-data-ref.cc (compute_distributive_range): Same.
	* tree-vrp.cc (get_range_op_handler): Remove.
	(range_fold_binary_symbolics_p): Use range_op_handler class
	instead of get_range_op_handler.
	(range_fold_unary_symbolics_p): Same.
	(range_fold_binary_expr): Same.
	(range_fold_unary_expr): Same.
	* value-query.cc (range_query::get_tree_range): Adjust for vrange.

2022-06-01  Aldy Hernandez  <aldyh@redhat.com>

	* gimple-range-fold.h (gimple_range_type): Check type before
	calling supports_type_p.
	* gimple-range-path.cc (path_range_query::range_of_stmt): Same.
	* value-query.cc (range_query::get_tree_range): Same.
	* value-range.cc (Value_Range::lower_bound): New.
	(Value_Range::upper_bound): New.
	(Value_Range::dump): New.
	* value-range.h (class Value_Range): New.
	(irange::supports_type_p): Do not check if type is non-zero.

2022-06-01  Aldy Hernandez  <aldyh@redhat.com>

	* value-range-equiv.cc (value_range_equiv::set): New.
	* value-range-equiv.h (class value_range_equiv): Make set method
	virtual.
	Remove default bitmap argument from set method.
	* value-range.cc (vrange::contains_p): New.
	(vrange::singleton_p): New.
	(vrange::operator=): New.
	(vrange::operator==): New.
	(irange::fits_p): Move to .cc file.
	(irange::set_nonnegative): New.
	(unsupported_range::unsupported_range): New.
	(unsupported_range::set): New.
	(unsupported_range::type): New.
	(unsupported_range::set_undefined): New.
	(unsupported_range::set_varying): New.
	(unsupported_range::dump): New.
	(unsupported_range::union_): New.
	(unsupported_range::intersect): New.
	(unsupported_range::zero_p): New.
	(unsupported_range::nonzero_p): New.
	(unsupported_range::set_nonzero): New.
	(unsupported_range::set_zero): New.
	(unsupported_range::set_nonnegative): New.
	(unsupported_range::fits_p): New.
	(irange::set): Call irange::set_undefined.
	(irange::verify_range): Check discriminator field.
	(irange::dump): Dump [irange] marker.
	(irange::debug): Move to...
	(vrange::debug): ...here.
	(dump_value_range): Accept vrange.
	(debug): Same.
	* value-range.h (enum value_range_discriminator): New.
	(class vrange): New.
	(class unsupported_range): New.
	(struct vrange_traits): New.
	(is_a): New.
	(as_a): New.
	(class irange): Inherit from vrange.
	(dump_value_range): Adjust for vrange.
	(irange::kind): Rename to...
	(vrange::kind): ...this.
	(irange::varying_p): Rename to...
	(vrange::varying_p): ...this.
	(irange::undefined_p): Rename to...
	(vrange::undefined_p): ...this.
	(irange::irange): Set discriminator.
	(irange::union_): Convert to irange before passing to irange
	method.
	(irange::intersect): Same.
	(vrange::supports_type_p): New.
	* vr-values.cc (vr_values::extract_range_from_binary_expr): Pass
	NULL bitmap argument to value_range_equiv::set.
	(vr_values::extract_range_basic): Same.

2022-06-01  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/105763
	* tree-ssa-loop-unswitch.cc (find_unswitching_predicates_for_bb):
	Check gimple_range_ssa_p.

2022-05-31  Jason Merrill  <jason@redhat.com>

	* Makefile.in (TAGS): Look at libcpp/*.cc.

2022-05-31  Christophe Lyon  <christophe.lyon@arm.com>

	* config/aarch64/aarch64.cc (aarch64_gimplify_va_arg_expr):
	Prefix mode names with E_.

2022-05-31  Alan Modra  <amodra@gmail.com>

	* dwarf2out.cc (gen_namelist_decl): Adjust to suit correct
	spelling of DW_AT_namelist_item.

2022-05-31  Jakub Jelinek  <jakub@redhat.com>

	* omp-low.cc (build_outer_var_ref): For code == OMP_CLAUSE_ALLOCATE
	allow var to be private in the outer context.
	(lower_private_allocate): Pass OMP_CLAUSE_ALLOCATE as last argument
	to build_outer_var_ref.

2022-05-30  Roger Sayle  <roger@nextmovesoftware.com>

	* config/i386/i386.cc (ix86_modes_tieable_p): Allow SCmode to be
	tieable with DImode on TARGET_64BIT, and SCmode tieable with
	V2SFmode, and DCmode with V2DFmode.

2022-05-30  Roger Sayle  <roger@nextmovesoftware.com>

	PR rtl-optimization/101617
	* config/i386/i386-expand.cc (ix86_expand_int_movcc): Add a
	special case (indicated by negate_cc_compare_p) to generate a
	-1/0 mask using neg;sbb.
	* config/i386/i386.md (x86_neg<mode>_ccc): New define_expand
	to generate an *x86_neg<mode>_ccc instruction.
	(x86_mov<mode>cc_0_m1_neg): Likewise, a new define_expand to
	generate a *x86_mov<mode>cc_0_m1_neg instruction.

2022-05-30  Roger Sayle  <roger@nextmovesoftware.com>

	* rtlanal.cc (rtx_cost) <MULT>: Treat FMA, SS_MULT, US_MULT,
	SMUL_HIGHPART and UMUL_HIGHPART as having the same cost as MULT.
	<DIV>: Likewise, SS_DIV and US_DIV have the same default as DIV.

2022-05-30  Roger Sayle  <roger@nextmovesoftware.com>

	PR target/70321
	* config/i386/i386-expand.cc (ix86_expand_branch): Don't decompose
	DI mode equality/inequality using XOR here.  Instead generate a
	COMPARE for doubleword modes (DImode on !TARGET_64BIT or TImode).
	* config/i386/i386-features.cc (gen_gpr_to_xmm_move_src): Use
	gen_rtx_SUBREG when NUNITS is 1, i.e. for TImode to V1TImode.
	(general_scalar_chain::convert_compare): New function to convert
	scalar equality/inequality comparison into vector operations.
	(general_scalar_chain::convert_insn) [COMPARE]: Refactor. Call
	new convert_compare helper method.
	(convertible_comparion_p): Update to match doubleword COMPARE
	of two register, memory or integer constant operands.
	* config/i386/i386-features.h (general_scalar_chain::convert_compare):
	Prototype/declare member function here.
	* config/i386/i386.md (cstore<mode>4): Change mode to SDWIM, but
	only allow new doubleword modes for EQ and NE operators.
	(*cmp<dwi>_doubleword): New define_insn_and_split, to split a
	doubleword comparison into a pair of XORs followed by an IOR to
	set the (zero) flags register, optimizing the XORs if possible.
	* config/i386/sse.md (V_AVX): Include V1TI and V2TI in mode
	iterator; V_AVX is (currently) only used by ptest.
	(sse4_1 mode attribute): Update to support V1TI and V2TI.

2022-05-30  Uroš Bizjak  <ubizjak@gmail.com>

	* config/i386/i386.md: Remove constraints when used with
	const_int_operand, const0_operand, const_1_operand, constm1_operand,
	const8_operand, const128_operand, const248_operand, const123_operand,
	const2367_operand, const1248_operand, const359_operand,
	const_4_or_8_to_11_operand, const48_operand, const_0_to_1_operand,
	const_0_to_3_operand, const_0_to_4_operand, const_0_to_5_operand,
	const_0_to_7_operand, const_0_to_15_operand, const_0_to_31_operand,
	const_0_to_63_operand, const_0_to_127_operand, const_0_to_255_operand,
	const_0_to_255_mul_8_operand, const_1_to_31_operand,
	const_1_to_63_operand, const_2_to_3_operand, const_4_to_5_operand,
	const_4_to_7_operand, const_6_to_7_operand, const_8_to_9_operand,
	const_8_to_11_operand, const_8_to_15_operand, const_10_to_11_operand,
	const_12_to_13_operand, const_12_to_15_operand, const_14_to_15_operand,
	const_16_to_19_operand, const_16_to_31_operand, const_20_to_23_operand,
	const_24_to_27_operand and const_28_to_31_operand.
	* config/i386/mmx.md: Ditto.
	* config/i386/sse.md: Ditto.
	* config/i386/subst.md: Ditto.
	* config/i386/sync.md: Ditto.

2022-05-30  Jan Beulich  <jbeulich@suse.com>

	* config/i386/i386.md (bmi2_umul<mode><dwi>3_1): Correct MEM_P()
	arguments.

2022-05-30  Prathamesh Kulkarni  <prathamesh.kulkarni@linaro.org>

	* config/arm/arm.cc (arm_vectorize_vec_perm_const): Adjust prototype.

2022-05-29  Iain Sandoe  <iain@sandoe.co.uk>

	PR target/105599
	* config/darwin.h: Move versions-specific handling of multiply_defined
	from SUBTARGET_DRIVER_SELF_SPECS to LINK_SPEC.

2022-05-29  Eric Gallager  <egallager@gcc.gnu.org>

	PR other/82383
	* doc/sourcebuild.texi: Add entries for the c++tools,
	gotools, libbacktrace, libcc1, libcody, liboffloadmic,
	and libsanitizer directories. Remove entry for boehm-gc.
	Fix alphabetization for libquadmath.

2022-05-28  Joel Holdsworth  <jholdsworth@nvidia.com>

	* config/avr/avr-mcus.def: Add device definitions.
	* doc/avr-mmcu.texi: Corresponding changes.
	* config/avr/gen-avr-mmcu-texi.cc: Added support for avr
	device prefix.
	* config/avr/gen-avr-mmcu-specs.cc: Prevent -mmcu=avr* flags
	from leaking into cc1.

2022-05-28  Vladimir Makarov  <vmakarov@gcc.gnu.org>

	PR target/103722
	* config/sh/sh.cc (sh_register_move_cost): Avoid cost "2" (which
	is special) for various scenarios.

2022-05-28  Iain Sandoe  <iain@sandoe.co.uk>

	* config/darwin.h (REAL_LIBGCC_SPEC): Update the comment block
	describing this macro.

2022-05-27  Richard Biener  <rguenther@suse.de>

	* tree-dfa.cc (get_ref_base_and_extent): Avoid shift.

2022-05-27  Martin Jambor  <mjambor@suse.cz>

	PR ipa/105639
	* ipa-prop.cc (propagate_controlled_uses): Check type of the
	constant before adding a LOAD reference.

2022-05-27  Jakub Jelinek  <jakub@redhat.com>

	* tree-core.h (enum omp_clause_code): Rename OMP_CLAUSE_TO_DECLARE
	to OMP_CLAUSE_ENTER.
	* tree.h (OMP_CLAUSE_ENTER_TO): Define.
	* tree.cc (omp_clause_num_ops, omp_clause_code_name): Rename
	OMP_CLAUSE_TO_DECLARE to OMP_CLAUSE_ENTER.
	* tree-pretty-print.cc (dump_omp_clause): Handle OMP_CLAUSE_ENTER
	instead of OMP_CLAUSE_TO_DECLARE, if OMP_CLAUSE_ENTER_TO, print
	"to" instead of "enter".
	* tree-nested.cc (convert_nonlocal_omp_clauses,
	convert_local_omp_clauses): Handle OMP_CLAUSE_ENTER instead of
	OMP_CLAUSE_TO_DECLARE.

2022-05-27  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/105726
	* gimple-ssa-warn-restrict.cc (builtin_memref::set_base_and_offset):
	Constrain array-of-flexarray case more.

2022-05-27  Jakub Jelinek  <jakub@redhat.com>

	PR sanitizer/105729
	* fold-const.cc (fold_unary_loc): Don't optimize (X &) ((Y *) z + w)
	to (X &) z + w if -fsanitize=null during GENERIC folding.

2022-05-27  Roger Sayle  <roger@nextmovesoftware.com>

	* match.pd (match_zero_one_valued_p): New predicate.
	(mult @0 @1): Use zero_one_valued_p for optimization to the
	expression "bit_and @0 @1".
	(bit_and (negate zero_one_valued_p@0) @1): Optimize to MULT_EXPR.
	(plus @0 (mult (minus @1 @0) zero_one_valued_p@2)): New transform.
	(minus @0 (mult (minus @0 @1) zero_one_valued_p@2)): Likewise.
	(bit_xor @0 (mult (bit_xor @0 @1) zero_one_valued_p@2)): Likewise.
	Remove three redundant transforms obsoleted by the three above.

2022-05-27  Roger Sayle  <roger@nextmovesoftware.com>

	* config/i386/i386.md (*test<mode>_not): New define_insn_and_split
	to split a combined "and;cmp" sequence into "not;test".

2022-05-27  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/xtensa.md (bswapsi2): New expansion pattern.
	(bswapsi2_internal): Revise the template and condition, and add
	detection code for preceding the same insn in order to omit a
	"SSAI 8" instruction of the latter.
	(bswapdi2): Suppress built-in insn expansion with the corresponding
	library call when optimizing for size.

2022-05-27  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/xtensa-protos.h
	(xtensa_expand_block_set_unrolled_loop,
	xtensa_expand_block_set_small_loop): New prototypes.
	* config/xtensa/xtensa.cc (xtensa_sizeof_MOVI,
	xtensa_expand_block_set_unrolled_loop,
	xtensa_expand_block_set_small_loop): New functions.
	* config/xtensa/xtensa.md (setmemsi): New expansion pattern.
	* config/xtensa/xtensa.opt (mlongcalls): Add target mask.

2022-05-26  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/xtensa.cc (xtensa_expand_block_move):
	Make instruction counting more accurate, and simplify emitting insns.

2022-05-26  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/constraints.md (M, O): Use the macro.
	* config/xtensa/predicates.md (addsubx_operand, extui_fldsz_operand,
	sext_fldsz_operand): Ditto.
	* config/xtensa/xtensa.cc (xtensa_simm8, xtensa_simm8x256,
	xtensa_simm12b, xtensa_uimm8, xtensa_uimm8x2, xtensa_uimm8x4,
	xtensa_mask_immediate, smalloffset_mem_p, printx, xtensa_call_save_reg,
	xtensa_expand_prologue): Ditto.
	* config/xtensa/xtensa.h (FUNCTION_ARG_REGNO_P): Ditto.

2022-05-26  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/predicates.md (extui_fldsz_operand): Simplify.
	* config/xtensa/xtensa.cc (xtensa_mask_immediate, print_operand):
	Ditto.

2022-05-25  Andrew MacLeod  <amacleod@redhat.com>

	* gimple-range-cache.cc: Adjust comments.
	* gimple-range-infer.cc: Adjust comments.
	* gimple-range-infer.h: Adjust comments.
	* gimple-range.cc: Adjust comments.

2022-05-25  Andrew MacLeod  <amacleod@redhat.com>

	* Makefile.in (OBJS): Use gimple-range-infer.o.
	* gimple-range-cache.cc (ranger_cache::fill_block_cache): Change msg.
	(ranger_cache::range_from_dom): Rename var side_effect to infer.
	(ranger_cache::apply_inferred_ranges): Rename from apply_side_effects.
	* gimple-range-cache.h: Include gimple-range-infer.h.
	(class ranger_cache): Adjust prototypes, use infer_range_manager.
	* gimple-range-infer.cc: Rename from gimple-range-side-effects.cc.
	(gimple_infer_range::*): Rename from stmt_side_effects.
	(infer_range_manager::*): Rename from side_effect_manager.
	* gimple-range-side-effect.cc: Rename.
	* gimple-range-side-effect.h: Rename.
	* gimple-range-infer.h: Rename from gimple-range-side-effects.h.
	(class gimple_infer_range): Rename from stmt_side_effects.
	(class infer_range_manager): Rename from side_effect_manager.
	* gimple-range.cc (gimple_ranger::register_inferred_ranges): Rename
	from register_side_effects.
	* gimple-range.h (register_inferred_ranges): Adjust prototype.
	* range-op.h: Adjust comment.
	* tree-vrp.cc (rvrp_folder::pre_fold_bb): Use register_inferred_ranges.
	(rvrp_folder::post_fold_bb): Use register_inferred_ranges.

2022-05-25  Simon Cook  <simon.cook@embecosm.com>

	* config/riscv/arch-canonicalize: Only add mafd extension if
	base was rv32/rv64g.

2022-05-25  Tobias Burnus  <tobias@codesourcery.com>

	* doc/invoke.texi (AMD GCN Options): Add gfx908/gfx90a.

2022-05-25  Jakub Jelinek  <jakub@redhat.com>

	PR sanitizer/105714
	* asan.cc (has_stmt_been_instrumented_p): For assignments which
	are both stores and loads, return true only if both destination
	and source have been instrumented.

2022-05-25  Martin Liska  <mliska@suse.cz>
	    Richard Biener   <rguenther@suse.de>

	* dbgcnt.def (DEBUG_COUNTER): Add loop_unswitch counter.
	* params.opt (max-unswitch-level): Remove.
	* doc/invoke.texi (max-unswitch-level): Likewise.
	* tree-cfg.cc (gimple_lv_add_condition_to_bb): Support not
	gimplified expressions.
	* tree-ssa-loop-unswitch.cc (struct unswitch_predicate): New.
	(tree_may_unswitch_on): Rename to ...
	(find_unswitching_predicates_for_bb): ... this and handle
	switch statements.
	(get_predicates_for_bb): Likewise.
	(set_predicates_for_bb): Likewise.
	(init_loop_unswitch_info): Likewise.
	(tree_ssa_unswitch_loops): Prepare stuff before calling
	tree_unswitch_single_loop.
	(tree_unswitch_single_loop): Rework the function using
	pre-computed predicates and with a per original loop cost model.
	(merge_last): New.
	(add_predicate_to_path): Likewise.
	(find_range_for_lhs): Likewise.
	(simplify_using_entry_checks): Rename to ...
	(evaluate_control_stmt_using_entry_checks): ... this, handle
	switch statements and improve simplifications using ranger.
	(simplify_loop_version): Rework using
	evaluate_control_stmt_using_entry_checks.
	(evaluate_bbs): New.
	(evaluate_loop_insns_for_predicate): Likewise.
	(tree_unswitch_loop): Adjust to allow switch statements and
	pass in the edge to unswitch.
	(clean_up_after_unswitching): New.
	(pass_tree_unswitch::execute): Pass down fun.

2022-05-24  Eugene Rozenfeld  <erozen@microsoft.com>

	* tree-vect-loop-manip.cc (vect_do_peeling): Save/restore profile
	counts for the epilog loop.

2022-05-24  Martin Sebor  <msebor@redhat.com>
	    Richard Biener  <rguenther@suse.de>

	PR middle-end/105604
	* gimple-ssa-sprintf.cc (set_aggregate_size_and_offset): Add comments.
	(get_origin_and_offset_r): Remove null handling.  Handle variable array
	sizes.
	(get_origin_and_offset): Handle null argument here.  Simplify.
	(alias_offset): Update comment.
	* pointer-query.cc (field_at_offset): Update comment.  Handle members
	of variable-length types.

2022-05-24  Prathamesh Kulkarni  <prathamesh.kulkarni@linaro.org>

	* target.def (vec_perm_const): Define new parameter op_mode and
	update doc.
	* doc/tm.texi: Regenerate.
	* config/aarch64/aarch64.cc (aarch64_vectorize_vec_perm_const): Adjust
	vec_perm_const hook to add new parameter op_mode and return false
	if result and operand modes do not match.
	* config/arm/arm.cc (arm_vectorize_vec_perm_const): Likewise.
	* config/gcn/gcn.cc (gcn_vectorize_vec_perm_const): Likewise.
	* config/ia64/ia64.cc (ia64_vectorize_vec_perm_const): Likewise.
	* config/mips/mips.cc (mips_vectorize_vec_perm_const): Likewise.
	* config/rs6000/rs6000.cc (rs6000_vectorize_vec_perm_const): Likewise
	* config/s390/s390.cc (s390_vectorize_vec_perm_const): Likewise.
	* config/sparc/sparc.cc (sparc_vectorize_vec_perm_const): Likewise.
	* config/i386/i386-expand.cc (ix86_vectorize_vec_perm_const): Likewise.
	* config/i386/i386-expand.h (ix86_vectorize_vec_perm_const): Adjust
	prototype.
	* config/i386/sse.md (ashrv4di3): Adjust call to vec_perm_const hook.
	(ashrv2di3): Likewise.
	* optabs.cc (expand_vec_perm_const): Likewise.
	* optabs-query.h (can_vec_perm_const_p): Adjust prototype.
	* optabs-query.cc (can_vec_perm_const_p): Define new parameter
	op_mode and pass it to vec_perm_const hook.
	(can_mult_highpart_p): Adjust call to can_vec_perm_const_p.
	* match.pd (vec_perm X Y CST): Likewise.
	* tree-ssa-forwprop.cc (simplify_vector_constructor): Likewise.
	* tree-vect-data-refs.cc (vect_grouped_store_supported): Likewise.
	(vect_grouped_load_supported): Likewise.
	(vect_shift_permute_load_chain): Likewise.
	* tree-vect-generic.cc (lower_vec_perm): Likewise.
	* tree-vect-loop-manip.cc (interleave_supported_p): Likewise.
	* tree-vect-loop.cc (have_whole_vector_shift): Likewise.
	* tree-vect-patterns.cc (vect_recog_rotate_pattern): Likewise.
	* tree-vect-slp.cc (can_duplicate_and_interleave_p): Likewise.
	(vect_transform_slp_perm_load): Likewise.
	(vectorizable_slp_permutation): Likewise.
	* tree-vect-stmts.cc (perm_mask_for_reverse): Likewise.
	(vectorizable_bswap): Likewise.
	(scan_store_can_perm_p): Likewise.
	(vect_gen_perm_mask_checked): Likewise.

2022-05-24  H.J. Lu  <hjl.tools@gmail.com>

	PR target/104816
	* config/i386/i386.opt: Remove Undocumented.
	* doc/invoke.texi: Document -mcet-switch.

2022-05-24  Andrew Stubbs  <ams@codesourcery.com>

	* config.gcc (amdgcn): Accept --with-arch=gfx908 and gfx90a.
	* config/gcn/gcn-opts.h (enum gcn_isa): New.
	(TARGET_GCN3): Use enum gcn_isa.
	(TARGET_GCN3_PLUS): Likewise.
	(TARGET_GCN5): Likewise.
	(TARGET_GCN5_PLUS): Likewise.
	(TARGET_CDNA1): New.
	(TARGET_CDNA1_PLUS): New.
	(TARGET_CDNA2): New.
	(TARGET_CDNA2_PLUS): New.
	(TARGET_M0_LDS_LIMIT): New.
	(TARGET_PACKED_WORK_ITEMS): New.
	* config/gcn/gcn.cc (gcn_isa): Change to enum gcn_isa.
	(gcn_option_override): Recognise CDNA ISA variants.
	(gcn_omp_device_kind_arch_isa): Support gfx90a.
	(gcn_expand_prologue): Make m0 init optional.
	Add support for packed work items.
	(output_file_start): Support gfx90a.
	(gcn_hsa_declare_function_name): Support gfx90a metadata.
	* config/gcn/gcn.h (TARGET_CPU_CPP_BUILTINS):Add __CDNA1__ and
	__CDNA2__.
	* config/gcn/gcn.md (<su>mulsi3_highpart): Use TARGET_GCN5_PLUS.
	(<su>mulsi3_highpart_imm): Likewise.
	(<su>mulsidi3): Likewise.
	(<su>mulsidi3_imm): Likewise.
	* config/gcn/gcn.opt (gpu_type): Add gfx90a.
	* config/gcn/mkoffload.cc (EF_AMDGPU_MACH_AMDGCN_GFX90a): New.
	(main): Support gfx90a.
	* config/gcn/t-gcn-hsa: Add gfx90a multilib.
	* config/gcn/t-omp-device: Add gfx90a isa.

2022-05-24  Andrew Stubbs  <ams@codesourcery.com>

	* config.in: Regenerate.
	* config/gcn/gcn-hsa.h (X_FIJI): Delete.
	(X_900): Delete.
	(X_906): Delete.
	(X_908): Delete.
	(S_FIJI): Delete.
	(S_900): Delete.
	(S_906): Delete.
	(S_908): Delete.
	(NO_XNACK): New macro.
	(NO_SRAM_ECC): New macro.
	(SRAMOPT): Keep only v4 variant.
	(HSACO3_SELECT_OPT): Delete.
	(DRIVER_SELF_SPECS): Delete.
	(ASM_SPEC): Remove LLVM 9 support.
	* config/gcn/gcn-valu.md
	(gather<mode>_insn_2offsets<exec>): Remove assembler bug workaround.
	(scatter<mode>_insn_2offsets<exec_scatter>): Likewise.
	* config/gcn/gcn.cc (output_file_start): Remove LLVM 9 support.
	(print_operand_address): Remove assembler bug workaround.
	* config/gcn/mkoffload.cc (EF_AMDGPU_XNACK_V3): Delete.
	(EF_AMDGPU_SRAM_ECC_V3): Delete.
	(SET_XNACK_ON): Delete v3 variants.
	(SET_XNACK_OFF): Delete v3 variants.
	(TEST_XNACK): Delete v3 variants.
	(SET_SRAM_ECC_ON): Delete v3 variants.
	(SET_SRAM_ECC_ANY): Delete v3 variants.
	(SET_SRAM_ECC_OFF): Delete v3 variants.
	(SET_SRAM_ECC_UNSUPPORTED): Delete v3 variants.
	(TEST_SRAM_ECC_ANY): Delete v3 variants.
	(TEST_SRAM_ECC_ON): Delete v3 variants.
	(copy_early_debug_info): Remove v3 support.
	(main): Remove v3 support.
	* configure: Regenerate.
	* configure.ac: Replace all GCN feature checks with a version check.

2022-05-24  Roger Sayle  <roger@nextmovesoftware.com>

	* config/i386/i386.md (peephole2): Convert xor;neg;adc;neg,
	i.e. a double word negation of a zero extended operand, to
	neg;sbb.

2022-05-24  Roger Sayle  <roger@nextmovesoftware.com>

	PR tree-optimization/105668
	* config/i386/i386-expand.cc (ix86_expand_sse_movcc): Support
	V1TImode, just like V2DImode.
	* config/i386/sse.md (vcond_mask_<mode><sseintvecmodelower>):
	Use VI_128 mode iterator instead of VI124_128 to include V2DI.
	(vcond_mask_v2div2di): Delete.
	(vcond_mask_v1tiv1ti): New define_expand.

2022-05-24  Roger Sayle  <roger@nextmovesoftware.com>

	* genpreds.cc (write_lookup_constraint_1): Avoid generating a call
	to strncmp for strings of length one.

2022-05-24  ShiYulong  <shiyulong@iscas.ac.cn>

	* config/riscv/predicates.md (imm5_operand): Add a new operand type for
	prefetch instructions.
	* config/riscv/riscv-builtins.cc (AVAIL): Add new AVAILs for CMO ISA
	Extensions.
	(RISCV_ATYPE_SI): New.
	(RISCV_ATYPE_DI): New.
	* config/riscv/riscv-ftypes.def (0): New.
	(1): New.
	* config/riscv/riscv.md (riscv_clean_<mode>): New.
	(riscv_flush_<mode>): New.
	(riscv_inval_<mode>): New.
	(riscv_zero_<mode>): New.
	(prefetch): New.
	(riscv_prefetchi_<mode>): New.
	* config/riscv/riscv-cmo.def: New file.

2022-05-24  ShiYulong  <shiyulong@iscas.ac.cn>

	* common/config/riscv/riscv-common.cc: Add zicbom, zicboz, zicbop extensions.
	* config/riscv/riscv-opts.h (MASK_ZICBOZ): New.
	(MASK_ZICBOM): New.
	(MASK_ZICBOP): New.
	(TARGET_ZICBOZ): New.
	(TARGET_ZICBOM): New.
	(TARGET_ZICBOP): New.
	* config/riscv/riscv.opt (riscv_zicmo_subext): New.

2022-05-24  David Malcolm  <dmalcolm@redhat.com>

	* tree-vect-slp-patterns.cc: Add "final" and "override" to
	vect_pattern::build impls as appropriate.

2022-05-24  David Malcolm  <dmalcolm@redhat.com>

	* ipa-cp.cc: Add "final" and "override" to call_summary_base vfunc
	implementations, removing redundant "virtual" as appropriate.
	* ipa-fnsummary.h: Likewise.
	* ipa-modref.cc: Likewise.
	* ipa-param-manipulation.cc: Likewise.
	* ipa-profile.cc: Likewise.
	* ipa-prop.h: Likewise.
	* ipa-pure-const.cc: Likewise.
	* ipa-reference.cc: Likewise.
	* ipa-sra.cc: Likewise.
	* symbol-summary.h: Likewise.
	* symtab-thunks.cc: Likewise.

2022-05-24  Martin Liska  <mliska@suse.cz>

	Revert:
	2022-05-24  Martin Liska  <mliska@suse.cz>

	* expmed.cc (emit_store_flag_1): Mitigate -Wmaybe-uninitialized
	warning.

2022-05-24  Martin Liska  <mliska@suse.cz>

	* expmed.cc (emit_store_flag_1): Mitigate -Wmaybe-uninitialized
	warning.

2022-05-24  Bruno Haible  <bruno@clisp.org>

	PR other/105527
	* doc/install.texi (Configuration): Add more details about --with-zstd.
	Document --with-zstd-include and --with-zstd-lib

2022-05-24  Richard Biener  <rguenther@suse.de>

	PR middle-end/105711
	* expmed.cc (extract_bit_field_as_subreg): Add op0_mode parameter
	and use it.
	(extract_bit_field_1): Pass down the mode of op0 to
	extract_bit_field_as_subreg.

2022-05-24  Vineet Gupta  <vineetg@rivosinc.com>

	* config/riscv/riscv.cc: (struct riscv_tune_param): Add
	fmv_cost.
	(rocket_tune_info): Add default fmv_cost 8.
	(sifive_7_tune_info): Ditto.
	(thead_c906_tune_info): Ditto.
	(optimize_size_tune_info): Ditto.
	(riscv_register_move_cost): Use fmv_cost for int<->fp moves.

2022-05-24  Jakub Jelinek  <jakub@redhat.com>

	PR c/105378
	* omp-builtins.def (BUILT_IN_GOMP_TASKWAIT_DEPEND_NOWAIT): New
	builtin.
	* gimplify.cc (gimplify_omp_task): Diagnose taskwait with nowait
	clause but no depend clauses.
	* omp-expand.cc (expand_taskwait_call): Use
	BUILT_IN_GOMP_TASKWAIT_DEPEND_NOWAIT rather than
	BUILT_IN_GOMP_TASKWAIT_DEPEND if nowait clause is present.

2022-05-24  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/100221
	* tree-ssa-dse.cc (contains_phi_arg): New function.
	(dse_classify_store): Postpone PHI defs that feed another PHI in defs.

2022-05-24  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/105629
	* tree-ssa-phiopt.cc (spaceship_replacement): Allow
	a sign-extending conversion.

2022-05-24  Kewen Lin  <linkw@linux.ibm.com>

	PR target/105627
	* config/rs6000/rs6000-p8swap.cc (union_defs): Assert def_insn can't
	be a debug insn.
	(union_uses): Skip debug use_insn.

2022-05-23  Vineet Gupta  <vineetg@rivosinc.com>

	* config/riscv/predicates.md (const_0_operand): Remove
	const_double.
	* config/riscv/riscv.cc (riscv_rtx_costs): Add check for
	CONST_DOUBLE.
	* config/riscv/riscv.h (TARGET_SUPPORTS_WIDE_INT): New define.

2022-05-23  Mayshao  <mayshao-oc@zhaoxin.com>

	* common/config/i386/cpuinfo.h (get_zhaoxin_cpu): Detect
	the specific type of Zhaoxin CPU, and return Zhaoxin CPU name.
	(cpu_indicator_init): Handle Zhaoxin processors.
	* common/config/i386/i386-common.cc: Add lujiazui.
	* common/config/i386/i386-cpuinfo.h (enum processor_vendor): Add
	VENDOR_ZHAOXIN.
	(enum processor_types): Add ZHAOXIN_FAM7H.
	(enum processor_subtypes): Add ZHAOXIN_FAM7H_LUJIAZUI.
	* config.gcc: Add lujiazui.
	* config/i386/cpuid.h (signature_SHANGHAI_ebx): Add
	Signatures for zhaoxin
	(signature_SHANGHAI_ecx): Ditto.
	(signature_SHANGHAI_edx): Ditto.
	* config/i386/driver-i386.cc (host_detect_local_cpu): Let
	-march=native recognize lujiazui processors.
	* config/i386/i386-c.cc (ix86_target_macros_internal): Add lujiazui.
	* config/i386/i386-options.cc (m_LUJIAZUI): New_definition.
	* config/i386/i386.h (enum processor_type): Ditto.
	* config/i386/i386.md: Add lujiazui.
	* config/i386/x86-tune-costs.h (struct processor_costs): Add
	lujiazui costs.
	* config/i386/x86-tune-sched.cc (ix86_issue_rate): Add lujiazui.
	(ix86_adjust_cost): Ditto.
	* config/i386/x86-tune.def (X86_TUNE_SCHEDULE): Add lujiazui Tunnings.
	(X86_TUNE_PARTIAL_REG_DEPENDENCY): Ditto.
	(X86_TUNE_SSE_PARTIAL_REG_DEPENDENCY): Ditto.
	(X86_TUNE_SSE_PARTIAL_REG_FP_CONVERTS_DEPENDENCY): Ditto.
	(X86_TUNE_SSE_PARTIAL_REG_CONVERTS_DEPENDENCY): Ditto.
	(X86_TUNE_MOVX): Ditto.
	(X86_TUNE_MEMORY_MISMATCH_STALL): Ditto.
	(X86_TUNE_FUSE_CMP_AND_BRANCH_32): Ditto.
	(X86_TUNE_FUSE_CMP_AND_BRANCH_64): Ditto.
	(X86_TUNE_FUSE_CMP_AND_BRANCH_SOFLAGS): Ditto.
	(X86_TUNE_FUSE_ALU_AND_BRANCH): Ditto.
	(X86_TUNE_ACCUMULATE_OUTGOING_ARGS): Ditto.
	(X86_TUNE_USE_LEAVE): Ditto.
	(X86_TUNE_PUSH_MEMORY): Ditto.
	(X86_TUNE_LCP_STALL): Ditto.
	(X86_TUNE_USE_INCDEC): Ditto.
	(X86_TUNE_INTEGER_DFMODE_MOVES): Ditto.
	(X86_TUNE_OPT_AGU): Ditto.
	(X86_TUNE_PREFER_KNOWN_REP_MOVSB_STOSB): Ditto.
	(X86_TUNE_MISALIGNED_MOVE_STRING_PRO_EPILOGUES): Ditto.
	(X86_TUNE_USE_SAHF): Ditto.
	(X86_TUNE_USE_BT): Ditto.
	(X86_TUNE_AVOID_FALSE_DEP_FOR_BMI): Ditto.
	(X86_TUNE_ONE_IF_CONV_INSN): Ditto.
	(X86_TUNE_AVOID_MFENCE): Ditto.
	(X86_TUNE_EXPAND_ABS): Ditto.
	(X86_TUNE_USE_SIMODE_FIOP): Ditto.
	(X86_TUNE_USE_FFREEP): Ditto.
	(X86_TUNE_EXT_80387_CONSTANTS): Ditto.
	(X86_TUNE_SSE_UNALIGNED_LOAD_OPTIMAL): Ditto.
	(X86_TUNE_SSE_UNALIGNED_STORE_OPTIMAL): Ditto.
	(X86_TUNE_SSE_TYPELESS_STORES): Ditto.
	(X86_TUNE_SSE_LOAD0_BY_PXOR): Ditto.
	* doc/extend.texi: Add details about lujiazui.
	* doc/invoke.texi: Add details about lujiazui.
	* config/i386/lujiazui.md: Introduce lujiazui cpu and include new md file.

2022-05-23  Martin Liska  <mliska@suse.cz>

	* config/tilepro/gen-mul-tables.cc (ARRAY_SIZE): Add new macro.

2022-05-23  Richard Biener  <rguenther@suse.de>

	* tree-ssa-forwprop.cc (forward_propagate_into_cond): Remove.
	(pass_forwprop::execute): Do not propagate into COND_EXPR conditions.

2022-05-23  Richard Biener  <rguenther@suse.de>

	* gimple-expr.cc (is_gimple_condexpr): Remove.
	* gimple-expr.h (is_gimple_condexpr): Likewise.
	* gimplify.cc (gimplify_expr): Remove is_gimple_condexpr usage.
	* tree-if-conv.cc (set_bb_predicate): Likewie.
	(add_to_predicate_list): Likewise.
	(gen_phi_arg_condition): Likewise.
	(predicate_scalar_phi): Likewise.
	(predicate_statements): Likewise.

2022-05-23  Richard Biener  <rguenther@suse.de>

	* gimple-expr.cc (is_gimple_condexpr): Equate to is_gimple_val.
	* gimplify.cc (gimplify_pure_cond_expr): Gimplify the condition
	as is_gimple_val.
	* gimple-fold.cc (valid_gimple_rhs_p): Simplify.
	* tree-cfg.cc (verify_gimple_assign_ternary): Likewise.
	* gimple-loop-interchange.cc (loop_cand::undo_simple_reduction):
	Build the condition of the COND_EXPR separately.
	* tree-ssa-loop-im.cc (move_computations_worker): Likewise.
	* tree-vect-generic.cc (expand_vector_condition): Likewise.
	* tree-vect-loop.cc (vect_create_epilog_for_reduction):
	Likewise.
	* vr-values.cc (simplify_using_ranges::simplify): Likewise.
	* tree-vect-patterns.cc: Add comment indicating we are
	building invalid COND_EXPRs and why.
	* omp-expand.cc (expand_omp_simd): Gimplify the condition
	to the COND_EXPR separately.
	(expand_omp_atomic_cas): Note part that should be unreachable
	now.
	* tree-ssa-forwprop.cc (forward_propagate_into_cond): Adjust
	condition for valid replacements.
	* tree-if-conv.cc (predicate_bbs): Simulate previous
	re-folding of the condition in folded COND_EXPRs which
	is necessary because of unfolded GIMPLE_CONDs in the IL
	as in for example gcc.dg/fold-bopcond-1.c.
	* gimple-range-gori.cc (gori_compute::condexpr_adjust):
	Handle that the comparison is now in the def stmt of
	the select operand.  Required by gcc.dg/pr104526.c.

2022-05-23  Tobias Burnus  <tobias@codesourcery.com>

	PR fortran/104949
	* langhooks-def.h (lhd_omp_array_size): New.
	(LANG_HOOKS_OMP_ARRAY_SIZE): Define.
	(LANG_HOOKS_DECLS): Add it.
	* langhooks.cc (lhd_omp_array_size): New.
	* langhooks.h (struct lang_hooks_for_decls): Add hook.
	* omp-low.cc (scan_sharing_clauses, lower_omp_target):
	Handle GOMP_MAP_FIRSTPRIVATE for array descriptors.

2022-05-23  Roger Sayle  <roger@nextmovesoftware.com>

	* config/i386/i386.cc (ix86_rtx_costs) <case AND>: Split from
	XOR/IOR case.  Account for two instructions for double-word
	operations.  In case of vector pandn, account for single
	instruction.  Likewise for integer andn with TARGET_BMI.
	<case NOT>: Vector NOT requires more than 1 instruction (pxor).
	<case NEG>: Double-word negation requires 3 instructions.

2022-05-23  Tsukasa OI  <research_trasio@irq.a4lg.com>

	* common/config/riscv/riscv-common.cc (riscv_supported_std_ext):
	Fix "K" extension prefix to be placed before "J".
	* config/riscv/arch-canonicalize: Likewise.

2022-05-23  liuhongt  <hongtao.liu@intel.com>

	* config/i386/x86-tune-costs.h (skylake_cost): Increase gpr
	<-> mask cost from 5 to 6.
	(icelake_cost): Ditto.

2022-05-20  Wilco Dijkstra  <wilco.dijkstra@arm.com>

	* config/aarch64/aarch64.md
	(and_<SHIFT:optab><mode>3_compare0): Support rotate left.
	(and_<SHIFT:optab>si3_compare0_uxtw): Likewise.
	(<LOGICAL:optab>_<SHIFT:optab><mode>3): Likewise.
	(<LOGICAL:optab>_<SHIFT:optab>si3_uxtw): Likewise.
	(one_cmpl_<optab><mode>2): Likewise.
	(<LOGICAL:optab>_one_cmpl_<SHIFT:optab><mode>3): Likewise.
	(<LOGICAL:optab>_one_cmpl_<SHIFT:optab>sidi_uxtw): New pattern.
	(eor_one_cmpl_<SHIFT:optab><mode>3_alt): Support rotate left.
	(eor_one_cmpl_<SHIFT:optab>sidi3_alt_ze): Likewise.
	(and_one_cmpl_<SHIFT:optab><mode>3_compare0): Likewise.
	(and_one_cmpl_<SHIFT:optab>si3_compare0_uxtw): Likewise.
	(and_one_cmpl_<SHIFT:optab><mode>3_compare0_no_reuse): Likewise.
	(and_<SHIFT:optab><mode>3nr_compare0): Likewise.
	(*<optab>si3_insn_uxtw): Use SHIFT_no_rotate.
	(rolsi3_insn_uxtw): New pattern.
	* config/aarch64/iterators.md (SHIFT): Add rotate left.
	(SHIFT_no_rotate): Add new iterator.
	(SHIFT:shift): Print rotate left as ror.
	(is_rotl): Add test for left rotate.

2022-05-20  Wilco Dijkstra  <wilco.dijkstra@arm.com>

	* config.gcc (aarch64*-*-*): Simplify --with-cpu and --with-arch
	processing.  Add support for architectural extensions.
	* config/aarch64/aarch64.h (TARGET_CPU_DEFAULT): Remove
	AARCH64_CPU_DEFAULT_FLAGS.
	(TARGET_CPU_NBITS): Remove.
	(TARGET_CPU_MASK): Remove.
	* config/aarch64/aarch64.cc (AARCH64_CPU_DEFAULT_FLAGS): Remove define.
	(get_tune_cpu): Assert CPU is always valid.
	(get_arch): Assert architecture is always valid.
	(aarch64_override_options): Cleanup CPU selection code and simplify logic.
	(aarch64_option_restore): Remove unnecessary checks on tune.

2022-05-20  David Malcolm  <dmalcolm@redhat.com>

	* config/aarch64/aarch64-sve-builtins-base.cc: Replace uses of
	"FINAL" and "OVERRIDE" with "final" and "override".
	* config/aarch64/aarch64-sve-builtins-functions.h: Likewise.
	* config/aarch64/aarch64-sve-builtins-shapes.cc: Likewise.
	* config/aarch64/aarch64-sve-builtins-sve2.cc: Likewise.
	* diagnostic-path.h: Likewise.
	* digraph.cc: Likewise.
	* gcc-rich-location.h: Likewise.
	* gimple-array-bounds.cc: Likewise.
	* gimple-loop-versioning.cc: Likewise.
	* gimple-range-cache.cc: Likewise.
	* gimple-range-cache.h: Likewise.
	* gimple-range-fold.cc: Likewise.
	* gimple-range-fold.h: Likewise.
	* gimple-range-tests.cc: Likewise.
	* gimple-range.h: Likewise.
	* gimple-ssa-evrp.cc: Likewise.
	* input.cc: Likewise.
	* json.h: Likewise.
	* read-rtl-function.cc: Likewise.
	* tree-complex.cc: Likewise.
	* tree-diagnostic-path.cc: Likewise.
	* tree-ssa-ccp.cc: Likewise.
	* tree-ssa-copy.cc: Likewise.
	* tree-vrp.cc: Likewise.
	* value-query.h: Likewise.
	* vr-values.h: Likewise.

2022-05-20  Marcel Vollweiler  <marcel@codesourcery.com>

	* omp-low.cc (omp_runtime_api_call): Added target_memcpy_async and
	target_memcpy_rect_async to omp_runtime_apis array.

2022-05-20  Christophe Lyon  <christophe.lyon@arm.com>

	* doc/sourcebuild.texi (Decimal floating point attributes): Document
	dfp_bid effective-target.

2022-05-20  Christophe Lyon  <christophe.lyon@arm.com>

	* config/aarch64/aarch64.cc
	(aarch64_split_128bit_move): Handle DFP modes.
	(aarch64_mode_valid_for_sched_fusion_p): Likewise.
	(aarch64_classify_address): Likewise.
	(aarch64_legitimize_address_displacement): Likewise.
	(aarch64_reinterpret_float_as_int): Likewise.
	(aarch64_float_const_zero_rtx_p): Likewise.
	(aarch64_can_const_movi_rtx_p): Likewise.
	(aarch64_anchor_offset): Likewise.
	(aarch64_secondary_reload): Likewise.
	(aarch64_rtx_costs): Likewise.
	(aarch64_legitimate_constant_p): Likewise.
	(aarch64_gimplify_va_arg_expr): Likewise.
	(aapcs_vfp_sub_candidate): Likewise.
	(aarch64_vfp_is_call_or_return_candidate): Likewise.
	(aarch64_output_scalar_simd_mov_immediate): Likewise.
	(aarch64_gen_adjusted_ldpstp): Likewise.
	(aarch64_scalar_mode_supported_p): Accept DFP modes if enabled.
	* config/aarch64/aarch64.md
	(movsf_aarch64): Use SFD iterator and rename into
	mov<mode>_aarch64.
	(movdf_aarch64): Use DFD iterator and rename into
	mov<mode>_aarch64.
	(movtf_aarch64): Use TFD iterator and rename into
	mov<mode>_aarch64.
	(split pattern for move TF mode): Use TFD iterator.
	* config/aarch64/iterators.md
	(GPF_TF_F16_MOV): Add DFP modes.
	(SFD, DFD, TFD): New iterators.
	(GPF_TF): Add DFP modes.
	(TX, DX, DX2): Likewise.

2022-05-20  Christophe Lyon  <christophe.lyon@arm.com>

	* configure: Regenerate.

2022-05-19  Roger Sayle  <roger@nextmovesoftware.com>

	PR middle-end/98865
	* expr.cc (expand_expr_real_2) [MULT_EXPR]:  Expand X*Y as X&Y
	when both X and Y are [0, 1], X*Y as X&-Y when Y is [0,1] and
	likewise X*Y as -X&Y when X is [0,1] using tree_nonzero_bits.

2022-05-19  Will Schmidt  <will_schmidt@vnet.ibm.com>

	* config/rs6000/rs6000-builtins.def: Rephrase
	to remove RS6000_BTC_SPECIAL from comment.
	* config/rs6000/rs6000.h (RS6000_BTC_UNARY, RS6000_BTC_BINARY,
	RS6000_BTC_TERNARY, RS6000_BTC_QUATERNARY,
	RS6000_BTC_QUINARY, RS6000_BTC_SENARY, RS6000_BTC_OPND_MASK,
	RS6000_BTC_SPECIAL, RS6000_BTC_PREDICATE, RS6000_BTC_ABS,
	RS6000_BTC_DST, RS6000_BTC_TYPE_MASK, RS6000_BTC_MISC,
	RS6000_BTC_CONST, RS6000_BTC_PURE, RS6000_BTC_FP,
	RS6000_BTC_QUAD, RS6000_BTC_PAIR, RS6000_BTC_QUADPAIR,
	RS6000_BTC_ATTR_MASK, RS6000_BTC_SPR, RS6000_BTC_VOID,
	RS6000_BTC_CR, RS6000_BTC_OVERLOADED, RS6000_BTC_GIMPLE,
	RS6000_BTC_MISC_MASK, RS6000_BTC_MEM, RS6000_BTC_SAT,
	RS6000_BTM_ALWAYS): Delete.

2022-05-19  Richard Biener  <rguenther@suse.de>

	* omp-expand.cc (expand_omp_atomic_cas): Do not short-cut
	computation of the new value.

2022-05-19  Richard Biener  <rguenther@suse.de>

	* tree-ssa-pre.cc (get_or_alloc_expression_id): Remove.
	(add_to_value): Use get_expression_id.
	(bitmap_insert_into_set): Likewise.
	(bitmap_value_insert_into_set): Likewise.

2022-05-19  David Malcolm  <dmalcolm@redhat.com>

	* doc/invoke.texi (-fanalyzer-checker=): Add
	-Wanalyzer-va-list-leak and -Wanalyzer-va-list-use-after-va-end to
	the list of analyzer warnings disabled by
	-fanalyzer-checker=taint.

2022-05-19  Jakub Jelinek  <jakub@redhat.com>

	PR debug/105630
	* cfgexpand.cc (expand_debug_expr): For VAR_DECL, punt for
	global vars without symtab node even when they have DECL_RTL
	set.

2022-05-19  Jakub Jelinek  <jakub@redhat.com>

	PR c/105635
	* pointer-query.cc (gimple_parm_array_size): Return NULL if var
	doesn't have pointer or reference type.

2022-05-18  Marek Polacek  <polacek@redhat.com>

	PR c/105131
	* doc/invoke.texi: Document -Wenum-int-mismatch.

2022-05-18  Uros Bizjak  <ubizjak@gmail.com>

	* config/i386/gnu-user-common.h (defined): Only define
	TARGET_CAN_SPLIT_STACK for glibc targets.
	* config/i386/gnu.h (defined): Ditto.

2022-05-18  Roger Sayle  <roger@nextmovesoftware.com>

	* config/i386/i386.cc (ix86_rtx_costs) [MULT]: When mode size
	is wider than word_mode, a multiplication costs three word_mode
	multiplications and two word_mode additions.

2022-05-18  Roger Sayle  <roger@nextmovesoftware.com>

	* config/i386/i386.md (define_split):  Split *andsi_1
	and *andn_si_ccno after reload with -Oz.

2022-05-18  Frederik Harwath  <frederik@codesourcery.com>

	* graphite-scop-detection.cc (scop_detection::can_represent_loop):
	Output reason for failure to dump file.
	(scop_detection::harmful_loop_in_region): Likewise.
	(scop_detection::graphite_can_represent_expr): Likewise.
	(scop_detection::stmt_has_simple_data_refs_p): Likewise.
	(scop_detection::stmt_simple_for_scop_p): Likewise.
	(print_sese_loop_numbers): New function.
	(scop_detection::add_scop): Use from here.

2022-05-18  liuhongt  <hongtao.liu@intel.com>

	PR middle-end/103462
	* match.pd (bitwise_induction_p): New match.
	* tree-scalar-evolution.cc (gimple_bitwise_induction_p):
	Declare.
	(analyze_and_compute_bitwise_induction_effect): New function.
	(enum bit_op_kind): New enum.
	(final_value_replacement_loop): Enhanced to handle bitwise
	induction.

2022-05-18  Haochen Gui  <guihaoc@gcc.gnu.org>

	PR target/95737
	* config/rs6000/rs6000.md (*subfsi3_carry_in_xx_64): New.

2022-05-18  liuhongt  <hongtao.liu@intel.com>

	PR target/104375
	* config/i386/i386.md (*bmi2_bzhi_zero_extendsidi_4): New
	define_insn.

2022-05-18  liuhongt  <hongtao.liu@intel.com>

	PR target/104610
	* config/i386/i386-expand.cc (ix86_expand_branch): Use ptest
	for QImode when code is EQ or NE.
	* config/i386/i386.md (cbranchoi4): New expander.

2022-05-18  Peter Bergner  <bergner@linux.ibm.com>
	    Segher Boessenkool  <segher@kernel.crashing.org>

	PR target/105556
	* config/rs6000/mma.md (mma_<vv>, mma_<avv>, mma_<pv>, mma_<apv>,
	mma_<vvi4i4i8>, mma_<avvi4i4i8>, mma_<vvi4i4i2>, mma_<avvi4i4i2>,
	mma_<vvi4i4>, mma_<avvi4i4>, mma_<pvi4i2>, mma_<apvi4i2>,
	mma_<vvi4i4i4>, mma_<avvi4i4i4>): Replace "wa" constraints with "v,?wa".
	Update other operands accordingly.

2022-05-17  Marek Polacek  <polacek@redhat.com>

	* godump.cc (go_output_typedef): Use the DECL_INITIAL of the TREE_VALUE.

2022-05-17  Pat Haugen  <pthaugen@linux.ibm.com>

	PR target/99685
	* config/rs6000/rs6000-call.cc (rs6000_function_arg_advance_1): Bump
	register count when not splitting IEEE 128-bit Complex.

2022-05-17  Tobias Burnus  <tobias@codesourcery.com>

	* omp-low.cc (check_omp_nesting_restrictions): Skip warning for
	target inside target if inner is reverse offload.

2022-05-17  Tobias Burnus  <tobias@codesourcery.com>

	* config/gcn/mkoffload.cc (process_obj): Revert: Use ARRAY_SIZE.
	* config/nvptx/mkoffload.cc (process): Likewise.

2022-05-17  Andrew MacLeod  <amacleod@redhat.com>

	* Makefile.in (OBJS): Add gimple-range-side-effect.o.
	* gimple-range-cache.cc (non_null_ref::non_null_ref): Delete.
	(non_null_ref::~non_null_ref): Delete.
	(non_null_ref::set_nonnull): Delete.
	(non_null_ref::non_null_deref_p): Delete.
	(non_null_ref::process_name): Delete.
	(ranger_cache::ranger_cache): Initialize m_exit object.
	(ranger_cache::fill_block_cache): Use m_exit object intead of nonnull.
	(ranger_cache::range_from_dom): Use side_effect class and m_exit object.
	(ranger_cache::update_to_nonnull): Delete.
	(non_null_loadstore): Delete.
	(ranger_cache::block_apply_nonnull): Delete.
	(ranger_cache::apply_side_effects): New.
	* gimple-range-cache.h (class non_null_ref): Delete.
	(non_null_ref::adjust_range): Delete.
	(class ranger_cache): Adjust prototypes, add side effect manager.
	* gimple-range-path.cc (path_range_query::range_defined_in_block): Use
	side effect manager for queries.
	(path_range_query::adjust_for_non_null_uses): Ditto.
	* gimple-range-path.h (class path_range_query): Delete non_null_ref.
	* gimple-range-side-effect.cc: New.
	* gimple-range-side-effect.h: New.
	* gimple-range.cc (gimple_ranger::gimple_ranger): Update contructor.
	(gimple_ranger::range_of_expr): Check def block for override value.
	(gimple_ranger::range_on_entry): Don't scan dominators for non-null.
	(gimple_ranger::range_on_edge): Check for outgoing side-effects.
	(gimple_ranger::register_side_effects): Call apply_side_effects.
	(enable_ranger): Update contructor.
	* gimple-range.h (class gimple_ranger): Update prototype.
	(enable_ranger): Update prototype.
	* tree-vrp.cc (execute_ranger_vrp): Invoke without immediate-use flag.

2022-05-17  Giuliano Belinassi  <gbelinassi@suse.de>

	PR c++/105169
	* targhooks.cc (default_print_patchable_function_entry_1): Handle COMDAT case.
	* varasm.cc (switch_to_comdat_section): New
	(handle_vtv_comdat_section): Call switch_to_comdat_section.
	* varasm.h: Declare switch_to_comdat_section.

2022-05-17  Richard Biener  <rguenther@suse.de>

	* cfgloopmanip.cc (duplicate_loop_body_to_header_edge): Do
	not clear bb->aux of the copied blocks.

2022-05-17  Andrew MacLeod  <amacleod@redhat.com>

	PR tree-optimization/105458
	* value-relation.cc (path_oracle::register_relation): Merge, then check
	for equivalence.

2022-05-17  Uroš Bizjak  <ubizjak@gmail.com>

	PR target/105624
	Revert:
	* config/i386/i386.md: Remove constraints when used with
	const_int_operand, const0_operand, const_1_operand, constm1_operand,
	const8_operand, const128_operand, const248_operand, const123_operand,
	const2367_operand, const1248_operand, const359_operand,
	const_4_or_8_to_11_operand, const48_operand, const_0_to_1_operand,
	const_0_to_3_operand, const_0_to_4_operand, const_0_to_5_operand,
	const_0_to_7_operand, const_0_to_15_operand, const_0_to_31_operand,
	const_0_to_63_operand, const_0_to_127_operand, const_0_to_255_operand,
	const_0_to_255_mul_8_operand, const_1_to_31_operand,
	const_1_to_63_operand, const_2_to_3_operand, const_4_to_5_operand,
	const_4_to_7_operand, const_6_to_7_operand, const_8_to_9_operand,
	const_8_to_11_operand, const_8_to_15_operand, const_10_to_11_operand,
	const_12_to_13_operand, const_12_to_15_operand, const_14_to_15_operand,
	const_16_to_19_operand, const_16_to_31_operand, const_20_to_23_operand,
	const_24_to_27_operand and const_28_to_31_operand.
	* config/i386/mmx.md: Ditto.
	* config/i386/sse.md: Ditto.
	* config/i386/subst.md: Ditto.
	* config/i386/sync.md: Ditto.

2022-05-17  Thomas Schwinge  <thomas@codesourcery.com>

	* diagnostic.cc: Don't advise to call 'abort' instead of
	'internal_error'.
	* system.h: Advise to call 'internal_error' instead of 'abort' or
	'fancy_abort'.

2022-05-17  Frederik Harwath  <frederik@codesourcery.com>

	* graphite-sese-to-poly.cc (build_poly_sr_1): Fix a typo and
	a reference to a variable which does not exist.
	* graphite-isl-ast-to-gimple.cc (gsi_insert_earliest): Fix typo
	in comment.

2022-05-17  Frederik Harwath  <frederik@codesourcery.com>

	* graphite-sese-to-poly.cc (isl_id_for_ssa_name): Rename to ...
	(isl_id_for_parameter): ... this new function name.
	(build_scop_context): Adjust function use.

2022-05-17  Tobias Burnus  <tobias@codesourcery.com>

	PR target/105602
	* config/gcn/t-omp-device (arch): Add 'amdgcn' besides existing 'gcn'.
	* config/gcn/gcn.cc (gcn_omp_device_kind_arch_isa): Likewise.

2022-05-17  Jakub Jelinek  <jakub@redhat.com>

	* tree-core.h (enum omp_clause_depend_kind): Add
	OMP_CLAUSE_DEPEND_INOUTSET.
	* tree-pretty-print.cc (dump_omp_clause): Handle
	OMP_CLAUSE_DEPEND_INOUTSET.
	* gimplify.cc (gimplify_omp_depend): Likewise.
	* omp-low.cc (lower_depend_clauses): Likewise.

2022-05-17  Jakub Jelinek  <jakub@redhat.com>

	PR target/105613
	* config/i386/sse.md (vec_cmpeqv2div2di, vec_cmpeqv1tiv1ti): Use
	andv4si3 only for EQ, for NE use iorv4si3 instead.

2022-05-17  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/105618
	* tree-ssa-sink.cc (statement_sink_location): For virtual
	PHI uses ignore those defining the used virtual operand.

2022-05-17  Jakub Jelinek  <jakub@redhat.com>

	* tree-ssa-forwprop.cc (simplify_bitfield_ref): Spelling fix:
	hanlde -> handle.  Fix up comment formatting.

2022-05-17  liuhongt  <hongtao.liu@intel.com>

	PR target/105033
	* config/i386/sse.md (*vec_concatv4si): Extend to ..
	(*vec_concat<mode>): .. V16QI and V8HImode.
	(*vec_concatv16qi_permt2): New pre_reload define_insn_and_split.
	(*vec_concatv8hi_permt2): Ditto.

2022-05-17  liuhongt  <hongtao.liu@intel.com>

	PR tree-optimization/105591
	* tree-ssa-forwprop.cc (simplify_bitfield_ref): Clamp
	vec_perm_expr index.

2022-05-16  Jason Merrill  <jason@redhat.com>

	PR c/105492
	* attribs.cc (decl_attributes): Fix broken typedefs here.

2022-05-16  David Malcolm  <dmalcolm@redhat.com>

	PR analyzer/105103
	* Makefile.in (ANALYZER_OBJS): Add analyzer/varargs.o.
	* doc/invoke.texi: Add -Wanalyzer-va-arg-type-mismatch,
	-Wanalyzer-va-list-exhausted, -Wanalyzer-va-list-leak, and
	-Wanalyzer-va-list-use-after-va-end.

2022-05-16  Richard Biener  <rguenther@suse.de>

	* gimple-match.h (gimple_build): Move code_helper overloads ...
	* gimple-fold.h (gimple_build): ... here.
	(gimple_build): Transition to new worker API.  Provide
	overloads from sequence-based API.
	(gimple_convert): Likewise.
	(gimple_convert_to_ptrofftype): Likewise.
	(gimple_build_vector_from_val): Likewise.
	(gimple_build_vector): Likewise.
	(gimple_build_round_up): Likewise.
	* gimple-fold.cc (gimple_build_insert_seq): New helper.
	(gimple_build): Use it.  Transition combined_fn and code_helper
	API parts.
	(gimple_convert): Transition to new worker API.
	(gimple_convert_to_ptrofftype): Likewise.
	(gimple_build_vector_from_val): Likewise.
	(gimple_build_vector): Likewise.
	(gimple_build_round_up): Likewise.

2022-05-16  Richard Biener  <rguenther@suse.de>

	* gimple-match.h (code_helper): Move class ...
	* tree.h (code_helper): ... here.

2022-05-16  Martin Liska  <mliska@suse.cz>

	* opts-global.cc (write_langs): Add comment.

2022-05-16  Eric Botcazou  <ebotcazou@adacore.com>

	* dwarf2out.cc (loc_list_from_tree_1) <TRUTH_NOT_EXPR>: Do a logical
	instead of a bitwise negation.
	<COND_EXPR>: Swap the operands if the condition is TRUTH_NOT_EXPR.

2022-05-16  Martin Liska  <mliska@suse.cz>

	* attribs.cc (diag_attr_exclusions): Use ARRAY_SIZE.
	(decls_mismatched_attributes): Likewise.
	* builtins.cc (c_strlen): Likewise.
	* cfg.cc (DEF_BASIC_BLOCK_FLAG): Likewise.
	* common/config/aarch64/aarch64-common.cc (aarch64_option_init_struct): Likewise.
	* config/aarch64/aarch64-builtins.cc (aarch64_lookup_simd_builtin_type): Likewise.
	(aarch64_init_simd_builtin_types): Likewise.
	(aarch64_init_builtin_rsqrt): Likewise.
	* config/aarch64/aarch64.cc (is_madd_op): Likewise.
	* config/arm/arm-builtins.cc (arm_lookup_simd_builtin_type): Likewise.
	(arm_init_simd_builtin_types): Likewise.
	* config/avr/gen-avr-mmcu-texi.cc (mcus[ARRAY_SIZE): Likewise.
	(c_prefix): Likewise.
	(main): Likewise.
	* config/c6x/c6x.cc (N_SAVE_ORDER): Likewise.
	* config/darwin-c.cc (darwin_register_frameworks): Likewise.
	* config/gcn/mkoffload.cc (process_obj): Likewise.
	* config/i386/i386-builtins.cc (get_builtin_code_for_version): Likewise.
	(fold_builtin_cpu): Likewise.
	* config/m32c/m32c.cc (PUSHM_N): Likewise.
	* config/nvptx/mkoffload.cc (process): Likewise.
	* config/rs6000/driver-rs6000.cc (host_detect_local_cpu): Likewise.
	* config/s390/s390.cc (NR_C_MODES): Likewise.
	* config/tilepro/gen-mul-tables.cc (find_sequences): Likewise.
	(create_insn_code_compression_table): Likewise.
	* config/vms/vms.cc (NBR_CRTL_NAMES): Likewise.
	* diagnostic-format-json.cc (json_from_expanded_location): Likewise.
	* dwarf2out.cc (ARRAY_SIZE): Likewise.
	* genhooks.cc (emit_documentation): Likewise.
	(emit_init_macros): Likewise.
	* gimple-ssa-sprintf.cc (format_floating): Likewise.
	* gimple-ssa-warn-access.cc (memmodel_name): Likewise.
	* godump.cc (keyword_hash_init): Likewise.
	* hash-table.cc (hash_table_higher_prime_index): Likewise.
	* input.cc (for_each_line_table_case): Likewise.
	* ipa-free-lang-data.cc (free_lang_data): Likewise.
	* ipa-inline.cc (sanitize_attrs_match_for_inline_p): Likewise.
	* optc-save-gen.awk: Likewise.
	* spellcheck.cc (test_metric_conditions): Likewise.
	* tree-vect-slp-patterns.cc (sizeof): Likewise.
	(ARRAY_SIZE): Likewise.
	* tree.cc (build_common_tree_nodes): Likewise.

2022-05-16  Martin Liska  <mliska@suse.cz>

	* opts-global.cc (write_langs): Allocate at least one byte.

2022-05-16  Richard Biener  <rguenther@suse.de>

	* match.pd (A cmp B ? A : B -> min/max): New patterns
	carried over from fold_cond_expr_with_comparison.

2022-05-16  liuhongt  <hongtao.liu@intel.com>

	PR target/105587
	* config/i386/i386-expand.cc
	(expand_vec_perm_pslldq_psrldq_por): Fail when (d->perm[i] ==
	d->perm[i-1] + 1) && d->perm[i] == nelt && start != -1.

2022-05-15  Uroš Bizjak  <ubizjak@gmail.com>

	* config/i386/i386.md: Remove constraints when used with
	const_int_operand, const0_operand, const_1_operand, constm1_operand,
	const8_operand, const128_operand, const248_operand, const123_operand,
	const2367_operand, const1248_operand, const359_operand,
	const_4_or_8_to_11_operand, const48_operand, const_0_to_1_operand,
	const_0_to_3_operand, const_0_to_4_operand, const_0_to_5_operand,
	const_0_to_7_operand, const_0_to_15_operand, const_0_to_31_operand,
	const_0_to_63_operand, const_0_to_127_operand, const_0_to_255_operand,
	const_0_to_255_mul_8_operand, const_1_to_31_operand,
	const_1_to_63_operand, const_2_to_3_operand, const_4_to_5_operand,
	const_4_to_7_operand, const_6_to_7_operand, const_8_to_9_operand,
	const_8_to_11_operand, const_8_to_15_operand, const_10_to_11_operand,
	const_12_to_13_operand, const_12_to_15_operand, const_14_to_15_operand,
	const_16_to_19_operand, const_16_to_31_operand, const_20_to_23_operand,
	const_24_to_27_operand and const_28_to_31_operand.
	* config/i386/mmx.md: Ditto.
	* config/i386/sse.md: Ditto.
	* config/i386/subst.md: Ditto.
	* config/i386/sync.md: Ditto.

2022-05-13  Roger Sayle  <roger@nextmovesoftware.com>
	    Uroš Bizjak  <ubizjak@gmail.com>

	* config/i386/sse.md (vec_cmpeqv2div2di): Enable for TARGET_SSE2.
	For !TARGET_SSE4_1, expand as a V4SI vector comparison, followed
	by a pshufd and pand.
	(vec_cmpeqv1tiv1ti): New define_expand implementing V1TImode
	vector equality as a V2DImode vector comparison (see above),
	followed by a pshufd and pand.

2022-05-13  Roger Sayle  <roger@nextmovesoftware.com>

	PR tree-optimization/83907
	* tree-ssa-strlen.cc (handle_builtin_memset): Record a strinfo
	for memset with an constant char value.
	(handle_store): Improved handling of stores with a first byte
	of zero, but not storing_all_zeros_p.

2022-05-13  Philipp Tomsich  <philipp.tomsich@vrull.eu>
	    Manolis Tsamis  <manolis.tsamis@vrull.eu>

	* config/riscv/riscv.h (CLZ_DEFINED_VALUE_AT_ZERO): Implement.
	(CTZ_DEFINED_VALUE_AT_ZERO): Same.
	* doc/sourcebuild.texi: add documentation for RISC-V specific
	test target keywords

2022-05-13  Andrew MacLeod  <amacleod@redhat.com>

	PR tree-optimization/105597
	* range-op.cc (operator_minus::lhs_op1_relation): Use op1 instead
	of the lhs and make sure it is not undefined.

2022-05-13  Sebastian Pop  <spop@amazon.com>

	PR target/105162
	* config/aarch64/aarch64-protos.h (atomic_ool_names): Increase dimension
	of str array.
	* config/aarch64/aarch64.cc (aarch64_atomic_ool_func): Call
	memmodel_from_int and handle MEMMODEL_SYNC_*.
	(DEF0): Add __aarch64_*_sync functions.

2022-05-13  Andrew MacLeod  <amacleod@redhat.com>

	* gimple-range-fold.cc (fold_using_range::range_of_phi): Use new VREL_*
	enumerated values.
	* gimple-range-path.cc (maybe_register_phi_relation): Ditto.
	* range-op.cc (*::lhs_op1_relation): Return relation_kind, and use
	new VREL enumerated values.
	(*::lhs_op2_relation): Ditto.
	(*::op1_op2_relation): Ditto.
	(*::fold_range): Use new VREL enumerated values.
	(minus_op1_op2_relation_effect): Ditto.
	(range_relational_tests): Ditto.
	* range-op.h (fold_range, op1_range, op2_range): Use VREL_VARYING.
	(lhs_op1_relation, lhs_op2_relation, op1_op2_relation): Return
	relation_kind.
	(*_op1_op2_relation): Return relation_kind.
	(relop_early_resolve): Use VREL_UNDEFINED.
	* value-query.cc (range_query::query_relation): Use VREL_VARYING.
	* value-relation.cc (VREL_LAST): Change enumerated value.
	(vrel_range_assert): Delete.
	(print_relation): Remove range assert.
	(rr_negate_table): Adjust table to use new enumerated values..
	(relation_negate): Remove range assert.
	(rr_swap_table): Adjust.
	(relation_swap): Remove range assert.
	(rr_intersect_table): Adjust.
	(relation_intersect): Remove range assert.
	(rr_union_table): Adjust.
	(relation_union): Remove range assert.
	(rr_transitive_table): Adjust.
	(relation_transitive): Remove range assert.
	(equiv_oracle::query_relation): Use new VREL enumerated values.
	(equiv_oracle::register_relation): Ditto.
	(relation_oracle::register_stmt): Ditto.
	(dom_oracle::set_one_relation): Ditto.
	(dom_oracle::register_transitives): Ditto.
	(dom_oracle::query_relation): Ditto.
	(path_oracle::register_relation): Ditto.
	(path_oracle::query_relation): Ditto.
	* value-relation.h (enum relation_kind_t): New relation_kind.
	(*_op1_op2_relation): Adjust prototypes.

2022-05-13  Andrew MacLeod  <amacleod@redhat.com>

	* gimple-range-edge.cc (calc_switch_ranges): Check union return value.
	* value-range.cc (irange::legacy_verbose_union_): Add return value.
	(irange::irange_single_pair_union): New.
	(irange::irange_union): Add return value.
	* value-range.h (class irange): Adjust prototypes.

2022-05-13  Andrew MacLeod  <amacleod@redhat.com>

	* value-range.cc (irange::legacy_verbose_intersect): Add return value.
	(irange::irange_contains_p): New.
	(irange::irange_intersect): Add return value.
	* value-range.h (class irange): Adjust prototypes.

2022-05-13  Andrew MacLeod  <amacleod@redhat.com>

	* gimple-range-cache.cc (ranger_cache::get_global_range): Return the
	had_global value instead.

2022-05-13  Andrew MacLeod  <amacleod@redhat.com>

	PR tree-optimization/104547
	* gimple-range-fold.cc (fold_using_range::range_of_range_op): Add
	the op1/op2 relation to the relation call.
	* range-op.cc (*::lhs_op1_relation): Add param.
	(*::lhs_op2_relation): Ditto.
	(operator_minus::lhs_op1_relation): New.
	(range_relational_tests): Add relation param.
	* range-op.h (lhs_op1_relation, lhs_op2_relation): Adjust prototype.

2022-05-13  Andrew MacLeod  <amacleod@redhat.com>

	* gimple-range.cc (gimple_ranger::register_side_effects): First check
	if the DEF should be exported as a global.
	* tree-vrp.cc (rvrp_folder::pre_fold_bb): Process PHI side effects,
	which will export globals.
	(execute_ranger_vrp): Remove call to export_global_ranges.

2022-05-13  Andrew MacLeod  <amacleod@redhat.com>

	* value-relation.cc (path_oracle::reset_path): Clear killing_defs.

2022-05-13  Andrew MacLeod  <amacleod@redhat.com>

	* gimple-range-cache.cc (ranger_cache::ranger_cache): Start with
	worlist truncated.
	(ranger_cache::entry_range): Add rfd_mode parameter.
	(ranger_cache::exit_range): Ditto.
	(ranger_cache::edge_range): New.  Incorporate from range_on_edge.
	(ranger_cache::range_of_expr): Adjust call to entry_range.
	(ranger_cache::range_on_edge): Split to edge_range and call.
	(ranger_cache::fill_block_cache): Always invoke range_from_dom.
	(ranger_cache::range_from_dom): Make reentrant, add search mode, handle
	mutiple predecessors.
	(ranger_cache::update_to_nonnull): Adjust call to exit_range.
	* gimple-range-cache.h (ranger_cache): Add enum rfd_mode.  Adjust
	prototypes.

2022-05-13  Alexandre Oliva  <oliva@adacore.com>

	* gimple-harden-conditionals.cc: Include sbitmap.h.
	(pass_harden_conditional_branches::execute): Skip new blocks.
	(pass_harden_compares::execute): Likewise.

2022-05-13  Richard Earnshaw  <rearnsha@arm.com>

	PR target/105463
	* config/arm/mve.md (*movmisalign<mode>_mve_store): Use
	mve_memory_operand.
	(*movmisalign<mode>_mve_load): Likewise.
	* config/arm/vec-common.md (movmisalign<mode>): Convert to generator
	form...
	(@movmisalign<mode>): ... thus.  Use generic predicates and then
	rework operands if they are not valid.  For MVE rework to a
	narrower element size if the alignment is not high enough.

2022-05-13  Richard Earnshaw  <rearnsha@arm.com>

	* config/arm/arm.cc (mve_vector_mem_operand): Allow SP_REGNUM
	when there is no write-back.  Fix use when strict is true.

2022-05-13  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/xtensa.h (TARGET_HAS_NO_HW_DIVIDE): New macro
	definition.

2022-05-13  Takayuki 'January June' Suwa  <jjsuwa_sys3175@yahoo.co.jp>

	* config/xtensa/xtensa.md (extvsi, extvsi_internal, extzvsi,
	extzvsi_internal): Rename from extv, extv_internal, extzv and
	extzv_internal, respectively.

2022-05-13  Eric Botcazou  <ebotcazou@adacore.com>

	* tree-sra.cc (sra_modify_assign): Check that scalar storage order
	is the same on the LHS and RHS before rewriting one with the model
	of the other.

2022-05-13  Richard Biener  <rguenther@suse.de>

	* gimple-fold.cc (gimple_build): Adjust for new
	main API.
	* gimple-fold.h (gimple_build): New main APIs with
	iterator, insert direction and iterator update.
	(gimple_build): New forwarder template.
	(clear_padding_type_may_have_padding_p): Remove.
	(clear_type_padding_in_mask): Likewise.
	(arith_overflowed_p): Likewise.
	* fold-const.h (clear_padding_type_may_have_padding_p): Declare.
	(clear_type_padding_in_mask): Likewise.
	(arith_overflowed_p): Likewise.
	* tree-vect-generic.cc (gimplify_build3): Use main gimple_build API.
	(gimplify_build2): Likewise.
	(gimplify_build1): Likewise.
	* ubsan.cc (ubsan_expand_ptr_ifn): Likewise, avoid extra
	compare stmt.
	* gengtype.cc (open_base_files): Re-order includes.
	* builtins.cc: Re-order gimple-fold.h include.
	* calls.cc: Likewise.
	* cgraphbuild.cc: Likewise.
	* cgraphunit.cc: Likewise.
	* config/rs6000/rs6000-builtin.cc: Likewise.
	* config/rs6000/rs6000-call.cc: Likewise.
	* config/rs6000/rs6000.cc: Likewise.
	* config/s390/s390.cc: Likewise.
	* expr.cc: Likewise.
	* fold-const.cc: Likewise.
	* function-tests.cc: Likewise.
	* gimple-match-head.cc: Likewise.
	* gimple-range-fold.cc: Likewise.
	* gimple-ssa-evrp-analyze.cc: Likewise.
	* gimple-ssa-evrp.cc: Likewise.
	* gimple-ssa-sprintf.cc: Likewise.
	* gimple-ssa-warn-access.cc: Likewise.
	* gimplify.cc: Likewise.
	* graphite-isl-ast-to-gimple.cc: Likewise.
	* ipa-cp.cc: Likewise.
	* ipa-devirt.cc: Likewise.
	* ipa-prop.cc: Likewise.
	* omp-low.cc: Likewise.
	* pointer-query.cc: Likewise.
	* range-op.cc: Likewise.
	* tree-cfg.cc: Likewise.
	* tree-if-conv.cc: Likewise.
	* tree-inline.cc: Likewise.
	* tree-object-size.cc: Likewise.
	* tree-ssa-ccp.cc: Likewise.
	* tree-ssa-dom.cc: Likewise.
	* tree-ssa-forwprop.cc: Likewise.
	* tree-ssa-ifcombine.cc: Likewise.
	* tree-ssa-loop-ivcanon.cc: Likewise.
	* tree-ssa-math-opts.cc: Likewise.
	* tree-ssa-pre.cc: Likewise.
	* tree-ssa-propagate.cc: Likewise.
	* tree-ssa-reassoc.cc: Likewise.
	* tree-ssa-sccvn.cc: Likewise.
	* tree-ssa-strlen.cc: Likewise.
	* tree-ssa.cc: Likewise.
	* value-pointer-equiv.cc: Likewise.
	* vr-values.cc: Likewise.

2022-05-13  Alexandre Oliva  <oliva@adacore.com>

	PR rtl-optimization/105455
	* gimple-harden-conditionals.cc (insert_check_and_trap): Set
	probabilities for newly-conditional edges.

2022-05-13  liuhongt  <hongtao.liu@intel.com>

	PR tree-optimization/102583
	* tree-ssa-forwprop.cc (simplify_bitfield_ref): Extended to a
	contiguous stride in the VEC_PERM_EXPR.

2022-05-12  Richard Biener  <rguenther@suse.de>

	PR rtl-optimization/105577
	* dse.cc (rest_of_handle_dse): Make sure to purge dead EH
	edges before running fast DCE via df_analyze.

2022-05-12  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/105562
	* tree-ssa-sccvn.cc (vn_reference_lookup_3): Disambiguate
	against all CLOBBER defs if there's not an obvious must-alias
	and we are not doing redundant store elimination.
	(vn_walk_cb_data::redundant_store_removal_p): New field.
	(vn_reference_lookup_pieces): Initialize it.
	(vn_reference_lookup): Add argument to specify if we are
	doing redundant store removal.
	(eliminate_dom_walker::eliminate_stmt): Specify we do.
	* tree-ssa-sccvn.h (vn_reference_lookup): Adjust.

2022-05-12  Haochen Jiang  <haochen.jiang@intel.com>

	PR target/104371
	* config/i386/sse.md (vi1avx2const): New define_mode_attr.
	(pxor/pcmpeqb/pmovmskb/cmp 0xffff to ptest splitter):
	New define_split pattern.

2022-05-12  Jakub Jelinek  <jakub@redhat.com>

	* gimplify.cc (gimplify_omp_depend): Don't build_fold_addr_expr
	if null_pointer_node.
	(gimplify_scan_omp_clauses): Likewise.
	* tree-pretty-print.cc (dump_omp_clause): Print null_pointer_node
	as omp_all_memory.

2022-05-11  Patrick Palka  <ppalka@redhat.com>

	* tree.h (TREE_VEC_BEGIN): Define.
	(TREE_VEC_END): Correct 'length' member access.
	(class tree_vec_range): Define.

2022-05-11  Segher Boessenkool  <segher@kernel.crashing.org>

	* config/rs6000/rs6000.md: Use wa instead of <Fv>.

2022-05-11  Segher Boessenkool  <segher@kernel.crashing.org>

	* config/rs6000/rs6000.md: Use d instead of <Ff>.

2022-05-11  Segher Boessenkool  <segher@kernel.crashing.org>

	* config/rs6000/constraints.md (register_constraint "f"): Use
	RS6000_CONSTRAINT_d.
	* config/rs6000/rs6000.cc (rs6000_debug_reg_global): Do not handle
	RS6000_CONSTRAINT_f.
	(rs6000_init_hard_regno_mode_ok): Ditto.  Reorder and simplify a bit.
	* config/rs6000/rs6000.h (r6000_reg_class_enum): Delete
	RS6000_CONSTRAINT_d.

2022-05-11  Richard Biener  <rguenther@suse.de>

	* gimple-fold.h (gimple_build): Use variadic template
	functions for the gimple_build API forwarders without
	location_t argument.

2022-05-11  Siddhesh Poyarekar  <siddhesh@gotplt.org>

	PR middle-end/70090
	* asan.cc (initialize_sanitizer_builtins): Register
	__builtin_dynamic_object_size if necessary.

2022-05-11  Richard Biener  <rguenther@suse.de>

	PR rtl-optimization/105559
	* cfgrtl.cc (delete_insn_and_edges): Only perform search to BB_END
	for non-debug insns.

2022-05-11  Richard Biener  <rguenther@suse.de>

	* generic-match-head.cc: Include tree-eh.h.
	* match.pd ((cond ...) cmp X): New simplification inspired
	by fold_binary_op_with_conditional_arg.
	(eq/ne (cmp ...) true/false): Likewise.

2022-05-11  Thomas Schwinge  <thomas@codesourcery.com>

	* doc/install.texi: Don't document '--with-hsa-runtime',
	'--with-hsa-runtime-include', '--with-hsa-runtime-lib'.

2022-05-11  Martin Liska  <mliska@suse.cz>

	PR other/105527
	* doc/install.texi: Document the configure option --with-zstd.

2022-05-11  Martin Liska  <mliska@suse.cz>

	* common/config/i386/cpuinfo.h (has_cpu_feature): Directly
	compute index in cpu_features2.
	(set_cpu_feature): Likewise.
	* config/i386/i386-builtins.cc (fold_builtin_cpu): Also remove
	loop for cpu_features2 and use NOP_EXPRs.

2022-05-11  Richard Biener  <rguenther@suse.de>

	PR bootstrap/105551
	* opts.cc (finish_options): Also disable var-tracking if
	!DWARF2_DEBUGGING_INFO.

2022-05-11  liuhongt  <hongtao.liu@intel.com>

	PR target/104915
	* config/i386/sse.md (*vec_set<mode>_0_zero_extendhi): New
	pre_reload define_insn_and_split.
	(*vec_setv2di_0_zero_extendhi_1): Ditto.
	(*vec_set<mode>_0_zero_extendsi): Ditto.
	(*vec_setv2di_0_zero_extendsi_1): Ditto.
	(ssewvecmode): New mode attr.
	(ssewvecmodelower): Ditto.
	(ssepackmodelower): Ditto.

2022-05-11  Kewen Lin  <linkw@linux.ibm.com>

	* config/rs6000/constraints.md (register constraint v): Use
	rs6000_constraints[RS6000_CONSTRAINT_v] instead of ALTIVEC_REGS.

2022-05-11  Martin Liska  <mliska@suse.cz>

	PR target/105355
	* config/riscv/riscv.opt: Remove Separate from
	-msmall-data-limit=.
	* optc-gen.awk: Report error for the described situation.
	* gcc.cc: Use Separate syntax.
	* opts.cc (gen_command_line_string): Change option name.

2022-05-11  Haochen Gui  <guihaoc@gcc.gnu.org>

	PR target/105414
	* match.pd (minmax): Skip constant folding for fmin/fmax when both
	arguments are sNaN or one is sNaN and another is NaN.

2022-05-10  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/105528
	* gimple-isel.cc (gimple_expand_vec_set_expr): After gsi_remove
	set *gsi to gsi_for_stmt (ass_stmt).  Fix up function comment.

2022-05-10  Segher Boessenkool  <segher@kernel.crashing.org>

	* doc/md.texi (Defining Mode Iterators): Correct example replacement
	text.

2022-05-10  Maciej W. Rozycki  <macro@embecosm.com>

	* config/riscv/riscv.md (UNSPEC_FMIN, UNSPEC_FMAX): New
	constants.
	(fmin<mode>3, fmax<mode>3): New insns.

2022-05-10  Richard Biener  <rguenther@suse.de>

	* tree-if-conv.cc (fold_build_cond_expr): Use
	match-and-simplify to simplify the condition.
	(ifcvt_follow_ssa_use_edges): Remove.
	(predicate_scalar_phi): Use follow_all_ssa_edges.

2022-05-10  Thomas Schwinge  <thomas@codesourcery.com>

	PR middle-end/100400
	* omp-oacc-kernels-decompose.cc
	(visit_loops_in_gang_single_region) <GIMPLE_OMP_FOR>: Explicitly
	call 'internal_error'.

2022-05-10  Richard Biener  <rguenther@suse.de>

	PR middle-end/105537
	* toplev.cc (process_options): Move flag_var_tracking
	handling ...
	* opts.cc (finish_options): ... here.

2022-05-10  Martin Liska  <mliska@suse.cz>

	* basic-block.h (struct basic_block_d): Use void *
	instead PTR.
	* cfgloop.h: Likewise.
	* cgraph.h: Likewise.
	* gengtype-state.cc (state_ident_by_name): Likewise.
	(record_type): Likewise.
	(read_state_already_seen_type): Likewise.
	* gengtype.cc (dump_type): Likewise.
	(input_file_by_name): Likewise.
	(main): Likewise.
	* ggc-common.cc (ggc_cleared_alloc_ptr_array_two_args): Likewise.
	* ipa-utils.h (struct ipa_dfs_info): Likewise.
	* plugin.cc (htab_hash_plugin): Likewise.

2022-05-10  Richard Biener  <rguenther@suse.de>

	* flags.h (dwarf_debuginfo_p): Add opts argument, guard
	API with !GENERATOR_FILE.
	* opts.cc (global_options): Poison.
	(global_options_set): Likewise.
	(finish_options): Refer to options via opts.

2022-05-10  Uroš Bizjak  <ubizjak@gmail.com>
	    Roger Sayle  <roger@nextmovesoftware.com>

	* config/i386/i386.md (*testqi_1_maybe_si): Prefer shorter SImode
	alternative when optimizing for size and the immediate operand is
	const_0_to_127_operand.
	(*andqi_2_maybe_si): Likewise.
	* config/i386/predicates.md (const_0_to_127_operand): New predicate.

2022-05-10  Roger Sayle  <roger@nextmovesoftware.com>

	* tree-chrec.cc (chrec_apply): Attempt to fold the linear chrec
	"{a, +, a} (x-1)" as "a*x", as the number of loop iterations, x-1,
	can't be negative.

2022-05-10  Eric Botcazou  <ebotcazou@adacore.com>

	PR target/105292
	* config/sparc/sparc.cc (sparc_vectorize_vec_perm_const): Return
	true only for 8-byte vector modes.

2022-05-10  Siddhesh Poyarekar  <siddhesh@gotplt.org>

	PR middle-end/70090
	* ubsan.cc (ubsan_expand_objsize_ifn): Allow non-constant SIZE.
	(instrument_object_size): Get dynamic object size expression.

2022-05-10  Jiufu Guo  <guojiufu@linux.ibm.com>

	PR preprocessor/101168
	* config/rs6000/rs6000-c.cc (rs6000_macro_to_expand):
	Avoid empty identifier.

2022-05-09  Qing Zhao  <qing.zhao@oracle.com>

	PR target/101891
	* config/i386/i386.cc (zero_call_used_regno_mode): use V2SImode
	as a generic MMX mode instead of V4HImode.
	(zero_all_mm_registers): Use SET to zero instead of MOV for
	zeroing scratch registers.
	(ix86_zero_call_used_regs): Likewise.

2022-05-09  liuhongt  <hongtao.liu@intel.com>

	PR target/105354
	* config/i386/i386-expand.cc
	(expand_vec_perm_pslldq_psrldq_por): New function.
	(ix86_expand_vec_perm_const_1): Try
	expand_vec_perm_pslldq_psrldq_por for both 3-instruction and
	4/5-instruction sequence.

2022-05-09  Martin Liška  <mliska@suse.cz>

	* basic-block.h (STATIC_ASSERT): Use normal STATIC_ASSERT.
	* system.h (STATIC_ASSERT): Define as static_assert for C++
	and fallback to array index in C.

2022-05-09  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/105517
	* tree-ssa-sccvn.cc (vn_reference_lookup): Make sure the accumulated
	offset can be represented in the POINTER_PLUS_EXPR IL.
	(vn_reference_insert): Likewise.
	* poly-int.h (sext_hwi): Add poly version of sext_hwi.

2022-05-09  Richard Biener  <rguenther@suse.de>

	* match.pd: Remove #if GIMPLE guards around ! using patterns.

2022-05-09  liuhongt  <hongtao.liu@intel.com>

	PR target/105072
	* config/i386/sse.md (*sse4_1_<code>v2qiv2di2<mask_name>_1):
	New define_insn.
	(*sse4_1_zero_extendv2qiv2di2_2): New pre_reload
	define_insn_and_split.

2022-05-09  Alex Coplan  <alex.coplan@arm.com>

	* cgraph.cc (cgraph_node::get_create): Don't dump if the current
	symtab state is PARSING.

2022-05-09  Martin Liska  <mliska@suse.cz>

	* system.h (LIKELY): Define.
	(UNLIKELY): Likewise.
	* domwalk.cc (sort_bbs_postorder): Use {,UN}LIKELY
	macros.
	* dse.cc (set_position_unneeded): Likewise.
	(set_all_positions_unneeded): Likewise.
	(any_positions_needed_p): Likewise.
	(all_positions_needed_p): Likewise.
	* expmed.cc (flip_storage_order): Likewise.
	* genmatch.cc (dt_simplify::gen_1): Likewise.
	* ggc-common.cc (gt_pch_save): Likewise.
	* print-rtl.cc: Likewise.
	* rtl-iter.h (T>::array_type::~array_type): Likewise.
	(T>::next): Likewise.
	* rtl-ssa/internals.inl: Likewise.
	* rtl-ssa/member-fns.inl: Likewise.
	* rtlanal.cc (T>::add_subrtxes_to_queue): Likewise.
	(rtx_properties::try_to_add_dest): Likewise.
	* rtlanal.h (growing_rtx_properties::repeat): Likewise.
	(vec_rtx_properties_base::~vec_rtx_properties_base): Likewise.
	* simplify-rtx.cc (simplify_replace_fn_rtx): Likewise.
	* sort.cc (likely): Likewise.
	(mergesort): Likewise.
	* wide-int.h (wi::eq_p): Likewise.
	(wi::ltu_p): Likewise.
	(wi::cmpu): Likewise.
	(wi::bit_and): Likewise.
	(wi::bit_and_not): Likewise.
	(wi::bit_or): Likewise.
	(wi::bit_or_not): Likewise.
	(wi::bit_xor): Likewise.
	(wi::add): Likewise.
	(wi::sub): Likewise.

2022-05-09  Kito Cheng  <kito.cheng@sifive.com>

	* config/riscv/arch-canonicalize: Handle g correctly.

2022-05-07  Marek Polacek  <polacek@redhat.com>

	PR c++/101833
	PR c++/47634
	* tree-core.h (struct attribute_spec): Update comment for HANDLER.

2022-05-06  Jason Merrill  <jason@redhat.com>

	* diagnostic-color.cc: Add fnname and targs color entries.
	* doc/invoke.texi: Document them.

2022-05-06  Jason Merrill  <jason@redhat.com>

	* vec.h (vec::iterate): Fix comment.

2022-05-06   Michael Meissner  <meissner@linux.ibm.com>

	PR target/102059
	* config/rs6000/rs6000.cc (rs6000_can_inline_p): Ignore -mpower8-fusion
	and -mpower10-fusion options for inlining purposes.

2022-05-06  Christophe Lyon  <christophe.lyon@arm.com>

	* config/aarch64/iterators.md (GPF_TF_F16): Delete.

2022-05-06  Marcel Vollweiler  <marcel@codesourcery.com>

	* omp-low.cc (omp_runtime_api_call): Added target_is_accessible to
	omp_runtime_apis array.

2022-05-06  Hafiz Abid Qadeer  <abidh@codesourcery.com>

	* omp-low.cc (omp_maybe_offloaded_ctx): New prototype.
	(scan_sharing_clauses):  Check a restriction on allocate clause.

2022-05-05  Sandra Loosemore  <sandra@codesourcery.com>

	* gimplify.cc (gimplify_omp_for): Update messages for SCHEDULED
	and ORDERED clause conflict errors.  Add check for GRAINSIZE and
	NUM_TASKS on TASKLOOP.

2022-05-05  Martin Liska  <mliska@suse.cz>

	* genautomata.cc (create_composed_state): Remove dead code.
	* graphite-poly.cc (print_pdrs): Likewise.
	* lto-wrapper.cc (run_gcc): Likewise.
	* tree-switch-conversion.cc (switch_decision_tree::balance_case_nodes):
	Likewise.

2022-05-05  Martin Liska  <mliska@suse.cz>

	* tree-profile.cc (gimple_gen_ic_profiler): Prefix names with
	PROF_*.
	(gimple_gen_time_profiler): Likewise.

2022-05-05  Martin Liska  <mliska@suse.cz>

	* value-prof.cc (stream_out_histogram_value): Remove sanity
	checking.

2022-05-05  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/104162
	* tree-ssa-sccvn.cc (vn_reference_lookup): Handle
	&MEM[_1 + 5].a[i] like a POINTER_PLUS_EXPR if the offset
	becomes invariant.
	(vn_reference_insert): Likewise.

2022-05-05  Richard Biener  <rguenther@suse.de>

	* tree-core.h (tree_real_cst::real_cst_ptr): Remove pointer
	to real_value field.
	(tree_real_cst::value): Add real_value field.
	* tree.h (TREE_REAL_CST_PTR): Adjust.
	* tree.cc (build_real): Remove separate allocation.
	* tree-streamer-in.cc (unpack_ts_real_cst_value_fields):
	Likewise.

2022-05-05  Richard Biener  <rguenther@suse.de>

	* tree-ssa-ifcombine.cc (bb_no_side_effects_p): Avoid executing
	divisions with undefined overflow unconditionally.
	(pass_tree_ifcombine::execute): Rewrite stmts with undefined
	overflow to defined.

2022-05-05  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/105484
	* gimple-isel.cc (gimple_expand_vec_set_expr): Clean EH, return
	whether the CFG changed.
	(gimple_expand_vec_exprs): When the CFG changed, clean it up.

2022-05-05  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/104595
	* tree-vect-patterns.cc (vect_recog_bool_pattern): For
	COND_EXPR do not fail if check_bool_pattern returns false.

2022-05-04  Tobias Burnus  <tobias@codesourcery.com>

	* omp-low.cc (lower_omp_target): Fix use_device_{addr,ptr} with list
	item that is in an outer data-sharing clause.

2022-05-04  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/104658
	* tree-vect-slp.cc (vect_slp_convert_to_external): Do not
	create VECTOR_BOOLEAN_TYPE_P extern defs.  Reset the vector
	type on nodes we promote.
	(vectorizable_bb_reduc_epilogue): Deal with externalized
	root.
	* tree-vect-stmts.cc (vect_maybe_update_slp_op_vectype): Do
	not allow VECTOR_BOOLEAN_TYPE_P extern defs.

2022-05-04  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/103116
	* tree-vect-stmts.cc (get_group_load_store_type): Handle the
	case we need peeling for gaps even though GROUP_GAP is zero.

2022-05-04  Martin Liska  <mliska@suse.cz>

	* gengtype-state.cc (read_a_state_token): Remove dead code.
	* ipa-profile.cc (ipa_profile_read_summary_section): Likewise.

2022-05-04  Richard Biener  <rguenther@suse.de>

	* gimplify.cc (gimplify_init_constructor): First gimplify,
	then simplify the result to a VECTOR_CST.

2022-05-04  Jakub Jelinek  <jakub@redhat.com>

	* genconditions.cc (write_conditions): Append a { nullptr, -1 }
	element at the end of insn_conditions.
	(write_writer): Use ARRAY_SIZE (insn_conditions) - 1 instead of
	ARRAY_SIZE (insn_conditions).

2022-05-04  Christophe Lyon  <christophe.lyon@arm.com>

	PR target/104662
	* config/arm/arm.cc (simd_valid_immediate): Exit when input is a
	vector of booleans and MVE is not enabled.

2022-05-04  Richard Biener  <rguenther@suse.de>

	PR debug/105158
	* tree-cfgcleanup.cc (move_debug_stmts_from_forwarder):
	Move debug stmts to the predecessor if moving to the
	destination is not possible.
	(remove_forwarder_block): Adjust.
	(remove_forwarder_block_with_phi): Likewise.

2022-05-03  Roger Sayle  <roger@nextmovesoftware.com>

	PR tree-optimization/102950
	* range-op.cc (wi_optimize_signed_bitwise_op): New function to
	determine bounds of bitwise operations on signed types.
	(operator_bitwise_and::wi_fold): Call the above function.
	(operator_bitwise_or::wi_fold): Likewise.
	(operator_bitwise_xor::wi_fold): Likewise.  Additionally, the
	result can't be zero if the operands can't be equal.

2022-05-03  Iain Sandoe  <iain@sandoe.co.uk>

	* config/darwin.cc (darwin_label_is_anonymous_local_objc_name): Make
	protocol class methods linker-visible.

2022-05-03  Uroš Bizjak  <ubizjak@gmail.com>

	PR target/105079
	* config/i386/sse.md (*vec_extract<mode>_0_mem): New pre-reload
	define_insn_and_split pattern.

2022-05-03  Richard Biener  <rguenther@suse.de>

	PR middle-end/105083
	* tree-scalar-evolution.cc (scev_initialize): Verify we
	have appropriate loop state.
	* tree-ssa-dce.cc (perform_tree_ssa_dce): Re-order SCEV and
	loop init and finalization.

2022-05-03  Richard Biener  <rguenther@suse.de>

	PR middle-end/105461
	* opts.cc (finish_options): Match the condition to
	disable flag_var_tracking to that of process_options.

2022-05-03  Richard Biener  <rguenther@suse.de>

	* opts.cc: #undef OPTIONS_SET_P.
	(finish_options): Use opts_set instead of OPTIONS_SET_P.

2022-05-03  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/105394
	* tree-vect-generic.cc (expand_vector_condition): Adjust
	comp_width for non-integer mode masks as well.

2022-05-03  Marcel Vollweiler  <marcel@codesourcery.com>

	* omp-low.cc (omp_runtime_api_call): Added get_mapped_ptr to
	omp_runtime_apis array.

2022-05-02  Richard Biener  <rguenther@suse.de>

	* tree-scalar-evolution.cc (expression_expensive_p):
	Never consider mismatched calls as cheap.

2022-05-02  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/104240
	* tree-vect-slp.cc (op1_op0_map): New.
	(vect_get_operand_map): Handle compares.
	(vect_build_slp_tree_1): Support swapped operands for
	tcc_comparison.

2022-05-02  Jakub Jelinek  <jakub@redhat.com>

	PR debug/105415
	* cfgexpand.cc (expand_debug_expr): Don't make_decl_rtl_for_debug
	if there is no symtab node for the VAR_DECL.

2022-05-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>

	* gcov-io.cc (gcov_rewrite):  Clear the file error status.

2022-05-02  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/105437
	* tree-vect-slp.cc (vect_schedule_slp_node): Handle the
	case where last_stmt alters control flow.

2022-05-02  Richard Biener  <rguenther@suse.de>

	* dojump.cc (do_jump): Use CASE_CONVERT.
	* tree-ssa-dom.cc (edge_info::derive_equivalences): Likewise.

2022-05-02  Jakub Jelinek  <jakub@redhat.com>

	* system.h: Include initializer_list.

2022-05-01  Segher Boessenkool  <segher@kernel.crashing.org>

	* config/rs6000/constraints.md (Y constraint): Fix comment.

2022-05-01  Aldy Hernandez  <aldyh@redhat.com>

	* tree-ssanames.cc (set_range_info): Denormalize VR_VARYING to
	VR_RANGE before passing a piecewise range to set_range_info_raw.

2022-04-30  Patrick Palka  <ppalka@redhat.com>

	* gengtype.cc (adjust_field_tree_exp): Remove.
	(adjust_field_type): Don't handle the "tree_exp" special attribute.
	* tree-core.h (struct tree_exp): Remove "special" and "desc"
	attributes.  Add "length" attribute.

2022-04-29  Martin Jambor  <mjambor@suse.cz>

	PR ipa/100413
	* cgraph.cc (cgraph_node::remove): Release body of the node this
	is clone_of if appropriate.

2022-04-29  Uroš Bizjak  <ubizjak@gmail.com>

	PR target/51954
	* config/i386/i386.md (adcl/neg -> sbb peephole): New peephole2.

2022-04-29  Richard Biener  <rguenther@suse.de>

	* gimple-expr.cc (is_gimple_condexpr): Adjust comment.
	(canonicalize_cond_expr_cond): Move here from gimple.cc,
	allow both COND_EXPR and GIMPLE_COND forms.
	* gimple-expr.h (canonicalize_cond_expr_cond): Declare.
	* gimple.cc (canonicalize_cond_expr_cond): Remove here.
	* gimple.h (canonicalize_cond_expr_cond): Likewise.
	* gimple-loop-versioning.cc (loop_versioning::version_loop):
	Use is_gimple_condexpr_for_cond.
	* tree-parloops.cc (gen_parallel_loop): Likewise.
	* tree-ssa-ifcombine.cc (ifcombine_ifandif): Check for
	a proper cond expr after canonicalize_cond_expr_cond.
	Use is_gimple_condexpr_for_cond where appropriate.
	* tree-ssa-loop-manip.cc (determine_exit_conditions): Likewise.
	* tree-vect-loop-manip.cc (slpeel_add_loop_guard): Likewise.

2022-04-29  Richard Biener  <rguenther@suse.de>

	* gimple-iterator.h (gsi_after_labels): Add overload for
	gimple_seq.
	(gsi_start_1): Rename to gsi_start and take a reference.
	(gsi_last_1): Likewise.
	* gimple-iterator.cc (gsi_for_stmt): Use gsi_start.
	* omp-low.cc (lower_rec_input_clauses): Likewise.
	(lower_omp_scan): Likewise.

2022-04-29  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/105431
	* tree-ssa-math-opts.cc (powi_as_mults_1): Make n unsigned.
	(powi_as_mults): Use absu_hwi.
	(gimple_expand_builtin_powi): Remove now pointless n != -n
	check.

2022-04-29  Aldy Hernandez  <aldyh@redhat.com>

	* range-op.cc (empty_range_varying): Move to range-op.h.
	(range_true): Move to range.h.
	(range_false): Same.
	(range_true_and_false): Same.
	(enum bool_range_state): Move to range-op.h.
	(relop_early_resolve): Same.
	(operator_equal::op1_op2_relation): Abstract code to...
	(equal_op1_op2_relation): ...here.
	(operator_not_equal::op1_op2_relation): Abstract code to...
	(not_equal_op1_op2_relation): ...here.
	(operator_lt::op1_op2_relation): Abstract code to...
	(lt_op1_op2_relation): ...here.
	(operator_le::op1_op2_relation): Abstract code to...
	(le_op1_op2_relation): ...here.
	(operator_gt::op1_op2_relation): Abstract code to...
	(gt_op1_op2_relation): ...here.
	(operator_ge::op1_op2_relation): Abstract code to...
	(ge_op1_op2_relation): ...here.
	(class range_op_table): Move to range-op.h.
	* range-op.h (equal_op1_op2_relation): Moved from range-op.cc.
	(not_equal_op1_op2_relation): Same.
	(lt_op1_op2_relation): Same.
	(le_op1_op2_relation): Same.
	(gt_op1_op2_relation): Same.
	(ge_op1_op2_relation): Same.
	(enum bool_range_state): Same.
	(get_bool_state): Same.
	(empty_range_varying): Same.
	(relop_early_resolve): Same.
	(class range_op_table): Same.
	* range.h (range_true): Same.
	(range_false): Same.
	(range_true_and_false): Same.

2022-04-29  Aldy Hernandez  <aldyh@redhat.com>

	* gimple-fold.cc (size_must_be_zero_p): Use reference
	instead of pointer
	* gimple-ssa-evrp-analyze.cc
	(evrp_range_analyzer::record_ranges_from_incoming_edge): Rename
	intersect to legacy_verbose_intersect.
	* ipa-cp.cc (ipcp_vr_lattice::meet_with_1): Use reference instead
	of pointer.
	* tree-ssa-dom.cc (dom_jt_simplifier::simplify): Use value_range
	instead of value_range_equiv.
	* tree-vrp.cc (extract_range_from_plus_minus_expr): Use reference
	instead of pointer.
	(find_case_label_range): Same.
	* value-range-equiv.cc (value_range_equiv::intersect): Rename to...
	(value_range_equiv::legacy_verbose_intersect): ...this.
	(value_range_equiv::union_): Rename to...
	(value_range_equiv::legacy_verbose_union_): ...this.
	* value-range-equiv.h (class value_range_equiv): Rename union and
	intersect to legacy_verbose_{intersect,union}.
	* value-range.cc (irange::union_): Rename to...
	(irange::legacy_verbose_union_): ...this.
	(irange::intersect): Rename to...
	(irange::legacy_verbose_intersect): ...this.
	* value-range.h (irange::union_): Rename union_ to
	legacy_verbose_union.
	(irange::intersect): Rename intersect to legacy_verbose_intersect.
	* vr-values.cc (vr_values::update_value_range): Same.
	(vr_values::extract_range_for_var_from_comparison_expr): Same.
	(vr_values::extract_range_from_cond_expr): Rename union_ to
	legacy_verbose_union.
	(vr_values::extract_range_from_phi_node): Same.

2022-04-29  Aldy Hernandez  <aldyh@redhat.com>

	* gimple-ssa-evrp-analyze.cc
	(evrp_range_analyzer::set_ssa_range_info): Use *range_info methods
	that take a range.
	* gimple-ssa-sprintf.cc (try_substitute_return_value): Same.
	* ipa-prop.cc (ipcp_update_vr): Same.
	* tree-inline.cc (remap_ssa_name): Same.
	* tree-ssa-copy.cc (fini_copy_prop): Same.
	* tree-ssa-math-opts.cc (optimize_spaceship): Same.
	* tree-ssa-phiopt.cc (replace_phi_edge_with_variable): Same.
	* tree-ssa-pre.cc (insert_into_preds_of_block): Same.
	* tree-ssa-sccvn.cc (eliminate_dom_walker::eliminate_stmt): Same.
	* tree-ssa-strlen.cc (set_strlen_range): Same.
	(strlen_pass::handle_builtin_string_cmp): Same.
	* tree-ssanames.cc (set_range_info): Make static.
	(duplicate_ssa_name_range_info): Make static and add a new variant
	calling the static.
	* tree-ssanames.h (set_range_info): Remove version taking wide ints.
	(duplicate_ssa_name_range_info): Remove version taking a
	range_info_def and replace with a version taking SSA names.
	* tree-vect-loop-manip.cc (vect_gen_vector_loop_niters): Use *range_info methods
	that take a range.
	(vect_do_peeling): Same.
	* tree-vrp.cc (vrp_asserts::remove_range_assertions): Same.
	* vr-values.cc (simplify_truth_ops_using_ranges): Same.

2022-04-29  Aldy Hernandez  <aldyh@redhat.com>

	* value-range.h (irange::irange): Use set_undefined.

2022-04-29  Aldy Hernandez  <aldyh@redhat.com>

	* gimple-range-cache.h (non_null_ref::adjust_range): Do not use
	irange::intersect (wide_int, wide_int).
	* gimple-range-fold.cc (adjust_pointer_diff_expr): Same.
	(adjust_imagpart_expr): Same.
	* value-range.h (irange::intersect (wide_int, wide_int)): Make
	private.

2022-04-29  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/104322
	* tree-vect-loop.cc (vectorizable_reduction): Remove dead code.

2022-04-29  Richard Biener  <rguenther@suse.de>

	PR middle-end/105376
	* tree.cc (build_real): Special case dconst* arguments
	for decimal floating point types.

2022-04-28  Sebastian Huber  <sebastian.huber@embedded-brains.de>

	* doc/gcov.texi (Profiling and Test Coverage in Freestanding
	Environments): New section.

2022-04-28  Sebastian Huber  <sebastian.huber@embedded-brains.de>

	* doc/gcov-tool.texi: Document merge-stream subcommand.
	* doc/invoke.texi (fprofile-info-section): Mention merge-stream
	subcommand of gcov-tool.
	* gcov-tool.cc (gcov_profile_merge_stream): Declare.
	(print_merge_stream_usage_message): New.
	(merge_stream_usage): Likewise.
	(do_merge_stream): Likewise.
	(print_usage): Call print_merge_stream_usage_message().
	(main): Call do_merge_stream() to execute merge-stream subcommand.

2022-04-28  Sebastian Huber  <sebastian.huber@embedded-brains.de>

	* gcov-io.cc (gcov_file_error): New enum.
	(gcov_var): Use gcov_file_error enum for the error member.
	(gcov_open): Use GCOV_FILE_NO_ERROR.
	(gcov_close): Use GCOV_FILE_WRITE_ERROR.
	(gcov_write): Likewise.
	(gcov_write_unsigned): Likewise.
	(gcov_write_string): Likewise.
	(gcov_read_bytes): Set error code if EOF is reached.
	(gcov_read_counter): Use GCOV_FILE_COUNTER_OVERFLOW.

2022-04-28  Sebastian Huber  <sebastian.huber@embedded-brains.de>

	* gcov-io.cc (GCOV_MODE_STDIN): Define.
	(gcov_position): For gcov-tool, return calculated position if file is
	stdin.
	(gcov_open):  For gcov-tool, use stdin if filename is NULL.
	(gcov_close): For gcov-tool, do not close stdin.
	(gcov_read_bytes): For gcov-tool, update position if file is stdin.
	(gcov_sync): For gcov-tool, discard input if file is stdin.

2022-04-28  Sebastian Huber  <sebastian.huber@embedded-brains.de>

	* doc/invoke.texi (fprofile-info-section): Mention
	__gcov_filename_to_gcfn().  Use "freestanding" to match with C11
	standard language.  Fix minor example code issues.
	* gcov-io.h (GCOV_FILENAME_MAGIC): Define and document.

2022-04-28  Sebastian Huber  <sebastian.huber@embedded-brains.de>

	* gcov-io.cc (gcov_seek): Make it static.
	* gcov-io.h (struct gcov_summary): Do not mention gcov_seek().

2022-04-28  Sebastian Huber  <sebastian.huber@embedded-brains.de>

	* gcov-tool.cc (gcov_do_dump): Add mode parameter.
	(gcov_output_files): Open files for reading and writing.

2022-04-28  Sebastian Huber  <sebastian.huber@embedded-brains.de>

	* gcov-io.cc (gcov_open): Always use the mode parameter.
	* gcov-io.h (gcov_open): Declare it unconditionally.

2022-04-28  Sebastian Huber  <sebastian.huber@embedded-brains.de>

	* gcov-tool.cc (gcov_profile_merge): Adjust return type.
	(profile_merge): Allow merging of directories which contain no profile
	files.

2022-04-28  David Malcolm  <dmalcolm@redhat.com>

	* doc/invoke.texi (-fdump-analyzer-feasibility): Mention the
	fpath.txt output.

2022-04-28  Jakub Jelinek  <jakub@redhat.com>

	* config/i386/i386-expand.cc (ix86_expand_int_movcc): Create a
	temporary only if out overlaps compare_op, not when it overlaps
	op0 or op1.

2022-04-28  Jakub Jelinek  <jakub@redhat.com>

	PR lto/105399
	* cgraph.cc (cgraph_node::verify_node): Don't verify
	semantic_interposition flag against
	opt_for_fn (decl, flag_semantic_interposition) for aliases in lto1.

2022-04-28  Jakub Jelinek  <jakub@redhat.com>

	PR target/105331
	* config/i386/i386.cc (ix86_gimplify_va_arg): Mark va_arg_tmp
	temporary TREE_ADDRESSABLE before trying to gimplify ADDR_EXPR
	of it.

2022-04-28  Jonathan Wakely  <jwakely@redhat.com>

	* doc/install.texi (Configuration): Remove misleading text
	around LE PowerPC Linux multilibs.

2022-04-28  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

	PR d/103528
	* doc/install.texi (Tools/packages necessary for building GCC)
	(GDC): Document libphobos requirement.
	(Host/target specific installation notes for GCC, *-*-solaris2*):
	Document libphobos and GDC specifics.

2022-04-28  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/105219
	* tree-vect-loop.cc (vect_transform_loop): Disable
	special code narrowing the vectorized epilogue max
	iterations when peeling for alignment or gaps was in effect.

2022-04-28  Xi Ruoyao  <xry111@mengyan1223.wang>

	* config/loongarch/loongarch.cc
	(loongarch_flatten_aggregate_field): Ignore empty fields for
	RECORD_TYPE.

2022-04-27  Lulu Cheng  <chenglulu@loongson.cn>

	* config/loongarch/loongarch.md: Add fdiv define_expand template,
	then generate floating-point division and floating-point reciprocal
	instructions.

2022-04-27  Lulu Cheng  <chenglulu@loongson.cn>

	* config/loongarch/loongarch.md: Add '(clobber (mem:BLK (scratch)))'
	to PLV instruction templates.

2022-04-27  Richard Biener  <rguenther@suse.de>

	PR middle-end/104492
	* gimple-ssa-warn-access.cc
	(pass_waccess::warn_invalid_pointer): Exclude equality compare
	diagnostics for all kind of invalidations.
	(pass_waccess::check_dangling_uses): Fix post-dominator query.
	(pass_waccess::check_pointer_uses): Likewise.

2022-04-27  Andreas Krebbel  <krebbel@linux.ibm.com>

	PR target/102024
	* config/s390/s390-protos.h (s390_function_arg_vector): Remove
	prototype.
	* config/s390/s390.cc (s390_single_field_struct_p): New function.
	(s390_function_arg_vector): Invoke s390_single_field_struct_p.
	(s390_function_arg_float): Likewise.

2022-04-27  Jakub Jelinek  <jakub@redhat.com>

	PR sanitizer/105396
	* asan.cc (asan_redzone_buffer::emit_redzone_byte): Handle the case
	where offset is bigger than off but smaller than m_prev_offset + 32
	bits by pushing one or more 0 bytes.  Sink the
	m_shadow_bytes.safe_push (value); flush_if_full (); statements from
	all cases to the end of the function.

2022-04-27  Kewen Lin  <linkw@linux.ibm.com>

	PR target/105271
	* config/rs6000/rs6000-builtins.def (NEG_V2DI): Move to [power8-vector]
	stanza.

2022-04-26  Thomas Schwinge  <thomas@codesourcery.com>

	* config/gcn/gcn.cc (gcn_print_lds_decl): Make "gang-private
	data-share memory exhausted" error more verbose.

2022-04-26  Martin Liska  <mliska@suse.cz>

	PR lto/105364
	* lto-wrapper.cc (print_lto_docs_link): Use global_dc.
	(run_gcc): Parse OPT_fdiagnostics_urls_.
	(main): Initialize global_dc.

2022-04-26  Jakub Jelinek  <jakub@redhat.com>

	PR rtl-optimization/105314
	* ifcvt.cc (noce_try_store_flag_mask): Don't require that the non-zero
	operand is equal to if_info->x, instead use the non-zero operand
	as one of the operands of AND with if_info->x as target.

2022-04-26  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/105374
	* tree-ssa-reassoc.cc (eliminate_redundant_comparison): Punt if
	!fold_convertible_p rather than assuming fold_convert must succeed.

2022-04-26  Jakub Jelinek  <jakub@redhat.com>

	PR target/105367
	* config/i386/i386.cc (ix86_veclibabi_svml, ix86_veclibabi_acml): Pass
	el_mode == DFmode ? double_type_node : float_type_node instead of
	TREE_TYPE (type_in) as first arguments to mathfn_built_in.

2022-04-25  David Malcolm  <dmalcolm@redhat.com>

	PR analyzer/104308
	* gimple-fold.cc (gimple_fold_builtin_memory_op): Explicitly set
	the location of new_stmt in all places that don't already set it,
	whether explicitly, or via a call to gsi_replace.

2022-04-25  Paul A. Clarke  <pc@us.ibm.com>

	* doc/extend.texi (Other Builtins): Correct reference to 'modff'.

2022-04-25  Andrew MacLeod  <amacleod@redhat.com>

	PR tree-optimization/105276
	* gimple-range.cc (gimple_ranger::prefill_stmt_dependencies): Include
	existing global range with calculated value.

2022-04-25  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/105368
	* tree-ssa-math-opts.cc (powi_cost): Use absu_hwi.

2022-04-25  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/100810
	* tree-ssa-loop-ivopts.cc (struct iv_cand): Add involves_undefs flag.
	(find_ssa_undef): New function.
	(add_candidate_1): Avoid adding derived candidates with
	undefined SSA names and mark the original ones.
	(determine_group_iv_cost_generic): Reject rewriting
	uses with a different IV when that involves undefined SSA names.

2022-04-25  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR target/89125
	* config/freebsd.h: Define TARGET_LIBC_HAS_FUNCTION to be
	bsd_libc_has_function.
	* targhooks.cc (bsd_libc_has_function): New function.
	Expand the supported math functions to inclue C99 libm.
	* targhooks.h (bsd_libc_has_function): New Prototype.

2022-04-25  Richard Biener  <rguenther@suse.de>

	PR rtl-optimization/105231
	* combine.cc (distribute_notes): Assert that a REG_EH_REGION
	with landing pad > 0 is from i3.  Put any REG_EH_REGION note
	on i3 or drop it if the insn can not trap.
	(try_combine): Ensure that we can merge REG_EH_REGION notes
	with non-call exceptions.  Ensure we are not splitting a
	trapping part of an insn with non-call exceptions when there
	is any REG_EH_REGION note to preserve.

2022-04-25  Hongyu Wang  <hongyu.wang@intel.com>

	PR target/105339
	* config/i386/avx512fintrin.h (_mm512_scalef_round_pd):
	Add parentheses for parameters and djust format.
	(_mm512_mask_scalef_round_pd): Ditto.
	(_mm512_maskz_scalef_round_pd): Ditto.
	(_mm512_scalef_round_ps): Ditto.
	(_mm512_mask_scalef_round_ps): Ditto.
	(_mm512_maskz_scalef_round_ps): Ditto.
	(_mm_scalef_round_sd): Use _mm_undefined_pd.
	(_mm_scalef_round_ss): Use _mm_undefined_ps.
	(_mm_mask_scalef_round_sd): New macro.
	(_mm_mask_scalef_round_ss): Ditto.
	(_mm_maskz_scalef_round_sd): Ditto.
	(_mm_maskz_scalef_round_ss): Ditto.

2022-04-23  Jakub Jelinek  <jakub@redhat.com>

	PR target/105338
	* config/i386/i386-expand.cc (ix86_expand_int_movcc): Handle
	op0 == cst1 ? op0 : op3 like op0 == cst1 ? cst1 : op3 for the non-cmov
	cases.

2022-04-22  Segher Boessenkool  <segher@kernel.crashing.org>

	PR target/105334
	* config/rs6000/rs6000.md (pack<mode> for FMOVE128): New expander.
	(pack<mode> for FMOVE128): Rename and split the insn_and_split to...
	(pack<mode>_hard for FMOVE128): ... this...
	(pack<mode>_soft for FMOVE128): ... and this.

2022-04-22  Paul A. Clarke  <pc@us.ibm.com>

	* doc/extend.texi: Correct "This" to "These".

2022-04-22  Jakub Jelinek  <jakub@redhat.com>

	PR rtl-optimization/105333
	* rtlanal.cc (replace_rtx): Use simplify_subreg or
	simplify_unary_operation if CONST_SCALAR_INT_P rather than just
	CONST_INT_P.

2022-04-21  Segher Boessenkool  <segher@kernel.crashing.org>

	PR target/103197
	PR target/102146
	* config/rs6000/rs6000.md (zero_extendqi<mode>2 for EXTQI): Disparage
	the "Z" alternatives in {l,st}{f,xs}iwzx.
	(zero_extendhi<mode>2 for EXTHI): Ditto.
	(zero_extendsi<mode>2 for EXTSI): Ditto.
	(*movsi_internal1): Ditto.
	(*mov<mode>_internal1 for QHI): Ditto.
	(movsd_hardfloat): Ditto.

2022-04-21  Martin Liska  <mliska@suse.cz>

	* configure.ac: Enable compressed debug sections for mold
	linker.
	* configure: Regenerate.

2022-04-21  Jakub Jelinek  <jakub@redhat.com>

	PR debug/105203
	* emit-rtl.cc (emit_copy_of_insn_after): Don't call mark_jump_label
	on DEBUG_INSNs.

2022-04-20  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/104912
	* tree-vect-loop-manip.cc (vect_loop_versioning): Split
	the cost model check to a separate BB to make sure it is
	checked first and not combined with other version checks.

2022-04-20  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/105312
	* gimple-isel.cc (gimple_expand_vec_cond_expr): Query both
	VCOND and VCONDU for EQ and NE.

2022-04-20  Jan Hubicka  <hubicka@ucw.cz>

	PR ipa/103818
	* ipa-modref-tree.cc (modref_access_node::closer_pair_p): Use
	poly_offset_int to avoid overflow.
	(modref_access_node::update2): likewise.

2022-04-20  Jakub Jelinek  <jakub@redhat.com>

	PR ipa/105306
	* cgraph.cc (cgraph_node::create): Set node->semantic_interposition
	to opt_for_fn (decl, flag_semantic_interposition).
	* cgraphclones.cc (cgraph_node::create_clone): Copy over
	semantic_interposition flag.

2022-04-19  Sergei Trofimovich  <siarheit@google.com>

	PR gcov-profile/105282
	* value-prof.cc (stream_out_histogram_value): Allow negative counts
	on HIST_TYPE_INDIR_CALL.

2022-04-19  Jakub Jelinek  <jakub@redhat.com>

	PR target/105257
	* config/sparc/sparc.cc (epilogue_renumber): If ORIGINAL_REGNO,
	use gen_raw_REG instead of gen_rtx_REG and copy over also
	ORIGINAL_REGNO.  Use return 0; instead of /* fallthrough */.

2022-04-19  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/104010
	PR tree-optimization/103941
	* tree-vect-slp.cc (vect_bb_slp_scalar_cost): When
	we run into stmts in patterns continue walking those
	for uses outside of the vectorized region instead of
	marking the lane live.

2022-04-18  Hans-Peter Nilsson  <hp@axis.com>

	* doc/install.texi <CRIS>: Remove references to removed websites and
	adjust for cris-*-elf being the only remaining toolchain.

2022-04-18  Hans-Peter Nilsson  <hp@axis.com>

	* doc/invoke.texi <CRIS>: Remove references to options for removed
	subtarget cris-axis-linux-gnu and tweak wording accordingly.

2022-04-16  Gerald Pfeifer  <gerald@pfeifer.com>

	* doc/install.texi (Specific): Adjust mingw-w64 download link.

2022-04-15  Hongyu Wang  <hongyu.wang@intel.com>

	* config/i386/smmintrin.h: Correct target pragma from sse4.1
	and sse4.2 to crc32 for crc32 intrinsics.

2022-04-14  Indu Bhagat  <indu.bhagat@oracle.com>

	PR debug/105089
	* ctfc.cc (ctf_dvd_ignore_insert): New function.
	(ctf_dvd_ignore_lookup): Likewise.
	(ctf_add_variable): Keep track of non-defining decl DIEs.
	(new_ctf_container): Initialize the new hash-table.
	(ctfc_delete_container): Empty hash-table.
	* ctfc.h (struct ctf_container): Add new hash-table.
	(ctf_dvd_ignore_lookup): New declaration.
	(ctf_add_variable): Add additional argument.
	* ctfout.cc (ctf_dvd_preprocess_cb): Skip adding CTF variable
	record for non-defining decl for which a defining decl exists
	in the same TU.
	(ctf_preprocess): Defer updating the number of global objts
	until here.
	(output_ctf_header): Use ctfc_vars_list_count as some CTF
	variables may not make it to the final output.
	(output_ctf_vars): Likewise.
	* dwarf2ctf.cc (gen_ctf_variable): Skip generating CTF variable
	if this is known to be a non-defining decl DIE.

2022-04-14  Indu Bhagat  <indu.bhagat@oracle.com>

	* ctfc.h (struct ctf_container): Introduce a new member.
	* ctfout.cc (ctf_list_add_ctf_vars): Use it instead of static
	variable.

2022-04-14  Jakub Jelinek  <jakub@redhat.com>

	PR target/105247
	* simplify-rtx.cc (simplify_const_binary_operation): For shifts
	or rotates by VOIDmode constant integer shift count use word_mode
	for the operand if int_mode is narrower than word.

2022-04-14  Robin Dapp  <rdapp@linux.ibm.com>

	* config/s390/s390.cc (s390_get_sched_attrmask): Add z16.
	(s390_get_unit_mask): Likewise.
	(s390_is_fpd): Likewise.
	(s390_is_fxd): Likewise.
	* config/s390/s390.h (s390_tune_attr): Set max tune level to z16.
	* config/s390/s390.md (z900,z990,z9_109,z9_ec,z10,z196,zEC12,z13,z14,z15):
	Add z16.
	(z900,z990,z9_109,z9_ec,z10,z196,zEC12,z13,z14,z15,z16):
	Likewise.
	* config/s390/3931.md: New file.

2022-04-13  Richard Sandiford  <richard.sandiford@arm.com>

	PR tree-optimization/105254
	* config/aarch64/aarch64.cc
	(aarch64_vector_costs::determine_suggested_unroll_factor): Take a
	loop_vec_info as argument.  Restrict the unroll factor to values
	that divide the VF.
	(aarch64_vector_costs::finish_cost): Update call accordingly.

2022-04-13  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/105263
	* tree-ssa-reassoc.cc (try_special_add_to_ops): Do not consume
	negates in multiplication chains with DFP.

2022-04-13  Jakub Jelinek  <jakub@redhat.com>

	PR middle-end/105253
	* tree.cc (tree_builtin_call_types_compatible_p): If PROP_gimple,
	use useless_type_conversion_p checks instead of TYPE_MAIN_VARIANT
	comparisons or tree_nop_conversion_p checks.

2022-04-13  Hongyu Wang  <hongyu.wang@intel.com>

	PR target/103069
	* config/i386/i386-expand.cc (ix86_expand_cmpxchg_loop):
	Add missing set to target_val at pause label.

2022-04-13  Jakub Jelinek  <jakub@redhat.com>

	PR target/105234
	* attribs.cc (decl_attributes): Don't set
	DECL_FUNCTION_SPECIFIC_TARGET if target_option_default_node is
	NULL.

2022-04-13  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/105250
	* fold-const.cc (fold_convertible_p): Revert
	r12-7979-geaaf77dd85c333, instead check for size equality
	of the vector types involved.

2022-04-13  Richard Biener  <rguenther@suse.de>

	Revert:
	2022-04-13  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/104912
	* tree-vect-loop-manip.cc (vect_loop_versioning): Split
	the cost model check to a separate BB to make sure it is
	checked first and not combined with other version checks.

2022-04-13  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/104912
	* tree-vect-loop-manip.cc (vect_loop_versioning): Split
	the cost model check to a separate BB to make sure it is
	checked first and not combined with other version checks.

2022-04-13  Jakub Jelinek  <jakub@redhat.com>

	* tree-scalar-evolution.cc (expression_expensive_p): Fix a comment typo.

2022-04-12  Antoni Boucher  <bouanto@zoho.com>

	PR jit/104072
	* reginfo.cc: New functions (clear_global_regs_cache,
	reginfo_cc_finalize) to avoid an issue where compiling the same
	code multiple times gives an error about assigning the same
	register to 2 global variables.
	* rtl.h: New function (reginfo_cc_finalize).
	* toplev.cc: Call it.

2022-04-12  Antoni Boucher  <bouanto@zoho.com>

	PR jit/104071
	* toplev.cc: Call the new function tree_cc_finalize in
	toplev::finalize.
	* tree.cc: New functions (clear_nonstandard_integer_type_cache
	and tree_cc_finalize) to clear the cache of non-standard integer
	types to avoid having issues with some optimizations of
	bitcast where the SSA_NAME will have a size of a cached
	integer type that should have been invalidated, causing a
	comparison of integer constant to fail.
	* tree.h: New function (tree_cc_finalize).

2022-04-12  Thomas Schwinge  <thomas@codesourcery.com>

	PR target/97348
	* config/nvptx/nvptx.h (ASM_SPEC): Don't set.
	* config/nvptx/nvptx.opt (misa): Adjust comment.

2022-04-12  Thomas Schwinge  <thomas@codesourcery.com>

	Revert:
	2022-03-03  Tom de Vries  <tdevries@suse.de>

	* config/nvptx/nvptx.h (ASM_SPEC): Add %{misa=sm_30:--no-verify}.

2022-04-12  Thomas Schwinge  <thomas@codesourcery.com>

	Revert:
	2022-03-31  Tom de Vries  <tdevries@suse.de>

	* config/nvptx/nvptx.h (ASM_SPEC): Use "-m sm_35" for -misa=sm_30.

2022-04-12  Richard Biener  <rguenther@suse.de>

	PR ipa/104303
	* tree-ssa-dce.cc (mark_stmt_if_obviously_necessary): Do not
	include local escaped memory as obviously necessary stores.

2022-04-12  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/105235
	* tree-ssa-math-opts.cc (execute_cse_conv_1): Clean EH and
	return whether the CFG changed.
	(execute_cse_sincos_1): Adjust.

2022-04-12  Przemyslaw Wirkus  <Przemyslaw.Wirkus@arm.com>

	PR target/104144
	* config/arm/t-aprofile (MULTI_ARCH_OPTS_A): Remove Armv9-a options.
	(MULTI_ARCH_DIRS_A): Remove Armv9-a diretories.
	(MULTILIB_REQUIRED): Don't require Armv9-a libraries.
	(MULTILIB_MATCHES): Treat Armv9-a as equivalent to Armv8-a.
	(MULTILIB_REUSE): Remove remap rules for Armv9-a.
	* config/arm/t-multilib (v9_a_nosimd_variants): Delete.
	(MULTILIB_MATCHES): Remove mappings for v9_a_nosimd_variants.

2022-04-12  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/105232
	* tree.cc (component_ref_size): Bail out for too large
	or non-constant sizes.

2022-04-12  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/105226
	* tree-vect-loop-manip.cc (vect_loop_versioning): Verify
	we can split the exit of an outer loop we choose to version.

2022-04-12  Jakub Jelinek  <jakub@redhat.com>

	* config/i386/i386-expand.cc (ix86_emit_i387_sinh, ix86_emit_i387_cosh,
	ix86_emit_i387_tanh, ix86_emit_i387_asinh, ix86_emit_i387_acosh,
	ix86_emit_i387_atanh, ix86_emit_i387_log1p, ix86_emit_i387_round,
	ix86_emit_swdivsf, ix86_emit_swsqrtsf,
	ix86_expand_atomic_fetch_op_loop, ix86_expand_cmpxchg_loop):
	Formatting fix.
	* config/i386/i386.cc (warn_once_call_ms2sysv_xlogues): Likewise.

2022-04-12  Jakub Jelinek  <jakub@redhat.com>

	PR target/105214
	* config/i386/i386-expand.cc (ix86_emit_i387_log1p): Call
	do_pending_stack_adjust.

2022-04-12  Jakub Jelinek  <jakub@redhat.com>

	PR rtl-optimization/105211
	* builtins.cc (expand_builtin_int_roundingfn_2): If mathfn_built_in_1
	fails for TREE_TYPE (arg), retry it with
	TREE_VALUE (TYPE_ARG_TYPES (TREE_TYPE (fndecl))) and if even that
	fails, emit call normally.

2022-04-12  Andreas Krebbel  <krebbel@linux.ibm.com>

	* common/config/s390/s390-common.cc: Rename PF_ARCH14 to PF_Z16.
	* config.gcc: Add z16 as march/mtune switch.
	* config/s390/driver-native.cc (s390_host_detect_local_cpu):
	Recognize z16 with -march=native.
	* config/s390/s390-opts.h (enum processor_type): Rename
	PROCESSOR_ARCH14 to PROCESSOR_3931_Z16.
	* config/s390/s390.cc (PROCESSOR_ARCH14): Rename to ...
	(PROCESSOR_3931_Z16): ... throughout the file.
	(s390_processor processor_table): Add z16 as cpu string.
	* config/s390/s390.h (enum processor_flags): Rename PF_ARCH14 to
	PF_Z16.
	(TARGET_CPU_ARCH14): Rename to ...
	(TARGET_CPU_Z16): ... this.
	(TARGET_CPU_ARCH14_P): Rename to ...
	(TARGET_CPU_Z16_P): ... this.
	(TARGET_ARCH14): Rename to ...
	(TARGET_Z16): ... this.
	(TARGET_ARCH14_P): Rename to ...
	(TARGET_Z16_P): ... this.
	* config/s390/s390.md (cpu_facility): Rename arch14 to z16 and
	check TARGET_Z16 instead of TARGET_ARCH14.
	* config/s390/s390.opt: Add z16 to processor_type.
	* doc/invoke.texi: Document z16 and arch14.

2022-04-12  chenglulu  <chenglulu@loongson.cn>

	* config/loongarch/loongarch.cc: Fix bug for
	tmpdir-g++.dg-struct-layout-1/t033.

2022-04-11  Peter Bergner  <bergner@linux.ibm.com>

	PR target/104894
	* config/rs6000/rs6000.cc (rs6000_sibcall_aix): Handle pcrel sibcalls
	to longcall functions.

2022-04-11  Jason Merrill  <jason@redhat.com>

	* ipa-free-lang-data.cc (free_lang_data_in_decl): Fix typos.

2022-04-11  Segher Boessenkool  <segher@kernel.crashing.org>

	PR target/105213
	PR target/103623
	* config/rs6000/rs6000.md (unpack<mode>_nodm): Add m,r,i alternative.

2022-04-11  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/105218
	* tree-ssa-phiopt.cc (value_replacement): If middle_bb has
	more than one predecessor or phi's bb more than 2 predecessors,
	reset phi result uses instead of adding a debug temp.

2022-04-11  Kito Cheng  <kito.cheng@sifive.com>

	PR target/104853
	* config.gcc: Pass -misa-spec to arch-canonicalize and
	multilib-generator.
	* config/riscv/arch-canonicalize: Adding -misa-spec option.
	(SUPPORTED_ISA_SPEC): New.
	(arch_canonicalize): New argument `isa_spec`.
	Handle multiple ISA spec versions.
	* config/riscv/multilib-generator: Adding -misa-spec option.

2022-04-11  Kito Cheng  <kito.cheng@sifive.com>

	* config/riscv/arch-canonicalize: Add TODO item.
	(IMPLIED_EXT): Sync.
	(arch_canonicalize): Checking until no change.

2022-04-11  Tamar Christina  <tamar.christina@arm.com>

	PR target/105197
	* tree-vect-stmts.cc (vectorizable_condition): Prevent cond swap when
	not masked.

2022-04-11  Jason Merrill  <jason@redhat.com>

	PR c++/100370
	* pointer-query.cc (compute_objsize_r) [POINTER_PLUS_EXPR]: Require
	deref == -1.

2022-04-11  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/104639
	* tree-ssa-phiopt.cc: Include tree-ssa-propagate.h.
	(value_replacement): Optimize (x != cst1 ? x : cst2) != cst3
	into x != cst3.

2022-04-11  Jeff Law  <jeffreyalaw@gmail.com>

	* config/bfin/bfin.md (rol_one): Fix pattern to indicate the
	sign bit of the source ends up in CC.

2022-04-09  Jan Hubicka  <hubicka@ucw.cz>

	PR ipa/103376
	* cgraphunit.cc (cgraph_node::analyze): update semantic_interposition
	flag.

2022-04-09  Jan Hubicka  <hubicka@ucw.cz>

	* ipa-modref.cc (ipa_merge_modref_summary_after_inlining): Propagate
	nondeterministic and side_effects flags.

2022-04-08  Andre Vieira  <andre.simoesdiasvieira@arm.com>

	PR target/105157
	* config.gcc: Shift ext_mask by TARGET_CPU_NBITS.
	* config/aarch64/aarch64.h (TARGET_CPU_NBITS): New macro.
	(TARGET_CPU_MASK): Likewise.
	(TARGET_CPU_DEFAULT): Use TARGET_CPU_NBITS.
	* config/aarch64/aarch64.cc (aarch64_get_tune_cpu): Use TARGET_CPU_MASK.
	(aarch64_get_arch): Likewise.
	(aarch64_override_options): Use TARGET_CPU_NBITS.

2022-04-08  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/105198
	* tree-predcom.cc (find_looparound_phi): Check whether
	the found memory location of the entry value is clobbered
	inbetween the value we want to use and loop entry.

2022-04-08  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/105189
	* fold-const.cc (make_range_step): Fix up handling of
	(unsigned) x +[low, -] ranges for signed x if low fits into
	typeof (x).

2022-04-08  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/105175
	* tree-vect-stmts.cc (vectorizable_operation): Suppress
	-Wvector-operation-performance if using emulated vectors.
	* tree-vect-generic.cc (expand_vector_piecewise): Do not diagnose
	-Wvector-operation-performance when suppressed.
	(expand_vector_parallel): Likewise.
	(expand_vector_comparison): Likewise.
	(expand_vector_condition): Likewise.
	(lower_vec_perm): Likewise.
	(expand_vector_conversion): Likewise.

2022-04-07  Tamar Christina  <tamar.christina@arm.com>

	PR target/104409
	* config/aarch64/aarch64-builtins.cc (handle_arm_acle_h): New.
	(aarch64_general_init_builtins): Move LS64 code.
	* config/aarch64/aarch64-c.cc (aarch64_pragma_aarch64): Support
	arm_acle.h
	* config/aarch64/aarch64-protos.h (handle_arm_acle_h): New.
	* config/aarch64/arm_acle.h: Add pragma GCC aarch64 "arm_acle.h".

2022-04-07  Richard Biener  <rguenther@suse.de>
	    Jan Hubicka  <hubicka@ucw.cz>

	PR ipa/104303
	* tree-ssa-alias.h (ptr_deref_may_alias_global_p,
	ref_may_alias_global_p, ref_may_alias_global_p,
	stmt_may_clobber_global_p, pt_solution_includes_global): Add
	bool parameters indicating whether escaped locals should be
	considered global.
	* tree-ssa-structalias.cc (pt_solution_includes_global):
	When the new escaped_nonlocal_p flag is true also consider
	pt->vars_contains_escaped.
	* tree-ssa-alias.cc (ptr_deref_may_alias_global_p):
	Pass down new escaped_nonlocal_p flag.
	(ref_may_alias_global_p): Likewise.
	(stmt_may_clobber_global_p): Likewise.
	(ref_may_alias_global_p_1): Likewise.  For decls also
	query the escaped solution if true.
	(ref_may_access_global_memory_p): Remove.
	(modref_may_conflict): Use ref_may_alias_global_p with
	escaped locals considered global.
	(ref_maybe_used_by_stmt_p): Adjust.
	* ipa-fnsummary.cc (points_to_local_or_readonly_memory_p):
	Likewise.
	* tree-ssa-dse.cc (dse_classify_store): Likewise.
	* trans-mem.cc (thread_private_new_memory): Likewise, but
	consider escaped locals global.
	* tree-ssa-dce.cc (mark_stmt_if_obviously_necessary): Likewise.

2022-04-07  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/105185
	* tree-ssa-sccvn.cc (visit_reference_op_call): Simplify
	modref query again.

2022-04-07  Tamar Christina  <tamar.christina@arm.com>

	PR target/104049
	* config/aarch64/aarch64-simd.md
	(aarch64_reduc_plus_internal<mode>): Fix RTL and rename to...
	(reduc_plus_scal_<mode>): ... This.
	(reduc_plus_scal_v4sf): Moved.
	(aarch64_reduc_plus_internalv2si): Fix RTL and rename to...
	(reduc_plus_scal_v2si): ... This.

2022-04-07  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/102586
	* langhooks.h (struct lang_hooks_for_types): Add classtype_as_base
	langhook.
	* langhooks-def.h (LANG_HOOKS_CLASSTYPE_AS_BASE): Define.
	(LANG_HOOKS_FOR_TYPES_INITIALIZER): Add it.
	* gimple-fold.cc (clear_padding_type): Use ftype instead of
	TREE_TYPE (field) some more.  For artificial FIELD_DECLs without
	name try the lang_hooks.types.classtype_as_base langhook and
	if it returns non-NULL, use that instead of ftype for recursive call.

2022-04-07  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/105150
	* tree.cc (tree_builtin_call_types_compatible_p): New function.
	(get_call_combined_fn): Use it.

2022-04-07  Richard Biener  <rguenther@suse.de>

	PR middle-end/105165
	* tree-complex.cc (expand_complex_asm): Sorry for asm goto
	_Complex outputs.

2022-04-07  liuhongt  <hongtao.liu@intel.com>

	* config/i386/sse.md (<sse2_avx2>_andnot<mode>3_mask):
	Removed.
	(<sse>_andnot<mode>3<mask_name>): Disable V*HFmode patterns
	for mask_applied.
	(<code><mode>3<mask_name>): Ditto.
	(*<code><mode>3<mask_name>): Ditto.
	(VFB_128_256): Adjust condition of V8HF/V16HFmode according to
	real instruction.
	(VFB_512): Ditto.
	(VFB): Ditto.

2022-04-06  Jakub Jelinek  <jakub@redhat.com>

	PR rtl-optimization/104985
	* combine.cc (struct undo): Add where.regno member.
	(do_SUBST_MODE): Rename to ...
	(subst_mode): ... this.  Change first argument from rtx * into int,
	operate on regno_reg_rtx[regno] and save regno into where.regno.
	(SUBST_MODE): Remove.
	(try_combine): Use subst_mode instead of SUBST_MODE, change first
	argument from regno_reg_rtx[whatever] to whatever.  For UNDO_MODE, use
	regno_reg_rtx[undo->where.regno] instead of *undo->where.r.
	(undo_to_marker): For UNDO_MODE, use regno_reg_rtx[undo->where.regno]
	instead of *undo->where.r.
	(simplify_set): Use subst_mode instead of SUBST_MODE, change first
	argument from regno_reg_rtx[whatever] to whatever.

2022-04-06  Jakub Jelinek  <jakub@redhat.com>

	PR target/105069
	* config/sh/sh.opt (mdiv=): Add Save.

2022-04-06  Martin Liska  <mliska@suse.cz>

	PR driver/105096
	* common.opt: Document properly based on what it does.
	* gcc.cc (display_help): Unify with what we have in common.opt.
	* opts.cc (common_handle_option): Do not print undocumented
	options.

2022-04-06  Xi Ruoyao  <xry111@mengyan1223.wang>

	* config/mips/mips.cc (mips_fpr_return_fields): Ignore
	cxx17_empty_base_field_p fields and set an indicator.
	(mips_return_in_msb): Adjust for mips_fpr_return_fields change.
	(mips_function_value_1): Inform psABI change about C++17 empty
	bases.

2022-04-06  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/105150
	* gimple.cc (gimple_builtin_call_types_compatible_p): Use
	builtin_decl_explicit here...
	(gimple_call_builtin_p, gimple_call_combined_fn): ... rather than
	here.

2022-04-06  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/105173
	* tree-ssa-reassoc.cc (find_insert_point): Get extra
	insert_before output argument and compute it.
	(insert_stmt_before_use): Adjust.
	(rewrite_expr_tree): Likewise.

2022-04-06  Richard Biener  <rguenther@suse.de>

	PR ipa/105166
	* ipa-modref-tree.cc (modref_access_node::get_ao_ref ): Bail
	out for non-pointer arguments.

2022-04-06  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/105163
	* tree-ssa-reassoc.cc (repropagate_negates): Avoid propagating
	negated abnormals.

2022-04-06  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/105150
	* gimple.cc (gimple_call_builtin_p, gimple_call_combined_fn):
	For BUILT_IN_NORMAL calls, call gimple_builtin_call_types_compatible_p
	preferrably on builtin_decl_explicit decl rather than fndecl.
	* tree-ssa-strlen.cc (valid_builtin_call): Don't call
	gimple_builtin_call_types_compatible_p here.

2022-04-06  Richard Sandiford  <richard.sandiford@arm.com>

	PR tree-optimization/103761
	* tree-vect-stmts.cc (check_load_store_for_partial_vectors): Replace
	the ncopies parameter with an slp_node parameter.  Calculate the
	number of vectors based on it and vectype.  Rename lambda to
	group_memory_nvectors.
	(vectorizable_store, vectorizable_load): Update calls accordingly.

2022-04-06  Martin Liska  <mliska@suse.cz>

	* doc/invoke.texi: Document it.

2022-04-06  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/105148
	* tree-ssa-loop-ivopts.cc (idx_record_use): Walk raw operands
	2 and 3 of ARRAY_REFs.

2022-04-06  Roger Sayle  <roger@nextmovesoftware.com>

	* config/i386/sse.md (ANDNOT_MODE): New mode iterator for TF and V1TI.
	(*andnottf3): Replace with...
	(*andnot<mode>3): New define_insn using ANDNOT_MODE.

2022-04-06  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/105142
	* gimple-fold.h (maybe_fold_and_comparisons): Add defaulted
	basic-block parameter.
	(maybe_fold_or_comparisons): Likewise.
	* gimple-fold.cc (follow_outer_ssa_edges): New.
	(maybe_fold_comparisons_from_match_pd): Use follow_outer_ssa_edges
	when an outer condition basic-block is specified.
	(and_comparisons_1, and_var_with_comparison,
	and_var_with_comparison_1, or_comparisons_1,
	or_var_with_comparison, or_var_with_comparison_1): Receive and pass
	down the outer condition basic-block.
	* tree-ssa-ifcombine.cc (ifcombine_ifandif): Pass down the
	basic-block of the outer condition.

2022-04-06  Kewen Lin  <linkw@linux.ibm.com>

	PR target/105002
	* config/rs6000/rs6000.cc (rs6000_maybe_emit_maxc_minc): Support more
	comparison codes UNLT/UNLE/UNGT/UNGE.

2022-04-05  David Malcolm  <dmalcolm@redhat.com>

	* doc/extend.texi (Common Function Attributes): Document that
	'access' does not imply 'nonnull'.

2022-04-05  Uroš Bizjak  <ubizjak@gmail.com>

	PR target/105139
	* config/i386/mmx.md (*movv2qi_internal):
	Change insn mode of alternative 5 to HF for TARGET_AVX512FP16.

2022-04-05  Richard Sandiford  <richard.sandiford@arm.com>

	* config/aarch64/aarch64.md (aarch64_cpymemdi): Turn into a
	define_expand and turn operands 0 and 1 from REGs to MEMs.
	(*aarch64_cpymemdi): New pattern.
	(aarch64_setmemdi): Turn into a define_expand and turn operand 0
	from a REG to a MEM.
	(*aarch64_setmemdi): New pattern.
	* config/aarch64/aarch64.cc (aarch64_expand_cpymem_mops): Use
	copy_to_mode_reg on all three registers.  Replace the original
	MEM addresses rather than creating wild reads and writes.
	(aarch64_expand_setmem_mops): Likewise for the size and for the
	destination memory and address.

2022-04-05  Richard Sandiford  <richard.sandiford@arm.com>

	PR target/103147
	* config/aarch64/aarch64-protos.h (aarch64_simd_switcher): New class.
	* config/aarch64/aarch64-sve-builtins.h (sve_switcher): Inherit
	from aarch64_simd_switcher.
	* config/aarch64/aarch64-builtins.cc (aarch64_simd_tuple_modes):
	New variable.
	(aarch64_lookup_simd_builtin_type): Use it instead of TYPE_MODE.
	(register_tuple_type): Add more asserts.  Expect the alignment
	of the structure to be subject to flag_pack_struct and
	maximum_field_alignment.  Set aarch64_simd_tuple_modes.
	(aarch64_simd_switcher::aarch64_simd_switcher): New function.
	(aarch64_simd_switcher::~aarch64_simd_switcher): Likewise.
	(handle_arm_neon_h): Hold an aarch64_simd_switcher throughout.
	(aarch64_general_init_builtins): Hold an aarch64_simd_switcher
	while calling aarch64_init_simd_builtins.
	* config/aarch64/aarch64-sve-builtins.cc (sve_switcher::sve_switcher)
	(sve_switcher::~sve_switcher): Remove code now performed by
	aarch64_simd_switcher.

2022-04-05  Richard Sandiford  <richard.sandiford@arm.com>

	PR target/104897
	* config/aarch64/aarch64-sve-builtins.cc
	(function_resolver::infer_vector_or_tuple_type): Use error_n
	for "%d vectors" messages.

2022-04-05  Chung-Lin Tang  <cltang@codesourcery.com>

	* omp-low.cc (lower_omp_target): Use outer context looked-up 'var' as
	argument to lang_hooks.decls.omp_array_data, instead of 'ovar' from
	current clause.

2022-04-05  Richard Biener  <rguenther@suse.de>

	PR c/105151
	* passes.def (pass_walloca): Move early instance into
	pass_build_ssa_passes to make SSA form available.

2022-04-05  liuhongt  <hongtao.liu@intel.com>

	PR target/101908
	* config/i386/i386.cc (ix86_split_stlf_stall_load): New
	function
	(ix86_reorg): Call ix86_split_stlf_stall_load.
	* config/i386/i386.opt (-param=x86-stlf-window-ninsns=): New
	param.

2022-04-05  Alexandre Oliva  <oliva@adacore.com>

	* targhooks.cc (default_zero_call_used_regs): Attempt to group
	regs that the target refuses to use in their natural modes.
	(zcur_select_mode_rtx): New.
	* regs.h (struct target_regs): Add x_hard_regno_max_nregs.
	(hard_regno_max_nregs): Define.
	* reginfo.cc (init_reg_modes_target): Set hard_regno_max_nregs.

2022-04-04  Alex Coplan  <alex.coplan@arm.com>

	* doc/match-and-simplify.texi: Fix typos.

2022-04-04  Jakub Jelinek  <jakub@redhat.com>

	PR target/105144
	* config/aarch64/t-aarch64 (s-aarch64-tune-md): Do move-if-change
	only if configured with --enable-maintainer-mode, otherwise compare
	tmp-aarch64-tune.md with $(srcdir)/config/aarch64/aarch64-tune.md and
	if they differ, emit a message and fail.

2022-04-04  Jakub Jelinek  <jakub@redhat.com>

	PR target/105144
	* config/aarch64/t-aarch64 (s-mddeps): Depend on s-aarch64-tune-md.
	* config/aarch64/aarch64-tune.md: Regenerated.

2022-04-04  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/105132
	* tree-vect-stmts.cc (vectorizable_operation): Check that
	the input vectors have the same number of elements.

2022-04-04  Richard Biener  <rguenther@suse.de>

	PR middle-end/105140
	* fold-const.cc (fold_convertible_p): Allow a TYPE_P arg.

2022-04-03  Jeff Law  <jeffreyalaw@gmail.com>

	PR target/104987
	* config/iq2000/iq2000.md (bbi): New attribute,  default to no.
	(delay slot descripts): Use different delay slot description when
	the insn as the "bbi" attribute.
	(bbi, bbin patterns): Set the bbi attribute to yes.

2022-04-03  Jakub Jelinek  <jakub@redhat.com>

	PR target/105123
	* config/i386/i386-expand.cc (ix86_expand_vector_init_general): Avoid
	using word as target for expand_simple_binop when doing ASHIFT and
	IOR.

2022-04-02  Xi Ruoyao  <xry111@mengyan1223.wang>

	* config/mips/mips.cc (mips_function_arg): Check if DECL_SIZE is
	NULL before dereferencing it.

2022-04-01  Qing Zhao  <qing.zhao@oracle.com>

	* config/i386/i386.cc (zero_all_st_registers): Return the value of
	num_of_st.
	(ix86_zero_call_used_regs): Update zeroed_hardregs set according to
	the return value of zero_all_st_registers.
	* doc/tm.texi: Update the documentation of TARGET_ZERO_CALL_USED_REGS.
	* function.cc (gen_call_used_regs_seq): Add an assertion.
	* target.def: Update the documentation of TARGET_ZERO_CALL_USED_REGS.

2022-04-01  Xi Ruoyao  <xry111@mengyan1223.wang>

	PR target/102024
	* config/mips/mips.cc (mips_function_arg): Ignore zero-width
	fields, and inform if it causes a psABI change.

2022-04-01  Xi Ruoyao  <xry111@mengyan1223.wang>

	PR target/102024
	* config/mips/mips.cc (mips_fpr_return_fields): Detect C++
	zero-width bit-fields and set up an indicator.
	(mips_return_in_msb): Adapt for mips_fpr_return_fields change.
	(mips_function_value_1): Diagnose when the presense of a C++
	zero-width bit-field changes function returning in GCC 12.

2022-04-01  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/104645
	* tree-ssa-phiopt.cc (value_replacement): If assign has
	CONVERT_EXPR_CODE_P rhs_code, treat it like a preparation
	statement with constant evaluation.

2022-04-01  YunQiang Su  <yunqiang.su@cipunited.com>

	* config/mips/mips.cc (mips_expand_prologue):
	IPL is 8bit for MCU ASE.

2022-03-31  Bill Schmidt  <wschmidt@linux.ibm.com>

	PR target/104004
	* config/rs6000/rs6000-builtins.def (MFFSL): Mark nosoft.
	(MTFSB0): Likewise.
	(MTFSB1): Likewise.
	(SET_FPSCR_RN): Likewise.
	(SET_FPSCR_DRN): Mark nosoft and no32bit.

2022-03-31  Thomas Schwinge  <thomas@codesourcery.com>

	* doc/options.texi (Option file format): Clarifications around
	option definition records' help texts.

2022-03-31  Thomas Schwinge  <thomas@codesourcery.com>

	* optc-gen.awk <END>: Fix "Multiple different help strings" error
	diagnostic.

2022-03-31  Andre Vieira  <andre.simoesdiasvieira@arm.com>

	* config/aarch64/aarch64.cc (aarch64_vector_costs): Define
	determine_suggested_unroll_factor and m_has_avg.
	(determine_suggested_unroll_factor): New function.
	(aarch64_vector_costs::add_stmt_cost): Check for a qualifying pattern
	to set m_nosve_pattern.
	(aarch64_vector_costs::finish_costs): Use
	determine_suggested_unroll_factor.
	* config/aarch64/aarch64.opt (aarch64-vect-unroll-limit): New.
	* doc/invoke.texi: (aarch64-vect-unroll-limit): Document new option.

2022-03-31  Martin Jambor  <mjambor@suse.cz>

	PR ipa/103083
	* ipa-prop.h (ipa_ancestor_jf_data): New flag keep_null;
	(ipa_get_jf_ancestor_keep_null): New function.
	* ipa-prop.cc (ipa_set_ancestor_jf): Initialize keep_null field of the
	ancestor function.
	(compute_complex_assign_jump_func): Pass false to keep_null
	parameter of ipa_set_ancestor_jf.
	(compute_complex_ancestor_jump_func): Pass true to keep_null
	parameter of ipa_set_ancestor_jf.
	(update_jump_functions_after_inlining): Carry over keep_null from the
	original ancestor jump-function or merge them.
	(ipa_write_jump_function): Stream keep_null flag.
	(ipa_read_jump_function): Likewise.
	(ipa_print_node_jump_functions_for_edge): Print the new flag.
	* ipa-cp.cc (class ipcp_bits_lattice): Make various getters const.  New
	member function known_nonzero_p.
	(ipcp_bits_lattice::known_nonzero_p): New.
	(ipcp_bits_lattice::meet_with_1): New parameter drop_all_ones,
	observe it.
	(ipcp_bits_lattice::meet_with): Likewise.
	(propagate_bits_across_jump_function): Simplify.  Pass true in
	drop_all_ones when it is necessary.
	(propagate_aggs_across_jump_function): Take care of keep_null
	flag.
	(ipa_get_jf_ancestor_result): Propagate NULL accross keep_null
	jump functions.

2022-03-31  Martin Jambor  <mjambor@suse.cz>

	PR ipa/102513
	* ipa-cp.cc (decide_whether_version_node): Skip scalar values
	which do not fit the known value_range.

2022-03-31  Martin Jambor  <mjambor@suse.cz>

	PR ipa/103171
	* ipa-prop.cc (propagate_controlled_uses): Add a LOAD reference
	always when an ADDR_EXPR constant is known to reach a load because
	of inlining, not just when removing an ADDR reference.

2022-03-31  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/105109
	* tree-ssa.cc (execute_update_addresses_taken): Suppress
	diagnostics on the load of the other complex component.

2022-03-31  Tom de Vries  <tdevries@suse.de>

	* config/nvptx/nvptx.h (ASM_SPEC): Use "-m sm_35" for -misa=sm_30.

2022-03-31  Richard Biener  <rguenther@suse.de>

	PR rtl-optimization/105091
	* gimple-expr.cc (mark_addressable): Handle TARGET_MEM_REF
	bases.

2022-03-31  Richard Biener  <rguenther@suse.de>

	Revert:
	2021-09-13  Richard Earnshaw  <rearnsha@arm.com>

	PR target/102125
	* gimple-fold.c (gimple_fold_builtin_memory_op): Allow folding
	memcpy if the size is not more than MOVE_MAX * MOVE_RATIO.

2022-03-31  Sebastian Huber  <sebastian.huber@embedded-brains.de>

	* gcov-io.cc (gcov_read_string): Reword documentation comment.

2022-03-30  Bill Schmidt  <wschmidt@linux.ibm.com>

	* config/rs6000/rs6000-builtins.def (NEG_V16QI): Move to [altivec]
	stanza.
	(NEG_V4SF): Likewise.
	(NEG_V4SI): Likewise.
	(NEG_V8HI): Likewise.
	(NEG_V2DF): Move to [vsx] stanza.
	(NEG_V2DI): Likewise.

2022-03-30  Vladimir N. Makarov  <vmakarov@redhat.com>

	PR middle-end/105032
	* lra-assigns.cc (find_reload_regno_insns): Modify loop condition.

2022-03-30  Tom de Vries  <tdevries@suse.de>
	    Tobias Burnus  <tobias@codesourcery.com>

	* doc/invoke.texi (march): Document __PTX_SM__.
	(mptx): Document __PTX_ISA_VERSION_MAJOR__ and
	__PTX_ISA_VERSION_MINOR__.

2022-03-30  Jakub Jelinek  <jakub@redhat.com>

	PR sanitizer/105093
	* ubsan.cc (instrument_object_size): If t is equal to inner and
	is a decl other than global var, punt.  When emitting call to
	UBSAN_OBJECT_SIZE ifn, make sure base is addressable.

2022-03-30  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/105094
	* gimple-ssa-store-merging.cc (mem_valid_for_store_merging): Punt if
	bitsize <= 0 rather than just == 0.

2022-03-30  Tom de Vries  <tdevries@suse.de>

	* doc/invoke.texi (misa, mptx): Update.
	(march, march-map): Add.

2022-03-30  Thomas Schwinge  <thomas@codesourcery.com>

	* opt-functions.awk (n_args): New function.
	(lang_enabled_by): Merge function into...
	* optc-gen.awk <END>: ... sole user here.
	Improve diagnostics.

2022-03-29  Marek Polacek  <polacek@redhat.com>
	    Jakub Jelinek  <jakub@redhat.com>

	PR middle-end/103597
	* gimplify.cc (collect_fallthrough_labels): Don't push UNUSED_LABEL_Ps
	into labels.  Maybe set prev to the statement preceding UNUSED_LABEL_P.
	(gimplify_cond_expr): Set UNUSED_LABEL_P.
	* tree.h (UNUSED_LABEL_P): New.

2022-03-29   Michael Meissner  <meissner@linux.ibm.com>

	* config/rs6000/vsx.md (vsx_extract_<mode>): Allow destination to
	be any VSX register.

2022-03-29  Richard Earnshaw  <rearnsha@arm.com>

	PR target/102024
	* config/aarch64/aarch64.cc (aapcs_vfp_sub_candidate): Handle
	zero-sized bit-fields.  Detect cases where a warning may be needed.
	(aarch64_vfp_is_call_or_return_candidate): Emit a note if a
	zero-sized bit-field has caused parameter passing to change.

2022-03-29  Richard Earnshaw  <rearnsha@arm.com>

	PR target/102024
	* config/arm/arm.cc (aapcs_vfp_sub_candidate): Handle zero-sized
	bit-fields.  Detect cases where a warning may be needed.
	(aapcs_vfp_is_call_or_return_candidate): Emit a note if
	a zero-sized bit-field has caused parameter passing to change.

2022-03-29  Richard Earnshaw  <rearnsha@arm.com>

	PR target/96882
	* config/arm/arm.cc (arm_get_pcs_model): Disable selection of
	ARM_PCS_AAPCS_LOCAL.

2022-03-29  Tom de Vries  <tdevries@suse.de>

	PR target/104857
	* config/nvptx/nvptx-c.cc (nvptx_cpu_cpp_builtins): Emit
	__PTX_ISA_VERSION_MAJOR__ and __PTX_ISA_VERSION_MINOR__.
	* config/nvptx/nvptx.cc (ptx_version_to_number): New function.
	* config/nvptx/nvptx-protos.h (ptx_version_to_number): Declare.

2022-03-29  Tom de Vries  <tdevries@suse.de>

	* config/nvptx/nvptx.opt (m64): Update help text to reflect that it
	is ignored.

2022-03-29  Tom de Vries  <tdevries@suse.de>

	PR target/104714
	* config/nvptx/nvptx.opt (march-map=*): Add aliases.

2022-03-29  Jan Hubicka  <hubicka@ucw.cz>

	* config/i386/i386-builtins.cc (ix86_vectorize_builtin_gather): Test
	TARGET_USE_GATHER_2PARTS and TARGET_USE_GATHER_4PARTS.
	* config/i386/i386.h (TARGET_USE_GATHER_2PARTS): New macro.
	(TARGET_USE_GATHER_4PARTS): New macro.
	* config/i386/x86-tune.def (X86_TUNE_USE_GATHER_2PARTS): New tune
	(X86_TUNE_USE_GATHER_4PARTS): New tune

2022-03-29  Tom de Vries  <tdevries@suse.de>

	* config/nvptx/nvptx.opt (march): Add alias of misa.

2022-03-29  Chenghua Xu  <xuchenghua@loongson.cn>
	    Lulu Cheng  <chenglulu@loongson.cn>

	* doc/install.texi: Add LoongArch options section.
	* doc/invoke.texi: Add LoongArch options section.
	* doc/md.texi: Add LoongArch options section.

2022-03-29  Chenghua Xu  <xuchenghua@loongson.cn>
	    Lulu Cheng  <chenglulu@loongson.cn>

	* config/loongarch/loongarch-c.cc

2022-03-29  Chenghua Xu  <xuchenghua@loongson.cn>
	    Lulu Cheng  <chenglulu@loongson.cn>

	* config/loongarch/larchintrin.h: New file.
	* config/loongarch/loongarch-builtins.cc: New file.

2022-03-29  Chenghua Xu  <xuchenghua@loongson.cn>
	    Lulu Cheng  <chenglulu@loongson.cn>

	* config/host-linux.cc: Add LoongArch support.
	* config/loongarch/loongarch-protos.h: New file.
	* config/loongarch/loongarch-tune.h: Likewise.
	* config/loongarch/loongarch.cc: Likewise.
	* config/loongarch/loongarch.h: Likewise.

2022-03-29  Chenghua Xu  <xuchenghua@loongson.cn>
	    Lulu Cheng  <chenglulu@loongson.cn>

	* config/loongarch/constraints.md: New file.
	* config/loongarch/generic.md: New file.
	* config/loongarch/la464.md: New file.
	* config/loongarch/loongarch-ftypes.def: New file.
	* config/loongarch/loongarch-modes.def: New file.
	* config/loongarch/loongarch.md: New file.
	* config/loongarch/predicates.md: New file.
	* config/loongarch/sync.md: New file.

2022-03-29  Chenghua Xu  <xuchenghua@loongson.cn>
	    Lulu Cheng  <chenglulu@loongson.cn>

	* configure: Regenerate file.

2022-03-29  Chenghua Xu  <xuchenghua@loongson.cn>
	    Lulu Cheng  <chenglulu@loongson.cn>

	* common/config/loongarch/loongarch-common.cc: New file.
	* config/loongarch/genopts/genstr.sh: New file.
	* config/loongarch/genopts/loongarch-strings: New file.
	* config/loongarch/genopts/loongarch.opt.in: New file.
	* config/loongarch/loongarch-str.h: New file.
	* config/loongarch/gnu-user.h: New file.
	* config/loongarch/linux.h: New file.
	* config/loongarch/loongarch-cpu.cc: New file.
	* config/loongarch/loongarch-cpu.h: New file.
	* config/loongarch/loongarch-def.c: New file.
	* config/loongarch/loongarch-def.h: New file.
	* config/loongarch/loongarch-driver.cc: New file.
	* config/loongarch/loongarch-driver.h: New file.
	* config/loongarch/loongarch-opts.cc: New file.
	* config/loongarch/loongarch-opts.h: New file.
	* config/loongarch/loongarch.opt: New file.
	* config/loongarch/t-linux: New file.
	* config/loongarch/t-loongarch: New file.
	* config.gcc: Add LoongArch support.
	* configure.ac: Add LoongArch support.

2022-03-29  Thomas Schwinge  <thomas@codesourcery.com>

	* opt-functions.awk (lang_enabled_by): Fix 'enabledby_negargs'
	typo.

2022-03-29  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/105080
	* tree-ssa-strlen.cc (printf_strlen_execute): Always init
	loops and SCEV.

2022-03-28  Indu Bhagat  <indu.bhagat@oracle.com>

	* ctfout.cc (ctf_preprocess): Use ctfc_get_num_ctf_vars instead.
	(output_ctf_vars): Likewise.

2022-03-28  Jason Merrill  <jason@redhat.com>

	PR c++/59426
	* doc/extend.texi: Refer to __is_trivial instead of __is_pod.

2022-03-28  H.J. Lu  <hjl.tools@gmail.com>

	PR target/105068
	* config/i386/sse.md (*ssse3_pshufbv8qi3): Also replace "Yv" with
	"Yw" in clobber.

2022-03-28  Tom de Vries  <tdevries@suse.de>

	PR target/104818
	* config/nvptx/gen-opt.sh (ptx_isa): Improve help text.
	* config/nvptx/nvptx-gen.opt: Regenerate.
	* config/nvptx/nvptx.opt (misa, mptx, ptx_version): Improve help text.
	* config/nvptx/t-nvptx (s-nvptx-gen-opt): Add missing dependency on
	gen-opt.sh.

2022-03-28  David Malcolm  <dmalcolm@redhat.com>

	PR analyzer/104308
	* gimple-fold.cc (gimple_fold_builtin_memory_op): When optimizing
	to loads then stores, set the location of the new load stmt.

2022-03-28  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/105070
	* tree-switch-conversion.h
	(bit_test_cluster::hoist_edge_and_branch_if_true): Add location
	argument.
	* tree-switch-conversion.cc
	(bit_test_cluster::hoist_edge_and_branch_if_true): Annotate
	cond with location.
	(bit_test_cluster::emit): Annotate all generated expressions
	with location.

2022-03-28  Andre Vieira  <andre.simoesdiasvieira@arm.com>

	* config/aarch64/aarch64-cores.def: Update Neoverse N2 core entry.

2022-03-28  liuhongt  <hongtao.liu@intel.com>

	PR target/105066
	* config/i386/sse.md (vec_set<mode>_0): Change attr "isa" of
	alternative 4 from sse4_noavx to noavx.

2022-03-28  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/105056
	* tree-predcom.cc (component::component): Initialize also comp_step.

2022-03-27  H.J. Lu  <hjl.tools@gmail.com>

	PR target/105068
	* config/i386/sse.md (*ssse3_pshufbv8qi3): Replace "Yv" with
	"Yw".

2022-03-26  Roger Sayle  <roger@nextmovesoftware.com>

	PR middle-end/104885
	* calls.cc (mark_stack_region_used): Check that the region
	is within the allocated size of stack_usage_map.

2022-03-26  Jakub Jelinek  <jakub@redhat.com>

	PR rtl-optimization/103775
	* recog.cc (check_invalid_inc_dec): New function.
	(insn_invalid_p): Return 1 if REG_INC operand overlaps
	any stored REGs.

2022-03-26  H.J. Lu  <hjl.tools@gmail.com>

	PR target/105058
	* config/i386/sse.md (loadiwkey): Replace "v" with "x".
	(aes<aesklvariant>u8): Likewise.

2022-03-26  H.J. Lu  <hjl.tools@gmail.com>

	PR target/105052
	* config/i386/sse.md (ssse3_ph<plusminus_mnemonic>wv4hi3):
	Replace "Yv" with "x".
	(ssse3_ph<plusminus_mnemonic>dv2si3): Likewise.
	(ssse3_psign<mode>3): Likewise.

2022-03-26  Hans-Peter Nilsson  <hp@axis.com>

	* reload.cc (find_reloads): Align comment with code where
	considering the intersection of register classes then tweaking the
	regclass for the current alternative or rejecting it.

2022-03-25  Christophe Lyon  <christohe.lyon@arm.com>

	PR target/104882
	Revert
	2021-06-11  Christophe Lyon  <christophe.lyon@linaro.org>

	* config/arm/mve.md (mve_vec_unpack<US>_lo_<mode>): Delete.
	(mve_vec_unpack<US>_hi_<mode>): Delete.
	(@mve_vec_pack_trunc_lo_<mode>): Delete.
	(mve_vmovntq_<supf><mode>): Remove '@' prefix.
	* config/arm/neon.md (vec_unpack<US>_hi_<mode>): Move back
	from vec-common.md.
	(vec_unpack<US>_lo_<mode>): Likewise.
	(vec_pack_trunc_<mode>): Rename from
	neon_quad_vec_pack_trunc_<mode>.
	* config/arm/vec-common.md (vec_unpack<US>_hi_<mode>): Delete.
	(vec_unpack<US>_lo_<mode>): Delete.
	(vec_pack_trunc_<mode>): Delete.

2022-03-25  Vladimir N. Makarov  <vmakarov@redhat.com>

	PR middle-end/104971
	* lra-lives.cc (process_bb_lives): Check hard_regs_live for hard
	regs to clear remove_p flag.

2022-03-25  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/105053
	* tree-vect-loop.cc (vect_create_epilog_for_reduction): Pick
	the correct live-out stmt for a reduction chain.

2022-03-25  Richard Biener  <rguenther@suse.de>

	PR middle-end/105049
	* tree.cc (uniform_vector_p): Recurse for VECTOR_CST or
	CONSTRUCTOR first elements.

2022-03-25  Tobias Burnus  <tobias@codesourcery.com>

	PR analyzer/103533
	* doc/invoke.texi (Static Analyzer Options): Move
	@ignore block after @gccoptlist's '}' for 'make pdf'.

2022-03-25  David Malcolm  <dmalcolm@redhat.com>

	PR analyzer/104954
	* doc/invoke.texi (Static Analyzer Options): Add
	-fdump-analyzer-untracked.

2022-03-25  Avinash Sonawane  <rootkea@gmail.com>

	PR analyzer/103533
	* doc/invoke.texi: Document that enabling taint analyzer
	checker disables some warnings from `-fanalyzer`.

2022-03-24  Alexandre Oliva  <oliva@adacore.com>

	PR debug/104564
	* gimple-harden-conditionals.cc (detach_value): Keep temps
	anonymous.

2022-03-24  Alexandre Oliva  <oliva@adacore.com>

	PR middle-end/104975
	* gimple-harden-conditionals.cc
	(pass_harden_compares::execute): Force split in case of
	multiple edges.

2022-03-24  Jakub Jelinek  <jakub@redhat.com>

	PR c++/105035
	* fold-const.cc (operand_equal_p) <case COMPONENT_REF>: If either
	field0 or field1 is not a FIELD_DECL, return false.

2022-03-24  Richard Biener  <rguenther@suse.de>

	* tree-predcom.cc (chain::chain): Add CTOR.
	(component::component): Likewise.
	(pcom_worker::release_chain): Use delete.
	(release_components): Likewise.
	(pcom_worker::filter_suitable_components): Likewise.
	(pcom_worker::split_data_refs_to_components): Use new.
	(make_invariant_chain): Likewise.
	(make_rooted_chain): Likewise.
	(pcom_worker::combine_chains): Likewise.
	* tree-vect-loop.cc (vect_create_epilog_for_reduction):
	Make sure to release previously constructed scalar_results.
	* tree-vect-stmts.cc (vectorizable_load): Use auto_vec
	for vec_offsets.
	* vr-values.cc (simplify_using_ranges::~simplify_using_ranges):
	Release m_flag_set_edges.

2022-03-24  Siddhesh Poyarekar  <siddhesh@gotplt.org>

	PR tree-optimization/104970
	* tree-object-size.cc (parm_object_size): Restrict size
	computation scenarios to explicit access attributes.

2022-03-24  Kewen Lin  <linkw@linux.ibm.com>

	PR target/104967
	* config/rs6000/rs6000-c.cc (find_instance): Skip instances with null
	function types.

2022-03-23  Richard Biener  <rguenther@suse.de>

	PR target/102125
	* gimple-fold.cc (gimple_fold_builtin_memory_op): Allow the
	use of movmisalign when either the source or destination
	decl is properly aligned.

2022-03-23  Richard Biener  <rguenther@suse.de>

	PR rtl-optimization/105028
	* ira-color.cc (form_threads_from_copies): Remove unnecessary
	copying of the sorted_copies tail.

2022-03-23  Martin Liska  <mliska@suse.cz>

	* config/rs6000/rs6000-c.cc (altivec_resolve_overloaded_builtin):
	Use %qs in format.
	* config/rs6000/rs6000.cc (rs6000_option_override_internal):
	Reword the error message.

2022-03-23  liuhongt  <hongtao.liu@intel.com>

	PR target/104976
	* config/i386/sse.md (ssePSmodelower): New.
	(*avx_cmp<mode>3_ltint_not): Force_reg operand before
	lowpart_subreg to avoid NULL_RTX.
	(<avx512>_fmaddc_<mode>_mask1<round_expand_name>,
	<avx512>_fcmaddc_<mode>_mask1<round_expand_name>,
	fma_<mode>_fmaddc_bcst, fma_<mode>_fcmaddc_bcst,
	<avx512>_<complexopname>_<mode>_mask<round_name>,
	avx512fp16_fcmaddcsh_v8hf_mask1<round_expand_name>,
	avx512fp16_fcmaddcsh_v8hf_mask3<round_expand_name>,
	avx512fp16_fmaddcsh_v8hf_mask3<round_expand_name>,
	avx512fp16_fmaddcsh_v8hf_mask3<round_expand_name>,
	float<floatunssuffix><mode>v4hf2,
	float<floatunssuffix>v2div2hf2,
	fix<fixunssuffix>_truncv4hf<mode>2,
	fix<fixunssuffix>_truncv2hfv2di2, extendv4hf<mode>2,
	extendv2hfv2df2,
	trunc<mode>v4hf2,truncv2dfv2hf2,
	*avx512bw_permvar_truncv16siv16hi_1,
	*avx512bw_permvar_truncv16siv16hi_1_hf,
	*avx512f_permvar_truncv8siv8hi_1,
	*avx512f_permvar_truncv8siv8hi_1_hf,
	*avx512f_vpermvar_truncv8div8si_1,
	*avx512f_permvar_truncv32hiv32qi_1,
	*avx512f_permvar_truncv16hiv16qi_1,
	*avx512f_permvar_truncv4div4si_1,
	*avx512f_pshufb_truncv8hiv8qi_1,
	*avx512f_pshufb_truncv4siv4hi_1,
	*avx512f_pshufd_truncv2div2si_1,
	sdot_prod<mode>, avx2_pblend<ssemodesuffix>_1,
	ashrv2di3,ashrv2di3,usdot_prod<mode>): Ditto.

2022-03-22  Tom de Vries  <tdevries@suse.de>

	PR target/104925
	* config/nvptx/nvptx.md (define_insn "nvptx_uniform_warp_check"):
	Use % as register prefix.

2022-03-22  Tom de Vries  <tdevries@suse.de>

	* config/nvptx/nvptx.cc (nvptx_scalar_mode_supported_p)
	(nvptx_libgcc_floating_mode_supported_p): Only enable HFmode for
	mexperimental.

2022-03-22  Tom de Vries  <tdevries@suse.de>

	* config/nvptx/nvptx.opt (mexperimental): New option.

2022-03-22  Tom de Vries  <tdevries@suse.de>

	PR target/104957
	* config/nvptx/nvptx-protos.h (nvptx_asm_output_def_from_decls): Declare.
	* config/nvptx/nvptx.cc (write_fn_proto_1): Don't add function marker
	for alias.
	(SET_ASM_OP, NVPTX_ASM_OUTPUT_DEF): New macro def.
	(nvptx_asm_output_def_from_decls): New function.
	* config/nvptx/nvptx.h (ASM_OUTPUT_DEF): New macro def, define to
	gcc_unreachable ().
	(ASM_OUTPUT_DEF_FROM_DECLS): New macro def, define to
	nvptx_asm_output_def_from_decls.
	* config/nvptx/nvptx.opt (malias): New opt.

2022-03-22  Tom de Vries  <tdevries@suse.de>

	PR target/104916
	PR target/104783
	* config/nvptx/nvptx.md (define_expand "omp_simt_exit"): Emit warp
	sync (or uniform warp check for mptx < 6.0).

2022-03-22  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/105012
	* tree-if-conv.cc (ifcvt_local_dce): Only call
	dse_classify_store when we have a VDEF.

2022-03-22  Martin Liska  <mliska@suse.cz>

	PR target/104902
	* config/nvptx/nvptx.cc (handle_ptx_version_option):
	Fix option wrapping in an error message.

2022-03-22  Martin Liska  <mliska@suse.cz>

	PR target/104903
	* config/rs6000/rs6000-c.cc (altivec_resolve_overloaded_builtin):
	Wrap const keyword.

2022-03-22  Martin Liska  <mliska@suse.cz>

	* config/v850/v850-c.cc (pop_data_area): Fix typo in pragma
	name.

2022-03-22  Martin Liska  <mliska@suse.cz>

	PR target/104898
	* config/rs6000/rs6000.cc (rs6000_option_override_internal):
	Use %qs instead of (%qs).

2022-03-22  Martin Liska  <mliska@suse.cz>

	PR target/104898
	* config/i386/i386-options.cc (ix86_option_override_internal):
	Use '%qs' instead of '(%qs)'.

2022-03-22  Martin Liska  <mliska@suse.cz>

	PR target/104898
	* config/aarch64/aarch64.cc (aarch64_handle_attr_arch):
	Use 'qs' and remove usage '(%qs)'.
	(aarch64_handle_attr_cpu): Likewise.
	(aarch64_handle_attr_tune): Likewise.
	(aarch64_handle_attr_isa_flags): Likewise.

2022-03-22  Tamar Christina  <tamar.christina@arm.com>
	    Andre Vieira  <andre.simoesdiasvieira@arm.com>

	* config/aarch64/aarch64.cc (neoversev1_regmove_cost): New tuning
	struct.
	(neoversev1_tunings): Use neoversev1_regmove_cost and update store_int
	cost.
	(neoverse512tvb_tunings): Likewise.

2022-03-22  Tamar Christina  <tamar.christina@arm.com>
	    Andre Vieira  <andre.simoesdiasvieira@arm.com>

	* config/aarch64/aarch64.cc (demeter_addrcost_table,
	demeter_regmove_cost, demeter_advsimd_vector_cost,
	demeter_sve_vector_cost, demeter_scalar_issue_info,
	demeter_advsimd_issue_info, demeter_sve_issue_info,
	demeter_vec_issue_info, demeter_vector_cost,
	demeter_tunings): New tuning structs.
	(aarch64_ve_op_count::rename_cycles_per_iter): Enable for demeter
	tuning.
	* config/aarch64/aarch64-cores.def: Add entry for demeter.
	* config/aarch64/aarch64-tune.md (tune): Add demeter to list.

2022-03-22  Tamar Christina  <tamar.christina@arm.com>
	    Andre Vieira  <andre.simoesdiasvieira@arm.com>

	* config/aarch64/aarch64-protos.h (struct cpu_memmov_cost): New struct.
	(struct tune_params): Change type of memmov_cost to use cpu_memmov_cost.
	* config/aarch64/aarch64.cc (aarch64_memory_move_cost): Update all
	tunings to use cpu_memmov_cost struct.

2022-03-22  Tamar Christina  <tamar.christina@arm.com>
	    Andre Vieira  <andre.simoesdiasvieira@arm.com>

	* config/aarch64/aarch64.cc (neoversen2_addrcost_table,
	neoversen2_regmove_cost, neoversen2_advsimd_vector_cost,
	neoversen2_sve_vector_cost, neoversen2_scalar_issue_info,
	neoversen2_advsimd_issue_info, neoversen2_sve_issue_info,
	neoversen2_vec_issue_info, neoversen2_tunings): New structs.
	(neoversen2_tunings): Use new structs and update tuning flags.
	(aarch64_vec_op_count::rename_cycles_per_iter): Enable for neoversen2
	tuning.

2022-03-22  Andre Vieira  <andre.simoesdiasvieira@arm.com>

	* config/aarch64/aarch64.h (AARCH64_FL_FOR_ARCH9): Add FP16 feature
	bit.

2022-03-22  liuhongt  <hongtao.liu@intel.com>

	PR target/104982
	* config/i386/i386.md (*jcc_bt<mode>_mask): Extend the
	following splitter to reversed condition.

2022-03-22  Jakub Jelinek  <jakub@redhat.com>

	PR rtl-optimization/104989
	* calls.cc (expand_call): Don't set ECF_NORETURN in flags after
	sorry for passing too large argument, instead set sibcall_failure
	for pass == 0, or a new normal_failure flag otherwise.  If
	normal_failure is set, don't assert all stack has been deallocated
	at the end and throw away the whole insn sequence.

2022-03-22  Qian Jianhua  <qianjh@cn.fujitsu.com>

	* print-tree.cc: Change array length

2022-03-22  Hongyu Wang  <hongyu.wang@intel.com>

	PR target/104978
	* config/i386/sse.md
	(avx512fp16_fmaddcsh_v8hf_mask1<round_expand_name):
	Use avx512f_movsf_mask instead of vmovaps or vblend, and
	force_reg before lowpart_subreg.
	(avx512fp16_fcmaddcsh_v8hf_mask1<round_expand_name): Likewise.

2022-03-21  H.J. Lu  <hjl.tools@gmail.com>

	PR target/105000
	* common/config/i386/i386-common.cc
	(OPTION_MASK_ISA2_GENERAL_REGS_ONLY_UNSET): Replace
	OPTION_MASK_ISA2_AVX512F_UNSET with OPTION_MASK_ISA2_SSE_UNSET.

2022-03-21  H.J. Lu  <hjl.tools@gmail.com>

	PR target/104998
	* common/config/i386/cpuinfo.h (get_available_features): Pass
	0x19 to __cpuid for bit_AESKLE.  Enable FEATURE_AESKLE only if
	bit_AESKLE is set.

2022-03-21  Richard Sandiford  <richard.sandiford@arm.com>

	PR middle-end/104869
	* rtl-ssa/accesses.h (clobber_group::prev_clobber): Declare.
	(clobber_group::next_clobber): Likewise.
	(def_lookup::prev_def): Rename to...
	(def_lookup::last_def_of_prev_group): ...this.
	(def_lookup::next_def): Rename to...
	(def_lookup::first_def_of_next_group): ...this.
	(def_lookup::matching_or_prev_def): Rename to...
	(def_lookup::matching_set_or_last_def_of_prev_group): ...this.
	(def_lookup::matching_or_next_def): Rename to...
	(def_lookup::matching_set_or_first_def_of_next_group): ...this.
	(def_lookup::prev_def): New function, taking the lookup insn as
	argument.
	(def_lookup::next_def): Likewise.
	* rtl-ssa/member-fns.inl (def_lookup::prev_def): Rename to...
	(def_lookup::last_def_of_prev_group): ...this.
	(def_lookup::next_def): Rename to...
	(def_lookup::first_def_of_next_group): ...this.
	(def_lookup::matching_or_prev_def): Rename to...
	(def_lookup::matching_set_or_last_def_of_prev_group): ...this.
	(def_lookup::matching_or_next_def): Rename to...
	(def_lookup::matching_set_or_first_def_of_next_group): ...this.
	* rtl-ssa/movement.h (restrict_movement_for_dead_range): Update after
	above renaming.
	* rtl-ssa/accesses.cc (clobber_group::prev_clobber): New function.
	(clobber_group::next_clobber): Likewise.
	(def_lookup::prev_def): Likewise.
	(def_lookup::next_def): Likewise.
	(function_info::make_use_available): Pass the lookup insn to
	def_lookup::prev_def and def_lookup::next_def.

2022-03-21  Martin Liska  <mliska@suse.cz>

	* doc/invoke.texi: Document min-pagesize parameter.

2022-03-21  Richard Biener  <rguenther@suse.de>

	* tree-ssa-loop-niter.cc (estimate_numbers_of_iterations): Dump
	we are estimating niter of loop.

2022-03-21  Kito Cheng  <kito.cheng@sifive.com>

	* common/config/riscv/riscv-common.cc (riscv_ext_flag_table):
	Update flag name and mask name.
	* config/riscv/riscv-c.cc (riscv_cpu_cpp_builtins): Define
	misc macro for vector extensions.
	* config/riscv/riscv-opts.h (MASK_VECTOR_EEW_32): Rename to ...
	(MASK_VECTOR_ELEN_32): ... this.
	(MASK_VECTOR_EEW_64): Rename to ...
	(MASK_VECTOR_ELEN_64): ... this.
	(MASK_VECTOR_EEW_FP_32): Rename to ...
	(MASK_VECTOR_ELEN_FP_32): ... this.
	(MASK_VECTOR_EEW_FP_64): Rename to ...
	(MASK_VECTOR_ELEN_FP_64): ... this.
	(TARGET_VECTOR_ELEN_32): New.
	(TARGET_VECTOR_ELEN_64): Ditto.
	(TARGET_VECTOR_ELEN_FP_32): Ditto.
	(TARGET_VECTOR_ELEN_FP_64): Ditto.
	(TARGET_MIN_VLEN): Ditto.
	* config/riscv/riscv.opt (riscv_vector_eew_flags): Rename to ...
	(riscv_vector_elen_flags): ... this.

2022-03-21  Hongyu Wang  <hongyu.wang@intel.com>

	PR target/104977
	* config/i386/sse.md
	(avx512fp16_fma<complexopname>sh_v8hf<mask_scalarcz_name><round_scalarcz_name>):
	Correct round operand for intel dialect.

2022-03-19  Arthur Cohen  <arthur.cohen@embecosm.com>

	* diagnostic.cc (diagnostic_cc_tests): Rename to...
	(c_diagnostic_cc_tests): ...this.
	* opt-problem.cc (opt_problem_cc_tests): Rename to...
	(c_opt_problem_cc_tests): ...this.
	* selftest-run-tests.cc (selftest::run_tests): No longer run
	opt_problem_cc_tests or diagnostic_cc_tests.
	* selftest.h (diagnostic_cc_tests): Remove declaration.
	(opt_problem_cc_tests): Likewise.

2022-03-19  Marc Nieper-Wißkirchen  <marc@nieper-wisskirchen.de>

	PR jit/63854
	* hash-traits.h (struct typed_const_free_remove): New.
	(struct free_string_hash): New.
	* pass_manager.h: Use free_string_hash.
	* passes.cc (pass_manager::register_pass_name): Use free_string_hash.
	(pass_manager::~pass_manager): Delete allocated m_name_to_pass_map.

2022-03-19  Jakub Jelinek  <jakub@redhat.com>

	PR middle-end/104971
	* config/i386/i386-expand.cc
	(ix86_expand_builtin) <case IX86_BUILTIN_READ_FLAGS>: If ignore,
	don't push/pop anything and just return const0_rtx.

2022-03-18  Vladimir N. Makarov  <vmakarov@redhat.com>

	PR rtl-optimization/104961
	* lra-assigns.cc (find_reload_regno_insns): Process reload pseudo clobber.

2022-03-18  Jason Merrill  <jason@redhat.com>

	* tree.h (IDENTIFIER_LENGTH): Add comment.

2022-03-18  Jakub Jelinek  <jakub@redhat.com>

	PR middle-end/99578
	PR middle-end/100680
	PR tree-optimization/100834
	* params.opt (--param=min-pagesize=): New parameter.
	* pointer-query.cc
	(compute_objsize_r) <case ARRAY_REF>: Formatting fix.
	(compute_objsize_r) <case INTEGER_CST>: Use maximum object size instead
	of zero for pointer constants equal or larger than min-pagesize.

2022-03-18  Tom de Vries  <tdevries@suse.de>

	* gimplify.cc (gimplify_omp_for): Set location using 'input_location'.
	Set gfor location only when dealing with a OMP_TASKLOOP.

2022-03-18  Tom de Vries  <tdevries@suse.de>

	* gimplify.cc (gimplify_omp_for): Set taskloop location.

2022-03-18  Tom de Vries  <tdevries@suse.de>

	PR target/104952
	* omp-low.cc (lower_rec_input_clauses): Make sure GOMP_SIMT_XCHG_BFLY
	is executed unconditionally.

2022-03-18  liuhongt  <hongtao.liu@intel.com>

	PR target/104974
	* config/i386/i386.md (*movhi_internal): Set attr type from HI
	to HF for alternative 12 under TARGET_AVX512FP16.

2022-03-18  Cui,Lili  <lili.cui@intel.com>

	PR target/104963
	* config/i386/i386.h (PTA_SAPPHIRERAPIDS): change it to base on ICX.
	* doc/invoke.texi: Update documents for Intel sapphirerapids.

2022-03-17  Roger Sayle  <roger@nextmovesoftware.com>

	PR target/86722
	PR tree-optimization/90356
	* config/i386/i386.md (*movtf_internal): Don't guard
	standard_sse_constant_p clause by optimize_function_for_size_p.
	(*movdf_internal): Likewise.
	(*movsf_internal): Likewise.

2022-03-17  Andrew MacLeod  <amacleod@redhat.com>

	PR tree-optimization/102943
	* gimple-range-cache.cc (ranger_cache::range_from_dom): Find range via
	dominators and apply intermediary outgoing edge ranges.

2022-03-17  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/104960
	* passes.def: Add pass parameter to pass_sink_code, mark
	last one to unsplit edges.
	* tree-ssa-sink.cc (pass_sink_code::set_pass_param): New.
	(pass_sink_code::execute): Always execute TODO_cleanup_cfg
	when we need to unsplit edges.

2022-03-17  Jakub Jelinek  <jakub@redhat.com>

	PR middle-end/103984
	* gimplify.cc (gimplify_target_expr): Gimplify type sizes and
	TARGET_EXPR_INITIAL into a temporary sequence, then push clobbers
	and asan unpoisioning, then append the temporary sequence and
	finally the TARGET_EXPR_CLEANUP clobbers.

2022-03-16  Roger Sayle  <roger@nextmovesoftware.com>

	* config/i386/sse.md: Delete corrupt character/typo.

2022-03-16  Roger Sayle  <roger@nextmovesoftware.com>

	PR target/94680
	* config/i386/sse.md (sse2_movq128): New define_expand to
	preserve previous named instruction.
	(*sse2_movq128_<mode>): Renamed from sse2_movq128, and
	generalized to VI8F_128 (both V2DI and V2DF).

2022-03-16  Siddhesh Poyarekar  <siddhesh@gotplt.org>

	PR tree-optimization/104941
	* tree-object-size.cc (size_for_offset): Make useless conversion
	check lighter and assign result of fold_convert to OFFSET.

2022-03-16  H.J. Lu  <hjl.tools@gmail.com>

	PR target/104890
	* config/i386/x86gprintrin.h: Also check _SOFT_FLOAT before
	pushing target("general-regs-only").

2022-03-16  Kito Cheng  <kito.cheng@sifive.com>

	* common/config/riscv/riscv-common.cc (riscv_ext_version_table):
	Add version info for zk, zks and zkn.

2022-03-16  LiaoShihua  <shihua@iscas.ac.cn>

	* common/config/riscv/riscv-common.cc
	(riscv_combine_info): New.
	(riscv_subset_list::handle_combine_ext): Combine back into zk to
	maintain the canonical order in isa strings.
	(riscv_subset_list::parse): Ditto.
	* config/riscv/riscv-subset.h (handle_combine_ext): New.

2022-03-16  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/102008
	* passes.def: Move the added code sinking pass before the
	preceeding phiopt pass.

2022-03-16  Patrick Palka  <ppalka@redhat.com>

	PR c++/96780
	* doc/invoke.texi (C++ Dialect Options): Document
	-ffold-simple-inlines.

2022-03-16  Siddhesh Poyarekar  <siddhesh@gotplt.org>

	PR tree-optimization/104942
	* tree-object-size.cc (alloc_object_size): Remove STRIP_NOPS.

2022-03-16  Jakub Jelinek  <jakub@redhat.com>

	PR target/104910
	* config/aarch64/aarch64.cc (aarch64_load_symref_appropriately): Copy
	imm rtx.

2022-03-16  Roger Sayle  <roger@nextmovesoftware.com>
	    Richard Biener  <rguenther@suse.de>

	* gimple-match-head.cc (single_use): Implement inline using a
	single loop.

2022-03-16  Roger Sayle  <roger@nextmovesoftware.com>

	* match.pd (X CMP X -> true): Test tree_expr_maybe_nan_p
	instead of HONOR_NANS.
	(X LTGT X -> false): Enable if X is not tree_expr_maybe_nan_p, as
	this can't trap/signal.

2022-03-16  liuhongt  <hongtao.liu@intel.com>

	PR target/104946
	* config/i386/i386-builtin.def (BDESC): Add
	CODE_FOR_sse4_1_blendvpd for IX86_BUILTIN_BLENDVPD.
	* config/i386/i386.cc (ix86_gimple_fold_builtin): Don't fold
	__builtin_ia32_blendvpd w/o sse4.2

2022-03-15  Peter Bergner  <bergner@linux.ibm.com>

	PR target/104923
	* config/rs6000/predicates.md (mma_disassemble_output_operand): Restrict
	acceptable MEM addresses.

2022-03-15  Jakub Jelinek  <jakub@redhat.com>

	PR target/91229
	* config/riscv/riscv.cc (riscv_pass_aggregate_in_fpr_pair_p,
	riscv_pass_aggregate_in_fpr_and_gpr_p): Pass OPT_Wpsabi instead of 0
	to warning calls.

2022-03-15  Jakub Jelinek  <jakub@redhat.com>

	PR target/104890
	* config/i386/i386.h (LIBGCC2_UNWIND_ATTRIBUTE): Use no-mmx,no-sse
	instead of general-regs-only.

2022-03-15  Roger Sayle  <roger@nextmovesoftware.com>
	    Marc Glisse  <marc.glisse@inria.fr>
	    Richard Biener  <rguenther@suse.de>

	PR tree-optimization/101895
	* match.pd (vec_same_elem_p): Handle CONSTRUCTOR_EXPR def.
	(plus (vec_perm (mult ...) ...) ...): New reordering simplification.

2022-03-15  Jakub Jelinek  <jakub@redhat.com>

	PR rtl-optimization/104814
	* ifcvt.cc (find_if_case_1, find_if_case_2): Punt if test_bb doesn't
	end with onlyjump_p.  Assume BB_END (test_bb) is always non-NULL.

2022-03-15  Martin Sebor  <msebor@redhat.com>

	PR middle-end/104436
	* gimple-ssa-warn-access.cc (pass_waccess::check_dangling_stores):
	Check for warning suppression.  Avoid by-value arguments transformed
	into by-transparent-reference.

2022-03-14  Roger Sayle  <roger@nextmovesoftware.com>
	    Uroš Bizjak  <ubizjak@gmail.com>

	* config/i386/i386.md (peephole2 xorl;movb -> movzbl): Disable
	transformation when *zero_extend<mode>si2 is not available.

2022-03-14  Xi Ruoyao  <xry111@mengyan1223.wang>

	* config/mips/mips.h (SUBTARGET_SHADOW_OFFSET): Define.
	* config/mips/mips.cc (mips_option_override): Make
	-fsanitize=address imply -fasynchronous-unwind-tables.  This is
	needed by libasan for stack backtrace on MIPS.
	(mips_asan_shadow_offset): Return SUBTARGET_SHADOW_OFFSET.

2022-03-14  Jakub Jelinek  <jakub@redhat.com>

	PR debug/104778
	* lra.cc (lra_substitute_pseudo): For debug_p mode, simplify
	SUBREG, ZERO_EXTEND, SIGN_EXTEND, FLOAT or UNSIGNED_FLOAT if recursive
	call simplified the first operand into VOIDmode constant.

2022-03-14  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/102586
	* doc/extend.texi (__builtin_clear_padding): Clearify that for C++
	argument type should be pointer to trivially-copyable type unless it
	is address of a variable or parameter.

2022-03-14  Jakub Jelinek  <jakub@redhat.com>

	PR target/99754
	* config/i386/emmintrin.h (_mm_loadu_si32): Put loaded value into
	first 	rather than last element of the vector, use __m32_u to do
	a really unaligned load, use just 0 instead of (int)0.
	(_mm_loadu_si16): Put loaded value into first rather than last
	element of the vector, use __m16_u to do a really unaligned load,
	use just 0 instead of (short)0.

2022-03-14  Jakub Jelinek  <jakub@redhat.com>

	PR other/104899
	* config/bfin/bfin.cc (bfin_handle_longcall_attribute): Fix a typo
	in diagnostic message - cannott -> cannot.  Use %< and %> around
	names of attribute.  Avoid too long line.
	* range-op.cc (operator_logical_and::op1_range): Fix up a typo
	in comment - cannott -> cannot.  Use 2 spaces after . instead of one.

2022-03-14  liuhongt  <hongtao.liu@intel.com>

	PR target/104666
	* config/i386/i386-expand.cc
	(ix86_check_builtin_isa_match):	New func.
	(ix86_expand_builtin): Move code to
	ix86_check_builtin_isa_match and call it.
	* config/i386/i386-protos.h
	(ix86_check_builtin_isa_match): Declare.
	* config/i386/i386.cc (ix86_gimple_fold_builtin): Don't fold
	builtin into gimple when isa mismatches.

2022-03-13  Tobias Burnus  <tobias@codesourcery.com>

	* doc/invoke.texi: Fix typos.
	* doc/tm.texi.in: Remove duplicated word.
	* doc/tm.texi: Regenerate.

2022-03-12  Segher Boessenkool  <segher@kernel.crashing.org>

	PR target/104829
	* config/rs6000/rs6000.cc (rs6000_machine_from_flags): Don't output
	"ppc" and "ppc64" based on rs6000_cpu.

2022-03-12  Thomas Schwinge  <thomas@codesourcery.com>

	PR middle-end/100280
	PR middle-end/104892
	* omp-oacc-kernels-decompose.cc (omp_oacc_kernels_decompose_1):
	Remove special handling of 'GOMP_MAP_FORCE_TOFROM'.

2022-03-12  Thomas Schwinge  <thomas@codesourcery.com>

	PR middle-end/100280
	PR middle-end/104086
	* omp-oacc-kernels-decompose.cc (omp_oacc_kernels_decompose_1):
	Mark variables used in 'present' clauses as addressable.
	* omp-low.cc (scan_sharing_clauses) <OMP_CLAUSE_MAP>: Gracefully
	handle duplicate 'OMP_CLAUSE_MAP_DECL_MAKE_ADDRESSABLE'.

2022-03-12  Thomas Schwinge  <thomas@codesourcery.com>

	PR other/65095
	* tree-core.h (user_omp_claus_code_name): Declare function.
	* tree.cc (user_omp_clause_code_name): New function.

2022-03-12  Roger Sayle  <roger@nextmovesoftware.com>

	PR middle-end/98420
	* match.pd (minus @0 @0): Additional checks for -fno-rounding-math
	(the defaut) or -fno-signed-zeros.

2022-03-12   Michael Meissner  <meissner@linux.ibm.com>

	PR target/104868
	* config/rs6000/vsx.md (extendditi2): Use a 'b' constraint when
	moving from a GPR register to an Altivec register.

2022-03-11  Roger Sayle  <roger@nextmovesoftware.com>

	PR tree-optimization/98335
	* config/i386/i386.md (peephole2): Eliminate redundant insv.
	Combine movl followed by movb.  Transform xorl followed by
	a suitable movb or movw into the equivalent movz[bw]l.

2022-03-11  Roger Sayle  <roger@nextmovesoftware.com>
	    Richard Biener  <rguenther@suse.de>

	PR tree-optimization/98335
	* builtins.cc (get_object_alignment_2): Export.
	* builtins.h (get_object_alignment_2): Likewise.
	* tree-ssa-alias.cc (ao_ref_alignment): New.
	* tree-ssa-alias.h (ao_ref_alignment): Declare.
	* tree-ssa-dse.cc (compute_trims): Improve logic deciding whether
	to align head/tail, writing more bytes but using fewer store insns.

2022-03-11  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/104880
	* tree-ssa.cc (execute_update_address_taken): Remember if we
	optimistically made something not addressable and
	prepare to undo it.

2022-03-11  Richard Biener  <rguenther@suse.de>

	PR target/104762
	* config/i386/i386.cc (ix86_builtin_vectorization_cost): Do not
	cost the first lane of SSE pieces as inserts for vec_construct.

2022-03-10  Roger Sayle  <roger@nextmovesoftware.com>

	PR c++/84964
	* calls.cc (expand_call): Ignore stack adjustments after sorry.

2022-03-10  Vladimir N. Makarov  <vmakarov@redhat.com>

	PR target/103074
	* lra-constraints.cc (split_reg): Set up
	check_and_force_assignment_correctness_p when splitting hard
	register live range.

2022-03-10  Martin Jambor  <mjambor@suse.cz>

	PR ipa/104813
	* ipa-cp.cc (create_specialized_node): Move removal of
	self-recursive calls from callers vector before refrence
	adjustments.

2022-03-10  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/102943
	* gimple-range-cache.cc (sbr_sparse_bitmap::bitvec):
	Make a bitmap_head.
	(sbr_sparse_bitmap::sbr_sparse_bitmap): Adjust and switch
	to tree view.
	(sbr_sparse_bitmap::set_bb_range): Adjust.
	(sbr_sparse_bitmap::get_bb_range): Likewise.

2022-03-10  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/102943
	* tree-ssa-dom.cc (back_propagate_equivalences): Only
	populate the dominance bitmap if fast queries are not
	available.  Use a tree view bitmap.
	(record_temporary_equivalences): Cache the dominance bitmap
	across all equivalences on the edge.

2022-03-10  Tom de Vries  <tdevries@suse.de>

	PR target/104840
	* config/nvptx/nvptx.md (define_attr "predicable"): Use no,yes instead
	of false,true.

2022-03-10  Tom de Vries  <tdevries@suse.de>

	PR target/104783
	* config/nvptx/nvptx.cc (nvptx_init_unisimt_predicate)
	(nvptx_output_unisimt_switch): Handle unisimt_outside_simt_predicate.
	(nvptx_get_unisimt_outside_simt_predicate): New function.
	(predicate_insn): New function, factored out of ...
	(nvptx_reorg_uniform_simt): ... here.  Predicate all emitted insns.
	* config/nvptx/nvptx.h (struct machine_function): Add
	unisimt_outside_simt_predicate field.
	* config/nvptx/nvptx.md (define_insn "nvptx_warpsync")
	(define_insn "nvptx_uniform_warp_check"): Make predicable.

2022-03-10  Tom de Vries  <tdevries@suse.de>

	* config/nvptx/nvptx.cc (nvptx_unisimt_handle_set): Handle unused
	result.

2022-03-10  Tom de Vries  <tdevries@suse.de>

	PR target/104815
	* config/nvptx/nvptx.cc (nvptx_print_operand): Handle 'x' operand
	modifier.
	* config/nvptx/nvptx.md: Use %x0 destination operand in atom insns.

2022-03-10  Tom de Vries  <tdevries@suse.de>

	* config/nvptx/nvptx.md (define_insn "atomic_fetch_<logic><mode>"):
	Emit atom.and.b64 instead of atom.b64.and.

2022-03-10  Tom de Vries  <tdevries@suse.de>

	* config/nvptx/t-nvptx (MULTILIB_EXTRA_OPTS): Move mptx=3.1 ...
	(MULTILIB_OPTIONS): ... here.

2022-03-10  Tom de Vries  <tdevries@suse.de>

	PR target/104758
	* config/nvptx/nvptx.opt (misa): Set default to sm_30.
	* config/nvptx/t-nvptx (MULTILIB_EXTRA_OPTS): Remove misa=sm_30.

2022-03-10  Thomas Schwinge  <thomas@codesourcery.com>

	PR middle-end/90115
	PR middle-end/102330
	PR middle-end/104774
	* omp-low.cc (oacc_privatization_candidate_p)
	(oacc_privatization_scan_clause_chain)
	(oacc_privatization_scan_decl_chain, lower_oacc_private_marker):
	Analyze 'lookup_decl'-translated DECL.

2022-03-10  Jakub Jelinek  <jakub@redhat.com>

	PR target/99708
	* config/rs6000/rs6000.h (enum rs6000_builtin_type_index): Remove
	RS6000_BTI_ptr_ieee128_float and RS6000_BTI_ptr_ibm128_float.
	(ptr_ieee128_float_type_node, ptr_ibm128_float_type_node): Remove.
	* config/rs6000/rs6000-builtin.cc (rs6000_type_string): Return
	"**NULL**" if type_node is NULL first.  Handle
	ieee128_float_type_node.
	(rs6000_init_builtins): Don't initialize ptr_ieee128_float_type_node
	and ptr_ibm128_float_type_node.  Set ibm128_float_type_node and
	ieee128_float_type_node to NULL rather than long_double_type_node if
	they aren't supported.  Do support __ibm128 even if
	!TARGET_FLOAT128_TYPE when long double is double double.
	(rs6000_expand_builtin): Error if bif_is_ibm128 and
	!ibm128_float_type_node.  Remap RS6000_BIF_{,UN}PACK_IF to
	RS6000_BIF_{,UN}PACK_TF much earlier and only use bif_is_ibm128 check
	for it.
	* config/rs6000/rs6000-c.cc (rs6000_target_modify_macros): Define
	__SIZEOF_FLOAT128__ here and only iff __float128 macro is defined.
	(rs6000_cpu_cpp_builtins): Don't define __SIZEOF_FLOAT128__ here.
	Define __SIZEOF_IBM128__=16 if ieee128_float_type_node is non-NULL.
	Formatting fix.
	* config/rs6000/rs6000-gen-builtins.cc: Document ibm128 attribute.
	(struct attrinfo): Add isibm128 member.
	(TYPE_MAP_SIZE): Remove.
	(type_map): Use [] instead of [TYPE_MAP_SIZE].  For "if" use
	ibm128_float_type_node only if it is non-NULL, otherwise fall back
	to long_double_type_node.  Remove "pif" entry.
	(parse_bif_attrs): Handle ibm128 attribute and print it for debugging.
	(write_decls): Output bif_ibm128_bit and bif_is_ibm128.
	(write_type_node): Use sizeof type_map / sizeof type_map[0]
	instead of TYPE_MAP_SIZE.
	(write_bif_static_init): Handle isibm128.
	* config/rs6000/rs6000-builtins.def: Document ibm128 attribute.
	(__builtin_pack_ibm128, __builtin_unpack_ibm128): Add ibm128
	attribute.

2022-03-09  Richard Biener  <rguenther@suse.de>

	* cfgexpand.cc (expand_gimple_asm): Special-case MEM_REF
	with non-decl operand, avoiding a copy.

2022-03-09  Jakub Jelinek  <jakub@redhat.com>

	PR target/104781
	* config/i386/i386.h (LIBGCC2_UNWIND_ATTRIBUTE): Define for ia32.

2022-03-09  Richard Biener  <rguenther@suse.de>

	PR middle-end/104786
	* cfgexpand.cc (expand_asm_stmt): Do not generate a copy
	for VLAs without an upper size bound.

2022-03-09  Xi Ruoyao  <xry111@mengyan1223.wang>

	PR tree-optimization/104851
	* optabs-query.cc (supports_vec_convert_optab_p): Fix off-by-one
	error.

2022-03-09  Jakub Jelinek  <jakub@redhat.com>

	PR c/104711
	* doc/invoke.texi (-Wextra): Document that -Wshift-negative-value
	is enabled by it only for C++11 to C++17 rather than for C++03 or
	later.
	(-Wshift-negative-value): Similarly (except here we stated
	that it is enabled for C++11 or later).

2022-03-09  Jakub Jelinek  <jakub@redhat.com>

	PR rtl-optimization/104839
	* simplify-rtx.cc (simplify_unary_operation_1) <case SIGN_EXTEND>:
	Use SRP_SIGNED instead of incorrect 1 in SUBREG_PROMOTED_SET.
	(simplify_unary_operation_1) <case ZERO_EXTEND>: Use SRP_UNSIGNED
	instead of incorrect 0 in SUBREG_PROMOTED_SET.

2022-03-09  Xi Ruoyao  <xry111@mengyan1223.wang>

	PR target/104842
	* config/mips/mips.h (LUI_OPERAND): Cast the input to an unsigned
	value before adding an offset.

2022-03-08  Christophe Lyon  <christophe.lyon@arm.com>

	* config/arm/arm-builtins.cc
	(arm_binop_none_none_unone_qualifiers): Delete.
	(BINOP_NONE_NONE_UNONE_QUALIFIERS): Delete.

2022-03-08  Iain Sandoe  <iain@sandoe.co.uk>

	PR translation/104552
	* config/host-darwin.cc (darwin_gt_pch_get_address): Amend
	the PCH out of memory error message punctuation and wording.

2022-03-08  Marek Polacek  <polacek@redhat.com>

	PR rtl-optimization/104777
	* rtl.cc (classify_insn): For ASM_OPERANDS, return JUMP_INSN only if
	ASM_OPERANDS_LABEL_VEC has at least one element.

2022-03-08  H.J. Lu  <hjl.tools@gmail.com>

	PR target/104781
	* config/i386/i386.cc (ix86_expand_epilogue): Sorry if there is
	stack realignment or regparm nested function with EH return.

2022-03-08  Andre Vieira  <andre.simoesdiasvieira@arm.com>

	PR target/104790
	* config/arm/arm.h (MVE_STN_LDW_MODE): New MACRO.
	* config/arm/arm.cc (mve_vector_mem_operand): Relax constraint on base
	register for non widening loads or narrowing stores.

2022-03-08  Eric Gallager  <egallager@gcc.gnu.org>

	PR translation/104552
	* params.opt: Fix typo.

2022-03-08  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/84201
	* params.opt (-param=vect-induction-float): Add.
	* doc/invoke.texi (vect-induction-float): Document.
	* tree-vect-loop.cc (vectorizable_induction): Honor
	param_vect_induction_float.

2022-03-08  Martin Jambor  <mjambor@suse.cz>

	PR translation/104552
	* params.opt (ipa-cp-recursive-freq-factor): Remove repeated word
	"that" in the description.

2022-03-08  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/104825
	* tree-ssa-sccvn.cc (visit_reference_op_call): Properly
	guard modref get_ao_ref on a pointer typed argument.

2022-03-08  liuhongt  <hongtao.liu@intel.com>

	* config/i386/sse.md (*vec_dupv4si): Disable memory operand
	for !TARGET_INTER_UNIT_MOVES_TO_VEC when prefer_for_speed.

2022-03-07  Jonathan Wakely  <jwakely@redhat.com>

	* doc/invoke.texi (C++ Modules): Remove anachronism.

2022-03-07  Martin Liska  <mliska@suse.cz>

	PR middle-end/104381
	* opts.cc (finish_options): If debug info is disabled
	(debug_info_level) and -fvar-tracking is unset, disable it.

2022-03-07  Jakub Jelinek  <jakub@redhat.com>

	* tree-ssa-propagate.cc: Fix up duplicated word issue in a comment.
	* config/riscv/riscv.cc: Likewise.
	* config/darwin.h: Likewise.
	* config/i386/i386.cc: Likewise.
	* config/aarch64/thunderx3t110.md: Likewise.
	* config/aarch64/fractional-cost.h: Likewise.
	* config/vax/vax.cc: Likewise.
	* config/rs6000/pcrel-opt.md: Likewise.
	* config/rs6000/predicates.md: Likewise.
	* ctfc.h: Likewise.
	* tree-ssa-uninit.cc: Likewise.
	* value-relation.h: Likewise.
	* gimple-range-gori.cc: Likewise.
	* ipa-polymorphic-call.cc: Likewise.
	* pointer-query.cc: Likewise.
	* ipa-sra.cc: Likewise.
	* internal-fn.cc: Likewise.
	* varasm.cc: Likewise.
	* gimple-ssa-warn-access.cc: Likewise.

2022-03-07  Martin Liska  <mliska@suse.cz>

	PR target/104794
	* config/arm/arm.cc (arm_option_override_internal): Add missing
	space.

2022-03-07  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/104782
	* tree-vect-slp.cc (vectorize_slp_instance_root_stmt):
	Re-instantiate r10-5979 fix, add comment.

2022-03-07  Martin Liska  <mliska@suse.cz>

	PR target/104797
	* config/msp430/msp430.cc (msp430_expand_delay_cycles): Remove
	parenthesis from built-in name.

2022-03-07  Martin Liska  <mliska@suse.cz>

	PR target/104794
	* config/arm/arm.cc (arm_option_override_internal): Fix quoting
	of options in error messages.
	(arm_option_reconfigure_globals): Likewise.

2022-03-07  Martin Liska  <mliska@suse.cz>

	PR target/104794
	* config/arm/arm-builtins.cc (arm_expand_builtin): Reuse error
	message.  Fix ARM_BUILTIN_WRORHI and ARM_BUILTIN_WRORH that can
	have only range [0,32].

2022-03-07  Jakub Jelinek  <jakub@redhat.com>

	PR target/104775
	* config/s390/s390.md (*cmp_and_trap_unsigned_int<mode>): Use
	S constraint instead of T in the last alternative.

2022-03-07  Martin Liska  <mliska@suse.cz>

	* plugin.cc (default_plugin_dir_name): Remove <dir> from error
	message.

2022-03-07  Martin Liska  <mliska@suse.cz>

	PR translation/90148
	* config/rs6000/rs6000.cc (rs6000_linux64_override_options): Put
	quote to a proper place.
	* plugin.cc (default_plugin_dir_name): Likewise.

2022-03-07  Martin Liska  <mliska@suse.cz>

	PR target/99297
	* config/rx/rx.cc (rx_expand_builtin_mvtc): Fix translation
	string.

2022-03-07  Jakub Jelinek  <jakub@redhat.com>

	PR target/104779
	* config/i386/sse.md (avx512dq_mul<mode>3<mask_name>): New
	define_expand pattern.  Rename define_insn to ...
	(*avx512dq_mul<mode>3<mask_name>): ... this.
	(<code><mode>3_mask): New any_logic define_expand pattern.
	(<mask_codefor><code><mode>3<mask_name>): Rename to ...
	(*<code><mode>3<mask_name>): ... this.

2022-03-05  Jakub Jelinek  <jakub@redhat.com>

	* gimple-ssa-warn-access.cc (pass_waccess::use_after_inval_p): Remove
	visited bitmap and its use.  Also punt on EDGE_ABNORMAL edges.

2022-03-05  Roger Sayle  <roger@nextmovesoftware.com>
	    Uroš Bizjak  <ubizjak@gmail.com>

	PR testsuite/104732
	* config/i386/i386.md (SWIM1248x): Renamed from SWIM1248s.
	Include DI mode unconditionally.
	(*anddi3_doubleword): Remove && TARGET_STV && TARGET_SSE2 condition,
	i.e. always split on !TARGET_64BIT.
	(*<any_or>di3_doubleword): Likewise.
	(*one_cmpldi2_doubleword): Likewise.
	(and<mode>3 expander): Update to use SWIM1248x from SWIM1248s.
	(<any_or><mode>3 expander): Likewise.
	(one_cmpl<mode>2 expander): Likewise.

2022-03-05   Michael Meissner  <meissner@linux.ibm.com>

	PR target/104698
	* config/rs6000/vsx.md (UNSPEC_MTVSRD_DITI_W1): Delete.
	(mtvsrdd_diti_w1): Delete.
	(extendditi2): Convert from define_expand to
	define_insn_and_split.  Replace with code to deal with both GPR
	registers and with altivec registers.

2022-03-04  Segher Boessenkool  <segher@kernel.crashing.org>

	* config/rs6000/rs6000.cc (rs6000_machine_from_flags): Restructure a
	bit.  Handle most older CPUs.

2022-03-04  Iain Sandoe  <iain@sandoe.co.uk>

	* config/darwin.cc (darwin_fold_builtin): Make fcode an int to
	avoid a mismatch with DECL_MD_FUNCTION_CODE().

2022-03-04  Iain Sandoe  <iain@sandoe.co.uk>

	PR target/104117
	* config/rs6000/darwin.md (@machopic_high_<mode>): New.
	(@machopic_low_<mode>): New.
	* config/rs6000/predicates.md (macho_pic_address): New.
	* config/rs6000/rs6000.cc (rs6000_legitimize_address): Do not
	apply the TLS processing to Darwin.
	* lra-constraints.cc (process_address_1): Revert the changes
	in r12-7209.

2022-03-04  Peter Bergner  <bergner@linux.ibm.com>

	PR target/87496
	PR target/104208
	* config/rs6000/rs6000.cc (rs6000_option_override_internal): Make the
	ISA 2.06 requirement for -mabi=ieeelongdouble conditional on
	-mlong-double-128.
	Move the -mabi=ieeelongdouble and -mabi=ibmlongdouble error checking
	from here...
	* common/config/rs6000/rs6000-common.cc (rs6000_handle_option):
	... to here.

2022-03-04  Jakub Jelinek  <jakub@redhat.com>

	PR middle-end/104529
	* gimplify.cc (gimplify_init_constructor): Clear TREE_READONLY
	on automatic objects which will be runtime initialized.

2022-03-04  Thomas Schwinge  <thomas@codesourcery.com>

	PR middle-end/100280
	PR middle-end/104132
	PR middle-end/104133
	* omp-low.cc (task_shared_vars): Rename to
	'make_addressable_vars'.  Adjust all users.
	(scan_sharing_clauses) <OMP_CLAUSE_MAP> Use it for
	'OMP_CLAUSE_MAP_DECL_MAKE_ADDRESSABLE' DECLs, too.

2022-03-04  Thomas Schwinge  <thomas@codesourcery.com>

	PR middle-end/100280
	* tree.h (OMP_CLAUSE_MAP_DECL_MAKE_ADDRESSABLE): New.
	* tree-core.h: Document it.
	* omp-low.cc (scan_sharing_clauses) <OMP_CLAUSE_MAP>: Handle
	'OMP_CLAUSE_MAP_DECL_MAKE_ADDRESSABLE'.
	* omp-oacc-kernels-decompose.cc (maybe_build_inner_data_region):
	Set 'OMP_CLAUSE_MAP_DECL_MAKE_ADDRESSABLE' instead of
	'TREE_ADDRESSABLE'.

2022-03-04  Thomas Schwinge  <thomas@codesourcery.com>

	PR middle-end/100280
	* omp-oacc-kernels-decompose.cc (maybe_build_inner_data_region):
	Add diagnostic: "note: OpenACC 'kernels' decomposition: variable
	'[...]' declared in block made addressable".

2022-03-04  Thomas Schwinge  <thomas@codesourcery.com>

	PR middle-end/100400
	PR middle-end/103836
	PR middle-end/104061
	* omp-oacc-kernels-decompose.cc (decompose_kernels_region_body):
	Catch 'GIMPLE_DEBUG'.

2022-03-04  Jakub Jelinek  <jakub@redhat.com>

	PR c/104627
	* tree.cc (warn_deprecated_use): For types prefer to use node
	and only use TYPE_MAIN_VARIANT (node) if TYPE_STUB_DECL (node) is
	NULL.

2022-03-04  H.J. Lu  <hjl.tools@gmail.com>

	PR target/104704
	* config/i386/i386.cc (ix86_gen_scratch_sse_rtx): Always return
	a pseudo register.

2022-03-03  Martin Sebor  <msebor@redhat.com>

	PR middle-end/104761
	* gimple-ssa-warn-access.cc (pass_waccess::execute): Call
	mark_dfs_back_edges.

2022-03-03  Martin Liska  <mliska@suse.cz>

	* configure.ac: Use linker plug-in by default.
	* configure: Regenerate.

2022-03-03  Martin Liska  <mliska@suse.cz>

	* configure.ac: Now ld.mold support LTO plugin API, use it.
	* configure: Regenerate.

2022-03-03  Tom de Vries  <tdevries@suse.de>

	* config/nvptx/t-nvptx (MULTILIB_EXTRA_OPTS): Add mptx=3.1.

2022-03-03  Tom de Vries  <tdevries@suse.de>

	PR target/104758
	* config/nvptx/t-nvptx (MULTILIB_EXTRA_OPTS): Add misa=sm_30.

2022-03-03  Tom de Vries  <tdevries@suse.de>

	* config/nvptx/nvptx.h (ASM_SPEC): Add %{misa=sm_30:--no-verify}.

2022-03-03  Jakub Jelinek  <jakub@redhat.com>

	PR middle-end/104757
	* gimplify.cc (gimplify_omp_loop): Call gimplify_expr rather than
	gimplify_omp_for.
	(gimplify_expr) <case OMP_SIMD>: Temporarily disable
	gimplify_ctxp->into_ssa around call to gimplify_omp_for.

2022-03-03  Jakub Jelinek  <jakub@redhat.com>

	PR middle-end/104558
	* calls.cc (store_one_arg): When not calling emit_push_insn
	because size_rtx is const0_rtx, call at least anti_adjust_stack
	on arg->locate.alignment_pad if !argblock and the alignment might
	be non-zero.

2022-03-02  Alexandre Oliva  <oliva@adacore.com>

	* lra-constraints.cc (undo_optional_reloads): Recognize and
	drop insns of multi-word move sequences, tolerate removal
	iteration on an already-removed clobber, and refuse to
	substitute original pseudos into clobbers.

2022-03-02  Qing Zhao  <qing.zhao@oracle.com>

	PR middle-end/102276
	* common.opt (-Wtrivial-auto-var-init): New option.
	* doc/invoke.texi (-Wtrivial-auto-var-init): Document new option.
	(-ftrivial-auto-var-init): Update option;
	* gimplify.cc (emit_warn_switch_unreachable): New function.
	(warn_switch_unreachable_r): Rename to ...
	(warn_switch_unreachable_and_auto_init_r): This.
	(maybe_warn_switch_unreachable): Rename to ...
	(maybe_warn_switch_unreachable_and_auto_init): This.
	(gimplify_switch_expr): Update calls to renamed function.

2022-03-02  Richard Biener  <rguenther@suse.de>

	PR rtl-optimization/104686
	* ira-color.cc (object_conflicts_with_allocno_p): New function
	using a bitvector test instead of iterating when possible.
	(allocnos_conflict_p): Choose the best allocno to iterate over
	object conflicts.
	(update_conflict_hard_regno_costs): Do allocnos_conflict_p test
	last.

2022-03-02  Jakub Jelinek  <jakub@redhat.com>

	* cfg.cc (dump_edge_info): Dump goto_locus if present.

2022-03-02  Jakub Jelinek  <jakub@redhat.com>

	PR rtl-optimization/104589
	* cfgrtl.cc (fixup_reorder_chain): Use loc_equal instead of direct
	INSN_LOCATION comparison with goto_locus.

2022-03-02  Jakub Jelinek  <jakub@redhat.com>

	* tree-ssa-strlen.cc (strlen_pass::handle_assign,
	strlen_pass::before_dom_children): Comment spelling fixes.

2022-03-02  Jakub Jelinek  <jakub@redhat.com>

	* ipa-modref-tree.cc (modref_access_node::contains,
	modref_access_node::closer_pair_p, modref_access_node::insert,
	modref_access_node::insert_kill): Comment spelling fixes.
	* ipa-modref.cc: Likewise.
	(modref_summary::finalize, ignore_nondeterminism_p,
	class modref_access_analysis,
	modref_access_analysis::set_side_effects,
	modref_access_analysis::set_nondeterministic,
	modref_access_analysis::record_global_memory_load,
	modref_access_analysis::propagate, modref_access_analysis::analyze,
	struct escape_point, class modref_lattice, modref_lattice::merge,
	modref_lattice::merge_deref, class modref_eaf_analysis,
	modref_eaf_analysis::merge_call_lhs_flags,
	modref_eaf_analysis::analyze_ssa_name, modref_eaf_analysis::propagate,
	modref_eaf_analysis::record_escape_points, remap_kills,
	update_escape_summary, remove_useless_summaries,
	ipa_merge_modref_summary_after_inlining, pass_ipa_modref::execute):
	Likewise.
	* ipa-modref.h (struct modref_summary, interposable_eaf_flags):
	Likewise.
	* ipa-modref-tree.h (enum modref_special_parms,
	struct modref_access_node): Likewise.

2022-03-01  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/104715
	* gimple-ssa-warn-access.cc (pass_waccess::check_pointer_uses): Don't
	unnecessarily test if ptr is a SSA_NAME, it has to be.  Only push lhs
	of a call if gimple_call_return_arg is equal to ptr, not just when it
	is non-NULL.

2022-03-01  Jakub Jelinek  <jakub@redhat.com>

	* gimple-ssa-warn-access.cc (warn_string_no_nul,
	maybe_warn_nonstring_arg, fndecl_alloc_p, new_delete_mismatch_p,
	matching_alloc_calls_p, maybe_warn_alloc_args_overflow,
	pass_waccess::check_alloca, pass_waccess::check_strcat,
	memmodel_to_uhwi, fntype_argno_type,
	pass_waccess::maybe_check_access_sizes,
	pass_waccess::check_call_access,
	pass_waccess::maybe_check_dealloc_call, pass_waccess::check_stmt):
	Comment spelling fixes.

2022-03-01  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/104716
	* tree-loop-distribution.cc (find_seed_stmts_for_distribution):
	Check if we can copy the loop.

2022-03-01  H.J. Lu  <hjl.tools@gmail.com>

	PR middle-end/104721
	* cfgexpand.cc (expand_gimple_basic_block): Clear
	currently_expanding_gimple_stmt when returning inside the loop.

2022-03-01  Martin Liska  <mliska@suse.cz>

	PR ipa/104533
	* multiple_target.cc (get_attr_len): Move to tree.c.
	(expand_target_clones): Remove single value checking.
	* tree.cc (get_target_clone_attr_len): New fn.
	* tree.h (get_target_clone_attr_len): Likewise.

2022-03-01  Martin Liska  <mliska@suse.cz>

	PR gcov-profile/104677
	* doc/invoke.texi: Document more .gcda file name generation.

2022-03-01  Tom de Vries  <tdevries@suse.de>

	PR target/102429
	* config/nvptx/nvptx.cc (nvptx_gen_shuffle): Handle DCmode and CDImode.
	* config/nvptx/nvptx.md
	(define_predicate "nvptx_register_or_complex_di_df_register_operand"):
	New predicate.
	(define_expand "omp_simt_xchg_bfly", define_expand "omp_simt_xchg_idx"):
	Use nvptx_register_or_complex_di_df_register_operand.

2022-03-01  Tom de Vries  <tdevries@suse.de>

	* config.gcc (nvptx*-*-*): Add nvptx/nvptx-gen.opt to extra_options.
	* config/nvptx/gen-copyright.sh: New file.
	* config/nvptx/gen-h.sh: New file.
	* config/nvptx/gen-opt.sh: New file.
	* config/nvptx/nvptx.h (TARGET_SM35, TARGET_SM53, TARGET_SM70)
	(TARGET_SM75, TARGET_SM80): Move ...
	* config/nvptx/nvptx-gen.h: ... here.  New file, generate.
	* config/nvptx/nvptx.opt (Enum ptx_isa): Move ...
	* config/nvptx/nvptx-gen.opt: ... here.  New file, generate.
	* config/nvptx/t-nvptx ($(srcdir)/config/nvptx/nvptx-gen.h)
	($(srcdir)/config/nvptx/nvptx-gen.opt): New make target.

2022-03-01  Tom de Vries  <tdevries@suse.de>

	* config/nvptx/gen-omp-device-properties.sh: New file.
	* config/nvptx/t-omp-device: Use gen-omp-device-properties.sh.

2022-03-01  Tom de Vries  <tdevries@suse.de>

	* config/nvptx/nvptx-sm.def: New file.
	* config/nvptx/nvptx-c.cc (nvptx_cpu_cpp_builtins): Use nvptx-sm.def.
	* config/nvptx/nvptx-opts.h (enum ptx_isa): Same.
	* config/nvptx/nvptx.cc (sm_version_to_string)
	(nvptx_omp_device_kind_arch_isa): Same.

2022-03-01  Robin Dapp  <rdapp@linux.ibm.com>

	PR rtl-optimization/104154
	* config/arc/arc.cc (gen_compare_reg):  Return the CC-mode
	comparison ifcvt passed us.

2022-03-01  Hongyu Wang  <hongyu.wang@intel.com>

	PR target/104664
	* config/i386/i386-expand.cc (ix86_expand_vector_init_duplicate):
	Use vec_setv8hf_0 for HF to V8HFmode move instead of subreg.

2022-02-28  Roger Sayle  <roger@nextmovesoftware.com>

	PR tree-optimization/91384
	* config/i386/i386.md (peephole2): Eliminate final testl insn
	from the sequence *movsi_internal, *negsi_1, *cmpsi_ccno_1 by
	transforming using *negsi_2 for the negation.

2022-02-28  Roger Sayle  <roger@nextmovesoftware.com>
	    Eric Botcazou  <ebotcazou@adacore.com>

	PR middle-end/80270
	* expmed.cc (extract_integral_bit_field): If OP0 is a hard
	register, copy it to a pseudo before calling simplify_gen_subreg.

2022-02-28  Vladimir N. Makarov  <vmakarov@redhat.com>

	PR rtl-optimization/104637
	* lra-assigns.cc (lra_split_hard_reg_for): Split hard regs as many
	as possible on one subpass.

2022-02-28  Qing Zhao  <qing.zhao@oracle.com>

	PR middle-end/104550
	* gimple-fold.cc (clear_padding_flush): Suppress warnings for new
	created uses.

2022-02-28  Martin Liska  <mliska@suse.cz>

	PR ipa/104648
	* main.cc (main): Use flag_checking instead of CHECKING_P
	and run toplev::finalize only if there is not error seen.

2022-02-28  Richard Biener  <rguenther@suse.de>

	* tree-ssa-pre.cc (compute_avail): Revert part of last change.

2022-02-28  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/104700
	* tree-ssa-pre.cc (get_or_alloc_expr_for): Remove and inline
	into ...
	(find_or_generate_expression): ... here, simplifying code.

2022-02-28  Tom de Vries  <tdevries@suse.de>

	* config/nvptx/nvptx-opts.h (enum ptx_version): Add
	PTX_VERSION_default.
	* config/nvptx/nvptx.cc (handle_ptx_version_option): Handle
	PTX_VERSION_default.
	* config/nvptx/nvptx.opt: Add EnumValue "_" / PTX_VERSION_default.

2022-02-28  Richard Biener  <rguenther@suse.de>

	PR rtl-optimization/104686
	* ira-int.h (minmax_set_iter_cond): Use ctz_hwi to elide loop
	skipping bits that are zero.
	(ira_object_conflict_iter_cond): Likewise.

2022-02-28  Hongyu Wang  <hongyu.wang@intel.com>

	* config/i386/avx512fintrin.h (_MM_TERNLOG_ENUM): New enum.
	(_mm512_ternarylogic_epi64): Truncate imm to unsigned
	char to avoid error when using ~enum as parameter.
	(_mm512_mask_ternarylogic_epi64): Likewise.
	(_mm512_maskz_ternarylogic_epi64): Likewise.
	(_mm512_ternarylogic_epi32): Likewise.
	(_mm512_mask_ternarylogic_epi32): Likewise.
	(_mm512_maskz_ternarylogic_epi32): Likewise.
	* config/i386/avx512vlintrin.h (_mm256_ternarylogic_epi64):
	Adjust imm param type to unsigned char.
	(_mm256_mask_ternarylogic_epi64): Likewise.
	(_mm256_maskz_ternarylogic_epi64): Likewise.
	(_mm256_ternarylogic_epi32): Likewise.
	(_mm256_mask_ternarylogic_epi32): Likewise.
	(_mm256_maskz_ternarylogic_epi32): Likewise.
	(_mm_ternarylogic_epi64): Likewise.
	(_mm_mask_ternarylogic_epi64): Likewise.
	(_mm_maskz_ternarylogic_epi64): Likewise.
	(_mm_ternarylogic_epi32): Likewise.
	(_mm_mask_ternarylogic_epi32): Likewise.
	(_mm_maskz_ternarylogic_epi32): Likewise.

2022-02-25  Jakub Jelinek  <jakub@redhat.com>
	    Marc Glisse  <marc.glisse@inria.fr>

	PR tree-optimization/104675
	* match.pd (t * 2U / 2 -> t & (~0 / 2), t / 2U * 2 -> t & ~1):
	Restrict simplifications to INTEGRAL_TYPE_P.

2022-02-25  Jakub Jelinek  <jakub@redhat.com>

	PR target/104681
	* config/rs6000/vector.md (movmisalign<mode>): Use rs6000_emit_move.

2022-02-25  Claudiu Zissulescu  <claziss@synopsys.com>

	* config/arc/arc.cc (gen_compare_reg): Return NULL_RTX if the
	comparison is not valid.
	* config/arc/arc.md (movsicc): Fail if comparison is not valid.
	(movdicc): Likewise.
	(movsfcc): Likewise.
	(movdfcc): Likewise.

2022-02-25  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/103037
	* tree-ssa-sccvn.h (alloc_vn_nary_op_noinit): Declare.
	(vn_nary_length_from_stmt): Likewise.
	(init_vn_nary_op_from_stmt): Likewise.
	(vn_nary_op_compute_hash): Likewise.
	* tree-ssa-sccvn.cc (alloc_vn_nary_op_noinit): Export.
	(vn_nary_length_from_stmt): Likewise.
	(init_vn_nary_op_from_stmt): Likewise.
	(vn_nary_op_compute_hash): Likewise.
	* tree-ssa-pre.cc (pre_expr_obstack): New obstack.
	(get_or_alloc_expr_for_nary): Pass in the value-id to use,
	(re-)compute the hash value and if the expression is not
	found allocate it from pre_expr_obstack.
	(phi_translate_1): Do not insert the NARY found in the
	VN tables but build a PRE expression from the valueized
	NARY with the value-id we eventually found.
	(find_or_generate_expression): Assert we have an entry
	for constant values.
	(compute_avail): Insert not valueized expressions into
	EXP_GEN using the value-id from the VN tables.
	(init_pre): Allocate pre_expr_obstack.
	(fini_pre): Free pre_expr_obstack.

2022-02-25  Jakub Jelinek  <jakub@redhat.com>

	PR target/104674
	* config/i386/i386.h (enum ix86_stack_slot): Add SLOT_FLOATxFDI_387.
	* config/i386/i386.md (splitter to floatdi<mode>2_i387_with_xmm): Use
	SLOT_FLOATxFDI_387 rather than SLOT_TEMP.

2022-02-25  Jakub Jelinek  <jakub@redhat.com>

	* warning-control.cc (get_nowarn_spec): Comment spelling fix.

2022-02-25  Jakub Jelinek  <jakub@redhat.com>

	PR middle-end/104679
	* internal-fn.cc (expand_SPACESHIP): Call do_pending_stack_adjust.

2022-02-25  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/104675
	* match.pd (-A - 1 -> ~A, -1 - A -> ~A): Don't simplify for
	COMPLEX_TYPE.

2022-02-25  Alexandre Oliva  <oliva@adacore.com>

	PR target/104121
	PR target/103302
	* expr.cc (emit_move_multi_word): Restore clobbers during LRA.

2022-02-25  Alexandre Oliva  <oliva@adacore.com>

	PR middle-end/104540
	* dwarf2cfi.cc (cfi_oprnd_equal_p): Cope with NULL
	dw_cfi_cfa_loc.

2022-02-25  Alexandre Oliva  <oliva@adacore.com>

	PR tree-optimization/103856
	* gimple-harden-conditionals.cc (non_eh_succ_edge): Enable the
	eh edge to be requested through an extra parameter.
	(pass_harden_compares::execute): Copy PHI args in the EH dest
	block for the new EH edge added for the inverted compare.

2022-02-24  Palmer Dabbelt  <palmer@rivosinc.com>

	* doc/invoke.texi (RISC-V -mcmodel=medany): Document the degree
	of position independence that -mcmodel=medany affords.

2022-02-24  Jose E. Marchesi  <jose.marchesi@oracle.com>

	PR target/104656
	* configure.ac: --disable-gcov if targetting bpf-*.
	* configure: Regenerate.

2022-02-24  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/104676
	* tree-loop-distribution.cc (loop_distribution::execute):
	Do a full scev_reset.

2022-02-24  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/104601
	* tree-ssa-sccvn.cc (visit_reference_op_call): For calls with
	non-SSA_NAME lhs value number vdef to itself instead of e.g. the
	vuse value number.

2022-02-24  Tom de Vries  <tdevries@suse.de>
	    Tobias Burnus  <tobias@codesourcery.com>

	* config/nvptx/nvptx.cc (nvptx_omp_device_kind_arch_isa): Handle
	sm_70, sm_75 and sm_80.
	* config/nvptx/t-omp-device: Add sm_53, sm_70, sm_75 and sm_80.

2022-02-24  Tom de Vries  <tdevries@suse.de>

	* config/nvptx/nvptx.md (define_insn "rotlsi3", define_insn
	"rotrsi3"): New define_insn.

2022-02-24  Tom de Vries  <tdevries@suse.de>

	* config/nvptx/nvptx.cc (gen_comment): Use
	DECL_SOURCE_LOCATION (cfun->decl) instead of cfun->function_start_locus.

2022-02-24  liuhongt  <hongtao.liu@intel.com>

	* config/i386/sse.md (<code>v1ti3): Add suffix and replace
	isa attr of alternative 2 from avx to avx512vl.

2022-02-23  Richard Biener  <rguenther@suse.de>
	    Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/104644
	* doc/match-and-simplify.texi: Amend ! documentation.
	* genmatch.cc (expr::gen_transform): Code-generate ! support
	for GENERIC.
	(parser::parse_expr): Allow ! for GENERIC.
	* match.pd (cmp (bswap @0) INTEGER_CST@1): Use ! modifier on
	bswap.

2022-02-23  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/101636
	* tree-vect-slp.cc (vect_print_slp_tree): Dump the
	vector type of the node.
	(vect_slp_analyze_operations): Make sure the CTOR
	is vectorized with an expected type.
	(vectorize_slp_instance_root_stmt): Revert r10-5979 fix.

2022-02-23  Jakub Jelinek  <jakub@redhat.com>

	PR c/104633
	* gimple-warn-recursion.cc (pass_warn_recursion::find_function_exit):
	Don't warn about calls to corresponding builtin from extern inline
	gnu_inline wrappers.

2022-02-23  Roger Sayle  <roger@nextmovesoftware.com>

	PR target/104489
	* config/nvptx/nvptx.md (*movhf_insn): Add subregs_ok attribute.

2022-02-23  Christophe Lyon  <christophe.lyon@arm.com>

	PR target/100757
	PR target/101325
	* config/arm/vfp.md (thumb2_movhi_vfp, thumb2_movhi_fp16): Fix
	typo.

2022-02-23  Cui,Lili  <lili.cui@intel.com>

	* doc/invoke.texi: Update documents for Intel architectures.

2022-02-22  Roger Sayle  <roger@nextmovesoftware.com>

	* config/i386/i386-expand.cc (ix86_expand_cmpxchg_loop): Restore
	bootstrap.

2022-02-22  Thomas Schwinge  <thomas@codesourcery.com>

	* omp-low.cc (omp_build_component_ref): Move function...
	* omp-general.cc (omp_build_component_ref): ... here.  Remove
	'static'.
	* omp-general.h (omp_build_component_ref): Declare function.
	* omp-oacc-neuter-broadcast.cc (oacc_build_component_ref): Remove
	function.
	(build_receiver_ref, build_sender_ref): Call
	'omp_build_component_ref' instead.

2022-02-22  Thomas Schwinge  <thomas@codesourcery.com>

	* omp-oacc-neuter-broadcast.cc (record_field_map_t): Further
	simplify.  Adjust all users.

2022-02-22  Segher Boessenkool  <segher@kernel.crashing.org>

	PR target/88134
	* config/rs6000/rs6000.cc (atomic_hold_decl, atomic_clear_decl,
	atomic_update_decl): Add GTY markup.

2022-02-22  Christophe Lyon  <christophe.lyon@arm.com>

	* config/arm/arm.h (REG_CLASS_CONTENTS): Add VPR_REG to ALL_REGS.

2022-02-22  Christophe Lyon  <christophe.lyon@arm.com>

	PR target/100757
	PR target/101325
	* config/arm/arm-builtins.cc (CX_UNARY_UNONE_QUALIFIERS): Use
	predicate.
	(CX_BINARY_UNONE_QUALIFIERS): Likewise.
	(CX_TERNARY_UNONE_QUALIFIERS): Likewise.
	(TERNOP_NONE_NONE_NONE_UNONE_QUALIFIERS): Delete.
	(QUADOP_NONE_NONE_NONE_NONE_UNONE_QUALIFIERS): Delete.
	(QUADOP_UNONE_UNONE_UNONE_UNONE_UNONE_QUALIFIERS): Delete.
	* config/arm/arm_mve_builtins.def: Use predicated qualifiers.
	* config/arm/mve.md: Use VxBI instead of HI.

2022-02-22  Christophe Lyon  <christophe.lyon@arm.com>

	PR target/100757
	PR target/101325
	* config/arm/arm-builtins.cc (STRSBS_P_QUALIFIERS): Use predicate
	qualifier.
	(STRSBU_P_QUALIFIERS): Likewise.
	(LDRGBS_Z_QUALIFIERS): Likewise.
	(LDRGBU_Z_QUALIFIERS): Likewise.
	(LDRGBWBXU_Z_QUALIFIERS): Likewise.
	(LDRGBWBS_Z_QUALIFIERS): Likewise.
	(LDRGBWBU_Z_QUALIFIERS): Likewise.
	(STRSBWBS_P_QUALIFIERS): Likewise.
	(STRSBWBU_P_QUALIFIERS): Likewise.
	* config/arm/mve.md: Use VxBI instead of HI.

2022-02-22  Christophe Lyon  <christophe.lyon@arm.com>

	PR target/100757
	PR target/101325
	* config/arm/arm-builtins.cc (TERNOP_UNONE_UNONE_NONE_UNONE_QUALIFIERS): Change to ...
	(TERNOP_UNONE_UNONE_NONE_PRED_QUALIFIERS): ... this.
	(TERNOP_UNONE_UNONE_IMM_UNONE_QUALIFIERS): Change to ...
	(TERNOP_UNONE_UNONE_IMM_PRED_QUALIFIERS): ... this.
	(TERNOP_NONE_NONE_IMM_UNONE_QUALIFIERS): Change to ...
	(TERNOP_NONE_NONE_IMM_PRED_QUALIFIERS): ... this.
	(TERNOP_NONE_NONE_UNONE_UNONE_QUALIFIERS): Change to ...
	(TERNOP_NONE_NONE_UNONE_PRED_QUALIFIERS): ... this.
	(QUADOP_UNONE_UNONE_NONE_NONE_UNONE_QUALIFIERS): Change to ...
	(QUADOP_UNONE_UNONE_NONE_NONE_PRED_QUALIFIERS): ... this.
	(QUADOP_NONE_NONE_NONE_NONE_PRED_QUALIFIERS): New.
	(QUADOP_NONE_NONE_NONE_IMM_UNONE_QUALIFIERS): Change to ...
	(QUADOP_NONE_NONE_NONE_IMM_PRED_QUALIFIERS): ... this.
	(QUADOP_UNONE_UNONE_UNONE_UNONE_PRED_QUALIFIERS): New.
	(QUADOP_UNONE_UNONE_NONE_IMM_UNONE_QUALIFIERS): Change to ...
	(QUADOP_UNONE_UNONE_NONE_IMM_PRED_QUALIFIERS): ... this.
	(QUADOP_NONE_NONE_UNONE_IMM_UNONE_QUALIFIERS): Change to ...
	(QUADOP_NONE_NONE_UNONE_IMM_PRED_QUALIFIERS): ... this.
	(QUADOP_UNONE_UNONE_UNONE_IMM_UNONE_QUALIFIERS): Change to ...
	(QUADOP_UNONE_UNONE_UNONE_IMM_PRED_QUALIFIERS): ... this.
	(QUADOP_UNONE_UNONE_UNONE_NONE_UNONE_QUALIFIERS): Change to ...
	(QUADOP_UNONE_UNONE_UNONE_NONE_PRED_QUALIFIERS): ... this.
	(STRS_P_QUALIFIERS): Use predicate qualifier.
	(STRU_P_QUALIFIERS): Likewise.
	(STRSU_P_QUALIFIERS): Likewise.
	(STRSS_P_QUALIFIERS): Likewise.
	(LDRGS_Z_QUALIFIERS): Likewise.
	(LDRGU_Z_QUALIFIERS): Likewise.
	(LDRS_Z_QUALIFIERS): Likewise.
	(LDRU_Z_QUALIFIERS): Likewise.
	(QUINOP_UNONE_UNONE_UNONE_UNONE_IMM_UNONE_QUALIFIERS): Change to ...
	(QUINOP_UNONE_UNONE_UNONE_UNONE_IMM_PRED_QUALIFIERS): ... this.
	(BINOP_NONE_NONE_PRED_QUALIFIERS): New.
	(BINOP_UNONE_UNONE_PRED_QUALIFIERS): New.
	* config/arm/arm_mve_builtins.def: Use new predicated qualifiers.
	* config/arm/mve.md: Use MVE_VPRED instead of HI.

2022-02-22  Christophe Lyon  <christophe.lyon@arm.com>

	PR target/100757
	PR target/101325
	* config/arm/arm-builtins.cc (BINOP_UNONE_NONE_NONE_QUALIFIERS):
	Delete.
	(TERNOP_UNONE_NONE_NONE_UNONE_QUALIFIERS): Change to ...
	(TERNOP_PRED_NONE_NONE_PRED_QUALIFIERS): ... this.
	(TERNOP_PRED_UNONE_UNONE_PRED_QUALIFIERS): New.
	* config/arm/arm_mve_builtins.def (vcmp*q_n_, vcmp*q_m_f): Use new
	predicated qualifiers.
	* config/arm/mve.md (mve_vcmp<mve_cmp_op>q_n_<mode>)
	(mve_vcmp*q_m_f<mode>): Use MVE_VPRED instead of HI.

2022-02-22  Christophe Lyon  <christophe.lyon@arm.com>

	PR target/100757
	* config/arm/arm-protos.h (arm_get_mask_mode): New prototype.
	(arm_expand_vector_compare): Update prototype.
	* config/arm/arm.cc (TARGET_VECTORIZE_GET_MASK_MODE): New.
	(arm_vector_mode_supported_p): Add support for VxBI modes.
	(arm_expand_vector_compare): Remove useless generation of vpsel.
	(arm_expand_vcond): Fix select operands.
	(arm_get_mask_mode): New.
	* config/arm/mve.md (vec_cmp<mode><MVE_vpred>): New.
	(vec_cmpu<mode><MVE_vpred>): New.
	(vcond_mask_<mode><MVE_vpred>): New.
	* config/arm/vec-common.md (vec_cmp<mode><v_cmp_result>)
	(vec_cmpu<mode><mode, vcond_mask_<mode><v_cmp_result>): Move to ...
	* config/arm/neon.md (vec_cmp<mode><v_cmp_result>)
	(vec_cmpu<mode><mode, vcond_mask_<mode><v_cmp_result>): ... here
	and disable for MVE.
	* doc/sourcebuild.texi (arm_mve): Document new effective-target.

2022-02-22  Christophe Lyon  <christophe.lyon@arm.com>

	PR target/100757
	PR target/101325
	* config/arm/arm-builtins.cc (BINOP_PRED_UNONE_UNONE_QUALIFIERS)
	(BINOP_PRED_NONE_NONE_QUALIFIERS)
	(TERNOP_NONE_NONE_NONE_PRED_QUALIFIERS)
	(TERNOP_UNONE_UNONE_UNONE_PRED_QUALIFIERS): New.
	* config/arm/arm-protos.h (mve_bool_vec_to_const): New.
	* config/arm/arm.cc (arm_hard_regno_mode_ok): Handle new VxBI
	modes.
	(arm_mode_to_pred_mode): New.
	(arm_expand_vector_compare): Use the right VxBI mode instead of
	HI.
	(arm_expand_vcond): Likewise.
	(simd_valid_immediate): Handle MODE_VECTOR_BOOL.
	(mve_bool_vec_to_const): New.
	(neon_make_constant): Call mve_bool_vec_to_const when needed.
	* config/arm/arm_mve_builtins.def (vcmpneq_, vcmphiq_, vcmpcsq_)
	(vcmpltq_, vcmpleq_, vcmpgtq_, vcmpgeq_, vcmpeqq_, vcmpneq_f)
	(vcmpltq_f, vcmpleq_f, vcmpgtq_f, vcmpgeq_f, vcmpeqq_f, vpselq_u)
	(vpselq_s, vpselq_f): Use new predicated qualifiers.
	* config/arm/constraints.md (DB): New.
	* config/arm/iterators.md (MVE_7, MVE_7_HI): New mode iterators.
	(MVE_VPRED, MVE_vpred): New attribute iterators.
	* config/arm/mve.md (@mve_vcmp<mve_cmp_op>q_<mode>)
	(@mve_vcmp<mve_cmp_op>q_f<mode>, @mve_vpselq_<supf><mode>)
	(@mve_vpselq_f<mode>): Use MVE_VPRED instead of HI.
	(@mve_vpselq_<supf>v2di): Define separately.
	(mov<mode>): New expander for VxBI modes.
	* config/arm/vfp.md (thumb2_movhi_vfp, thumb2_movhi_fp16): Use
	MVE_7_HI iterator and add support for DB constraint.

2022-02-22  Christophe Lyon  <christophe.lyon@arm.com>
	    Richard Sandiford  <richard.sandiford@arm.com>

	PR target/100757
	PR target/101325
	* config/aarch64/aarch64-modes.def (VNx16BI, VNx8BI, VNx4BI,
	VNx2BI): Update definition.
	* config/arm/arm-builtins.cc (arm_init_simd_builtin_types): Add new
	simd types.
	(arm_init_builtin): Map predicate vectors arguments to HImode.
	(arm_expand_builtin_args): Move HImode predicate arguments to VxBI
	rtx. Move return value to HImode rtx.
	* config/arm/arm-builtins.h (arm_type_qualifiers): Add qualifier_predicate.
	* config/arm/arm-modes.def (B2I, B4I, V16BI, V8BI, V4BI): New modes.
	* config/arm/arm-simd-builtin-types.def (Pred1x16_t,
	Pred2x8_t,Pred4x4_t): New.
	* emit-rtl.cc (init_emit_once): Handle all boolean modes.
	* genmodes.cc (mode_data): Add boolean field.
	(blank_mode): Initialize it.
	(make_complex_modes): Fix handling of boolean modes.
	(make_vector_modes): Likewise.
	(VECTOR_BOOL_MODE): Use new COMPONENT parameter.
	(make_vector_bool_mode): Likewise.
	(BOOL_MODE): New.
	(make_bool_mode): New.
	(emit_insn_modes_h): Fix generation of boolean modes.
	(emit_class_narrowest_mode): Likewise.
	* machmode.def: (VECTOR_BOOL_MODE): Document new COMPONENT
	parameter.  Use new BOOL_MODE instead of FRACTIONAL_INT_MODE to
	define BImode.
	* rtx-vector-builder.cc (rtx_vector_builder::find_cached_value):
	Fix handling of constm1_rtx for VECTOR_BOOL.
	* simplify-rtx.cc (native_encode_rtx): Fix support for VECTOR_BOOL.
	(native_decode_vector_rtx): Likewise.
	(test_vector_ops_duplicate): Skip vec_merge test
	with vectors of booleans.
	* varasm.cc (output_constant_pool_2): Likewise.

2022-02-22  Christophe Lyon  <christophe.lyon@arm.com>

	* config/arm/mve.md (mve_vmvnq_n_<supf><mode>): Use V_elem mode
	for operand 1.

2022-02-22  Christophe Lyon  <christophe.lyon@arm.com>

	* config/arm/arm.cc (arm_class_likely_spilled_p): Handle VPR_REG.

2022-02-22  Christophe Lyon  <christophe.lyon@arm.com>

	* config/arm/arm.h (reg_class): Add GENERAL_AND_VPR_REGS.
	(REG_CLASS_NAMES): Likewise.
	(REG_CLASS_CONTENTS): Likewise.
	(CLASS_MAX_NREGS): Handle VPR.
	* config/arm/arm.cc (arm_hard_regno_nregs): Handle VPR.

2022-02-22  Tobias Burnus  <tobias@codesourcery.com>
	    Tom de Vries  <tdevries@suse.de>

	* config/nvptx/nvptx-c.cc (nvptx_cpu_cpp_builtins): Handle SM70.
	* config/nvptx/nvptx.cc (first_ptx_version_supporting_sm):
	Likewise.
	* config/nvptx/nvptx.opt (misa): Add sm_70 alias PTX_ISA_SM70.

2022-02-22  Tobias Burnus  <tobias@codesourcery.com>
	    Tom de Vries  <tdevries@suse.de>

	* config/nvptx/nvptx.opt (mptx): Add 6.0 alias PTX_VERSION_6_0.
	* doc/invoke.texi (-mptx): Update for new values and defaults.

2022-02-22  Tom de Vries  <tdevries@suse.de>

	* config/nvptx/nvptx.cc (gen_comment): New function.
	(workaround_uninit_method_1, workaround_uninit_method_2)
	(workaround_uninit_method_3): : Use gen_comment.
	* config/nvptx/nvptx.opt (mptx-comment): New option.

2022-02-22  Richard Biener  <rguenther@suse.de>

	* tree-vect-slp.cc (vect_build_slp_tree_2): Dump the def used
	for a splat.

2022-02-22  Roger Sayle  <roger@nextmovesoftware.com>
	    Richard Biener  <rguenther@suse.de>

	* fold-const.cc (ctor_single_nonzero_element): New function to
	return the single non-zero element of a (vector) constructor.
	* fold-const.h (ctor_single_nonzero_element): Prototype here.
	* match.pd (reduc (constructor@0)): Simplify reductions of a
	constructor containing a single non-zero element.
	(reduc (@0 op VECTOR_CST) ->  (reduc @0) op CONST): Simplify
	reductions of vector operations of the same operator with
	constant vector operands.

2022-02-22  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/104604
	* gimple-range-fold.cc (adjust_imagpart_expr, adjust_realpart_expr):
	Only check if gimple_assign_rhs1 is COMPLEX_CST if
	gimple_assign_rhs_code is COMPLEX_CST.

2022-02-22  Jakub Jelinek  <jakub@redhat.com>

	PR target/104612
	* config/i386/i386-expand.cc (ix86_expand_copysign): Call force_reg
	on input operands before calling lowpart_subreg on it.  For output
	operand, use a vmode pseudo as destination and then move its lowpart
	subreg into operands[0] if lowpart_subreg fails on dest.
	(ix86_expand_xorsign): Likewise.

2022-02-22  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/104582
	PR target/99881
	* config/i386/i386.cc (ix86_vector_costs::add_stmt_cost):
	Cost GPR to vector register moves for integer vector construction.

2022-02-22  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/104582
	* tree-vectorizer.h (stmt_info_for_cost::node): New field.
	(vector_costs::add_stmt_cost): Add SLP node parameter.
	(dump_stmt_cost): Likewise.
	(add_stmt_cost): Likewise, new overload and adjust.
	(add_stmt_costs): Adjust.
	(record_stmt_cost): New overload.
	* tree-vectorizer.cc (dump_stmt_cost): Dump the SLP node.
	(vector_costs::add_stmt_cost): Adjust.
	* tree-vect-loop.cc (vect_estimate_min_profitable_iters):
	Adjust.
	* tree-vect-slp.cc (vect_prologue_cost_for_slp): Record
	the SLP node for costing.
	(vectorizable_slp_permutation): Likewise.
	* tree-vect-stmts.cc (record_stmt_cost): Adjust and add
	new overloads.
	* config/i386/i386.cc (ix86_vector_costs::add_stmt_cost):
	Adjust.
	* config/aarch64/aarch64.cc (aarch64_vector_costs::add_stmt_cost):
	Adjust.
	* config/rs6000/rs6000.cc (rs6000_vector_costs::add_stmt_cost):
	Adjust.
	(rs6000_cost_data::adjust_vect_cost_per_loop): Likewise.

2022-02-22  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/104582
	* tree-vectorizer.h (add_stmt_cost): New overload.
	(record_stmt_cost): Likewise.
	* tree-vect-loop.cc (vect_compute_single_scalar_iteration_cost):
	Use add_stmt_costs.
	(vect_get_known_peeling_cost): Use new overloads.
	(vect_estimate_min_profitable_iters): Likewise.  Consistently
	use scalar_stmt for costing versioning checks.
	* tree-vect-stmts.cc (record_stmt_cost): New overload.

2022-02-22  Hongyu Wang  <hongyu.wang@intel.com>

	PR target/103069
	* config/i386/i386-expand.cc (ix86_expand_atomic_fetch_op_loop):
	Split atomic fetch and loop part.
	(ix86_expand_cmpxchg_loop): New expander for cmpxchg loop.
	* config/i386/i386-protos.h (ix86_expand_cmpxchg_loop): New
	prototype.
	* config/i386/sync.md (atomic_compare_and_swap<mode>): Call new
	expander under TARGET_RELAX_CMPXCHG_LOOP.
	(atomic_compare_and_swap<mode>): Likewise for doubleword modes.

2022-02-21  Dan Li  <ashimida@linux.alibaba.com>

	* config/aarch64/aarch64.cc (SLOT_REQUIRED):
	Change wb_candidate[12] to wb_push_candidate[12].
	(aarch64_layout_frame): Likewise, and
	change callee_adjust when scs is enabled.
	(aarch64_save_callee_saves):
	Change wb_candidate[12] to wb_push_candidate[12].
	(aarch64_restore_callee_saves):
	Change wb_candidate[12] to wb_pop_candidate[12].
	(aarch64_get_separate_components):
	Change wb_candidate[12] to wb_push_candidate[12].
	(aarch64_expand_prologue): Push x30 onto SCS before it's
	pushed onto stack.
	(aarch64_expand_epilogue): Pop x30 frome SCS, while
	preventing it from being popped from the regular stack again.
	(aarch64_override_options_internal): Add SCS compile option check.
	(TARGET_HAVE_SHADOW_CALL_STACK): New hook.
	* config/aarch64/aarch64.h (struct GTY): Add is_scs_enabled,
	wb_pop_candidate[12], and rename wb_candidate[12] to
	wb_push_candidate[12].
	* config/aarch64/aarch64.md (scs_push): New template.
	(scs_pop): Likewise.
	* doc/invoke.texi: Document -fsanitize=shadow-call-stack.
	* doc/tm.texi: Regenerate.
	* doc/tm.texi.in: Add hook have_shadow_call_stack.
	* flag-types.h (enum sanitize_code):
	Add SANITIZE_SHADOW_CALL_STACK.
	* opts.cc (parse_sanitizer_options): Add shadow-call-stack
	and exclude SANITIZE_SHADOW_CALL_STACK.
	* target.def: New hook.
	* toplev.cc (process_options): Add SCS compile option check.
	* ubsan.cc (ubsan_expand_null_ifn): Enum type conversion.

2022-02-21  Tom de Vries  <tdevries@suse.de>

	PR target/104440
	* config/nvptx/nvptx.cc (workaround_uninit_method_1)
	(workaround_uninit_method_2, workaround_uninit_method_3)
	(workaround_uninit): New function.
	(nvptx_reorg): Use workaround_uninit.
	* config/nvptx/nvptx.opt (minit-regs): New option.

2022-02-21  Andre Vieira  <andre.simoesdiasvieira@arm.com>

	PR rtl-optimization/104498
	* alias.cc (compare_base_symbol_refs): Correct distance computation
	when swapping x and y.

2022-02-21  Andrew Pinski  <apinski@marvell.com>

	PR c/104506
	* tree-ssa.cc (tree_ssa_useless_type_conversion):
	Check the inner type before calling useless_type_conversion_p.

2022-02-19  Tom de Vries  <tdevries@suse.de>

	* config/nvptx/nvptx.cc (nvptx_reorg_uniform_simt): Handle SET insn.
	* config/nvptx/nvptx.md
	(define_insn "nvptx_atomic_store<mode>"): Rename to ...
	(define_insn "nvptx_atomic_store_sm70<mode>"): This.
	(define_insn "nvptx_atomic_store<mode>"): New define_insn.
	(define_expand "atomic_store<mode>"): Handle rename.  Use
	nvptx_atomic_store instead of atomic_exchange.

2022-02-19  Tom de Vries  <tdevries@suse.de>

	* config/nvptx/nvptx.cc (nvptx_reorg_uniform_simt): Handle all
	insns with atomic attribute.  Assert that all handled insns are
	PARALLELs.
	* config/nvptx/nvptx.md (define_insn "nvptx_atomic_store<mode>"):
	Set atomic attribute to false.

2022-02-19  Tom de Vries  <tdevries@suse.de>

	* config/nvptx/nvptx.cc (nvptx_unisimt_handle_set): Change return
	type to bool.
	(nvptx_reorg_uniform_simt): Insert nvptx_uniform_warp_check or
	nvptx_warpsync, if necessary.

2022-02-19  Jakub Jelinek  <jakub@redhat.com>

	PR sanitizer/102656
	* asan.cc (instrument_derefs): If inner is a RESULT_DECL and access is
	known to be within bounds, treat it like automatic variables.
	If instrumenting access and inner is {VAR,PARM,RESULT}_DECL from
	current function and !TREE_STATIC which is not TREE_ADDRESSABLE, mark
	it addressable.

2022-02-18  Pat Haugen  <pthaugen@linux.ibm.com>

	* config/rs6000/rs6000.opt (mpower10-fusion): Mark Undocumented.
	(mpower10-fusion-ld-cmpi, mpower10-fusion-2logical,
	mpower10-fusion-logical-add, mpower10-fusion-add-logical,
	mpower10-fusion-2add, mpower10-fusion-2store): Remove.
	* config/rs6000/rs6000-cpus.def (ISA_3_1_MASKS_SERVER,
	OTHER_P9_VECTOR_MASKS): Remove Power10 fusion sub-options.
	* config/rs6000/rs6000.cc (rs6000_option_override_internal,
	power10_sched_reorder): Likewise.
	* config/rs6000/genfusion.pl (gen_ld_cmpi_p10, gen_logical_addsubf,
	gen_addadd): Likewise
	* config/rs6000/fusion.md: Regenerate.

2022-02-18  Jakub Jelinek  <jakub@redhat.com>

	PR target/104257
	PR target/104598
	* config/rs6000/mm_malloc.h (_mm_malloc): Call posix_memalign
	rather than __posix_memalign.

2022-02-18  Richard Biener  <rguenther@suse.de>

	PR target/104581
	* config/i386/i386.cc (ix86_avx_u128_mode_source): Remove.
	(ix86_avx_u128_mode_needed): Return AVX_U128_DIRTY instead
	of calling ix86_avx_u128_mode_source which would eventually
	have returned AVX_U128_ANY in some very special case.

2022-02-18  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/96881
	* tree-ssa-dce.cc (mark_stmt_if_obviously_necessary): Comment
	CLOBBER handling.
	(control_parents_preserved_p): New function.
	(eliminate_unnecessary_stmts): Check that we preserved control
	parents before retaining a CLOBBER.
	(perform_tree_ssa_dce): Pass down aggressive flag
	to eliminate_unnecessary_stmts.

2022-02-17  Jason Merrill  <jason@redhat.com>

	* tree.cc (warn_deprecated_use): Look for TYPE_STUB_DECL
	on TYPE_MAIN_VARIANT.

2022-02-17  Paul A. Clarke  <pc@us.ibm.com>

	PR target/104257
	* config/rs6000/bmi2intrin.h: Uglify local variables.
	* config/rs6000/emmintrin.h: Likewise.
	* config/rs6000/mm_malloc.h: Likewise.
	* config/rs6000/mmintrin.h: Likewise.
	* config/rs6000/pmmintrin.h: Likewise.
	* config/rs6000/smmintrin.h: Likewise.
	* config/rs6000/tmmintrin.h: Likewise.
	* config/rs6000/xmmintrin.h: Likewise.

2022-02-17  Robin Dapp  <rdapp@linux.ibm.com>

	PR target/104335
	* config/rs6000/rs6000.cc (rs6000_emit_int_cmove): Return false
	if the expected comparison's first operand is of mode MODE_CC.

2022-02-17  Vladimir N. Makarov  <vmakarov@redhat.com>

	PR rtl-optimization/104447
	* lra-constraints.cc (spill_hard_reg_in_range): Initiate ignore
	hard reg set by lra_no_alloc_regs.

2022-02-17  liuhongt  <hongtao.liu@intel.com>

	PR tree-optimization/104551
	PR tree-optimization/103771
	* match.pd (cond_expr_convert_p): Add types_match check when
	convert is extension.
	* tree-vect-patterns.cc
	(gimple_cond_expr_convert_p): Adjust comments.
	(vect_recog_cond_expr_convert_pattern): Ditto.

2022-02-17  Jakub Jelinek  <jakub@redhat.com>

	PR debug/104557
	* valtrack.cc (debug_lowpart_subreg): Don't call gen_rtx_raw_SUBREG
	if expr has VOIDmode.

2022-02-17  liuhongt  <hongtao.liu@intel.com>

	* config/i386/cpuid.h (bit_MPX): Removed.
	(bit_BNDREGS): Ditto.
	(bit_BNDCSR): Ditto.

2022-02-17  Michael Meissner  <meissner@the-meissners.org>

	PR target/99708
	* config/rs6000/rs6000-c.cc (rs6000_cpu_cpp_builtins): Define
	__SIZEOF_IBM128__ if the IBM 128-bit long double type is created.
	Define __SIZEOF_FLOAT128__ if the IEEE 128-bit floating point type
	is created.

2022-02-16  Andrew MacLeod  <amacleod@redhat.com>

	* gimple-range-gori.cc (gori_compute::condexpr_adjust): Use
	range_compatible_p instead of direct type comparison.

2022-02-16  Jakub Jelinek  <jakub@redhat.com>

	PR rtl-optimization/104544
	* combine.cc (try_combine): When looking for insn whose links
	should be updated from i3 to i2, don't stop on debug insns, instead
	skip over them.

2022-02-16  Richard Sandiford  <richard.sandiford@arm.com>

	PR target/100056
	* config/aarch64/iterators.md (LOGICAL_OR_PLUS): New iterator.
	* config/aarch64/aarch64.md: Extend the PR100056 patterns
	to handle plus in the same way as ior, if the operands have
	no set bits in common.

2022-02-15  Andrew MacLeod  <amacleod@redhat.com>

	PR tree-optimization/104526
	* gimple-range-fold.cc (fold_using_range::range_of_cond_expr): Call
	new routine.
	* gimple-range-gori.cc (range_def_chain::get_def_chain): Force a build
	of dependency chain if there isn't one.
	(gori_compute::condexpr_adjust): New.
	* gimple-range-gori.h (class gori_compute): New prototype.

2022-02-15  Richard Sandiford  <richard.sandiford@arm.com>

	PR target/100874
	* config/aarch64/aarch64-protos.h (aarch64_maxmin_plus_const):
	Declare.
	* config/aarch64/aarch64.cc (aarch64_maxmin_plus_const): New function.
	* config/aarch64/aarch64.md (*aarch64_minmax_plus): New pattern.

2022-02-15  Richard Sandiford  <richard.sandiford@arm.com>

	* tree-vectorizer.h (vect_scalar_ops_slice): New struct.
	(vect_scalar_ops_slice_hash): Likewise.
	(vect_scalar_ops_slice::op): New function.
	* tree-vect-slp.cc (vect_scalar_ops_slice::all_same_p): New function.
	(vect_scalar_ops_slice_hash::hash): Likewise.
	(vect_scalar_ops_slice_hash::equal): Likewise.
	(vect_prologue_cost_for_slp): Check for duplicate vectors.
	* config/aarch64/aarch64.cc
	(aarch64_vector_costs::m_stp_sequence_cost): New member variable.
	(aarch64_aligned_constant_offset_p): New function.
	(aarch64_stp_sequence_cost): Likewise.
	(aarch64_vector_costs::add_stmt_cost): Handle new STP heuristic.
	(aarch64_vector_costs::finish_cost): Likewise.

2022-02-15  Richard Sandiford  <richard.sandiford@arm.com>

	* tree-vect-slp.cc (vect_bb_vectorization_profitable_p): Fix
	use after free.

2022-02-15  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/104543
	* gimple-loop-jam.cc (unroll_jam_possible_p): Check outer loop exits
	come after the inner loop.

2022-02-15  Jakub Jelinek  <jakub@redhat.com>

	PR target/104536
	* config/i386/host-cygwin.cc (cygwin_gt_pch_get_address): Use
	cannot instead of can%'t in diagnostics.  Formatting fixes.

2022-02-15  Jakub Jelinek  <jakub@redhat.com>

	PR middle-end/104522
	* fold-const.h (native_interpret_real): Declare.
	* fold-const.cc (native_interpret_real): No longer static.  Don't
	perform MODE_COMPOSITE_P verification here.
	(native_interpret_expr) <case REAL_TYPE>: But perform it here instead
	for all modes.
	* gimple-fold.cc (clear_padding_type): Call native_interpret_real
	instead of native_interpret_expr.
	* simplify-rtx.cc (simplify_immed_subreg): Perform the native_encode_rtx
	and comparison verification for all FLOAT_MODE_P modes, not just
	MODE_COMPOSITE_P.

2022-02-15  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/104519
	* fold-const.cc (multiple_of_p): Remove never true condition.
	* tree-ssa-loop-niter.cc (number_of_iterations_ne): Use
	the appropriate types for determining whether the difference
	of final and base is a multiple of the step.

2022-02-15  Jakub Jelinek  <jakub@redhat.com>

	PR debug/104517
	* omp-low.cc (task_cpyfns): New variable.
	(delete_omp_context): Don't call finalize_task_copyfn from here.
	(create_task_copyfn): Push task_stmt into task_cpyfns.
	(execute_lower_omp): Call finalize_task_copyfn here on entries from
	task_cpyfns vector and release the vector.

2022-02-14  Martin Sebor  <msebor@redhat.com>

	PR middle-end/104355
	* doc/invoke.texi (-Warray-bounds): Update documentation.

2022-02-14  Michael Meissner  <meissner@the-meissners.org>

	PR target/104253
	* config/rs6000/rs6000.cc (init_float128_ibm): Update the
	conversion functions used to convert IFmode types.

2022-02-14  Andrew Stubbs  <ams@codesourcery.com>

	* config/gcn/gcn.cc (gcn_expand_reduc_scalar): Use force_reg.

2022-02-14  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/104528
	* tree-ssa.h (find_released_ssa_name): Declare.
	* tree-ssa.cc (find_released_ssa_name): Export.
	* cfgloop.cc (verify_loop_structure): Look for released
	SSA names in loops nb_iterations.
	* tree-ssa-dse.cc (pass_dse::execute): Release number of iteration
	estimates.

2022-02-14  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/104511
	* tree-ssa-forwprop.cc (simplify_vector_constructor): Avoid
	touching DFP <-> FP conversions.

2022-02-14  Richard Biener  <rguenther@suse.de>

	PR middle-end/104497
	* gimplify.cc (gimplify_compound_lval): Make sure the
	base is a non-register if needed and possible.

2022-02-13  liuhongt  <hongtao.liu@intel.com>

	PR target/103771
	* match.pd (cond_expr_convert_p): New match.
	* tree-vect-patterns.cc (gimple_cond_expr_convert_p): Declare.
	(vect_recog_cond_expr_convert_pattern): New.

2022-02-12  Jakub Jelinek  <jakub@redhat.com>

	PR sanitizer/104449
	* asan.cc: Include tree-eh.h.
	(handle_builtin_alloca): Handle the case when __builtin_alloca or
	__builtin_alloca_with_align can throw.

2022-02-12  Jakub Jelinek  <jakub@redhat.com>

	PR target/104502
	* config/i386/i386.md (cvtsd2ss splitter): If operands[1] is xmm16+
	and AVX512VL isn't available, move operands[1] to operands[0] first.

2022-02-12  Uroš Bizjak  <ubizjak@gmail.com>

	PR target/79754
	* config/i386/i386.cc (type_natural_mode):
	Skip decimal float vector modes.

2022-02-11  Iain Sandoe  <iain@sandoe.co.uk>
	    Vladimir Makarov  <vmakarov@redhat.com>

	PR target/104117
	* config/rs6000/rs6000.cc (darwin_rs6000_legitimate_lo_sum_const_p):
	Check for UNSPEC_MACHOPIC_OFFSET wrappers on symbolic addresses when
	emitting PIC code.
	(legitimate_lo_sum_address_p): Likewise.
	* lra-constraints.cc (process_address_1): Do not attempt to emit a reg
	load from an invalid lo_sum address.

2022-02-11  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/104499
	* match.pd ((X & Y) CMP 0 -> X CMP2 ~Y): Use view_convert instead
	of convert.

2022-02-11  Jakub Jelinek  <jakub@redhat.com>

	* tree.cc (build_common_builtin_nodes): Fix up formatting in
	__builtin_clear_padding decl creation.
	* gimplify.cc (gimple_add_padding_init_for_auto_var): Encode
	for_auto_init in the value of 2nd BUILT_IN_CLEAR_PADDING
	argument rather than in 3rd argument.
	(gimplify_call_expr): Likewise.  Fix up comment formatting.
	* gimple-fold.cc (gimple_fold_builtin_clear_padding): Expect
	2 arguments instead of 3, take for_auto_init from the value
	of 2nd argument.

2022-02-11  Vladimir N. Makarov  <vmakarov@redhat.com>

	PR rtl-optimization/104400
	* lra-constraints.cc (process_alt_operands): Don't make union of
	this_alternative_exclude_start_hard_regs when reg class in insn
	alternative covers other reg classes in the same alternative.

2022-02-11  Jakub Jelinek  <jakub@redhat.com>

	PR middle-end/104446
	* combine.cc (subst): Don't substitute CONST_INTs into RTX_AUTOINC
	operands.

2022-02-11  Richard Biener  <rguenther@suse.de>

	PR middle-end/104496
	* internal-fn.cc (vectorized_internal_fn_supported_p):
	Bail out for integer mode vector types.

2022-02-11  Jakub Jelinek  <jakub@redhat.com>

	PR rtl-optimization/104459
	* df-scan.cc (df_insn_change_bb): Don't call df_set_bb_dirty when
	moving DEBUG_INSNs between bbs.

2022-02-11  liuhongt  <hongtao.liu@intel.com>

	PR tree-optimization/104479
	* match.pd (uncond_op + vec_cond -> cond_op): Add single_use
	for the dest of uncond_op.

2022-02-11  Tom de Vries  <tdevries@suse.de>

	PR target/104456
	* config/nvptx/nvptx.cc (prevent_branch_around_nothing): Handle asm
	insn.

2022-02-10  Qing Zhao  <qing.zhao@oracle.com>

	PR middle-end/100775
	* function.cc (gen_call_used_regs_seq): Call
	df_update_exit_block_uses when updating df.

2022-02-10  Uroš Bizjak  <ubizjak@gmail.com>

	PR target/104469
	* config/i386/sse.md (vec_unpacks_float_lo_v4si):
	Change operand 1 constraint to register_operand.

2022-02-10  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/104373
	* tree-ssa-sccvn.h (do_rpo_vn): New export exposing the
	walk kind.
	* tree-ssa-sccvn.cc (do_rpo_vn): Export, get the default
	walk kind as argument.
	(run_rpo_vn): Adjust.
	(pass_fre::execute): Likewise.
	* tree-ssa-uninit.cc (warn_uninitialized_vars): Skip
	blocks not reachable.
	(execute_late_warn_uninitialized): Mark all edges as
	executable.
	(execute_early_warn_uninitialized): Use VN to compute
	executable edges.
	(pass_data_early_warn_uninitialized): Enable a dump file,
	change dump name to warn_uninit.

2022-02-10  Richard Biener  <rguenther@suse.de>

	PR middle-end/104467
	* match.pd (vector extract simplification): Multiply the
	number of CTOR elements with the number of element elements.

2022-02-10  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/104466
	* tree-ssa-alias.cc (refs_may_alias_p_2): Use rbase1/rbase2
	for the MR_DEPENDENCE checks as intended.

2022-02-10  Tom de Vries  <tdevries@suse.de>

	* config/nvptx/nvptx.md (define_insn "nvptx_atomic_store<mode>"): New
	define_insn.
	(define_expand "atomic_store<mode>"): Use nvptx_atomic_store<mode> for
	TARGET_SM70.
	(define_c_enum "unspecv"): Add UNSPECV_ST.

2022-02-10  Tom de Vries  <tdevries@suse.de>

	* config/nvptx/nvptx-protos.h (nvptx_mem_maybe_shared_p): Declare.
	* config/nvptx/nvptx.cc (nvptx_mem_data_area): New static function.
	(nvptx_mem_maybe_shared_p): New function.
	* config/nvptx/nvptx.md (define_expand "atomic_store<mode>"): New
	define_expand.

2022-02-10  Tom de Vries  <tdevries@suse.de>

	PR target/97005
	* config/nvptx/nvptx.md (define_insn "sub<mode>3"): Workaround
	driver JIT bug by using sub.s16 instead of sub.u16.

2022-02-10  Roger Sayle  <roger@nextmovesoftware.com>

	* config/nvptx/nvptx.md (copysign<mode>3): Allow immediate
	floating point constants as operands 1 and/or 2.

2022-02-10  Roger Sayle  <roger@nextmovesoftware.com>

	PR target/104345
	* config/nvptx/nvptx.md (sel_true<mode>): Fix indentation.
	(sel_false<mode>): Likewise.
	(define_code_iterator eqne): New code iterator for EQ and NE.
	(*selp<mode>_neg_<code>): New define_insn_and_split to optimize
	the negation of a selp instruction.
	(*selp<mode>_not_<code>): New define_insn_and_split to optimize
	the bitwise not of a selp instruction.
	(*setcc_int<mode>): Use set instruction for neg:SI of a selp.

2022-02-10  Roger Sayle  <roger@nextmovesoftware.com>

	* config/nvptx/nvptx.md (any_logic): Move code iterator earlier
	in machine description.
	(logic): Move code attribute earlier in machine description.
	(ilogic): New code attribute, like logic but "ior" for IOR.
	(and<mode>3, ior<mode>3, xor<mode>3): Delete. Replace with...
	(<ilogic><mode>3): New define_insn for HSDIM logic operations.
	(<ilogic>bi3): New define_insn for BI mode logic operations.
	(define_split): Lower logic operations from integer modes to
	BI mode predicate operations.

2022-02-10  Roger Sayle  <roger@nextmovesoftware.com>

	* config/nvptx/nvptx.md (UNSPEC_ISINF): New UNSPEC.
	(one_cmplbi2): New define_insn for not.pred.
	(mulditi3): New define_expand for signed widening multiply.
	(umulditi3): New define_expand for unsigned widening multiply.
	(smul<mode>3_highpart): New define_insn for signed highpart mult.
	(umul<mode>3_highpart): New define_insn for unsigned highpart mult.
	(*smulhi3_highpart_2): Renamed from smulhi3_highpart.
	(*smulsi3_highpart_2): Renamed from smulsi3_highpart.
	(*umulhi3_highpart_2): Renamed from umulhi3_highpart.
	(*umulsi3_highpart_2): Renamed from umulsi3_highpart.
	(*setcc<mode>_from_not_bi): New define_insn.
	(*setcc_isinf<mode>): New define_insn for testp.infinite.
	(isinf<mode>2): New define_expand.

2022-02-10  Roger Sayle  <roger@nextmovesoftware.com>

	* config/nvptx/nvptx.md (cmp<mode>): Renamed from *cmp<mode>.
	(setcc<mode>_from_bi): Additionally support QImode.
	(extendbi<mode>2): Additionally support QImode.
	(zero_extendbi<mode>2): Additionally support QImode.
	(any_sbinary, any_ubinary, any_sunary, any_uunary): New code
	iterators for signed and unsigned, binary and unary operations.
	(<sbinary>qi3, <ubinary>qi3, <sunary>qi2, <uunary>qi2): New
	expanders to perform QImode operations using SImode instructions.
	(cstoreqi4): New define_expand.
	(*ext_truncsi2_qi): New define_insn.
	(*zext_truncsi2_qi): New define_insn.

2022-02-10  Roger Sayle  <roger@nextmovesoftware.com>

	* config/nvptx/nvptx.md (*cmpf): New define_insn.
	(cstorehf4): New define_expand.
	(fmahf4): New define_insn.
	(neghf2): New define_insn.
	(abshf2): New define_insn.

2022-02-10  Gerald Pfeifer  <gerald@pfeifer.com>

	* doc/install.texi (Specific): Change the www.bitwizard.nl
	reference to use https.

2022-02-10  Marcel Vollweiler  <marcel@codesourcery.com>

	* gimplify.cc (gimplify_scan_omp_clauses): Added cases for
	OMP_CLAUSE_HAS_DEVICE_ADDR
	and handle array sections.
	(gimplify_adjust_omp_clauses): Added OMP_CLAUSE_HAS_DEVICE_ADDR case.
	* omp-low.cc (scan_sharing_clauses): Handle OMP_CLAUSE_HAS_DEVICE_ADDR.
	(lower_omp_target): Same.
	* tree-core.h (enum omp_clause_code): Same.
	* tree-nested.cc (convert_nonlocal_omp_clauses): Same.
	(convert_local_omp_clauses): Same.
	* tree-pretty-print.cc (dump_omp_clause): Same.
	* tree.cc: Same.

2022-02-10  Eugene Rozenfeld  <erozen@microsoft.com>

	* auto-profile.cc (afdo_indirect_call): Don't attempt to promote indirect calls
	that will result in direct recursive calls.

2022-02-10  Andrew Pinski  <apinski@marvell.com>

	PR target/104474
	* config/aarch64/aarch64.cc
	(aarch64_sve_expand_vector_init_handle_trailing_constants):
	Use CONST0_RTX instead of const0_rtx for the non-constant elements.

2022-02-09  Uroš Bizjak  <ubizjak@gmail.com>

	PR target/104462
	* common/config/i386/i386-common.cc (OPTION_MASK_ISA2_XSAVE_UNSET):
	Also include OPTION_MASK_ISA2_AVX2_UNSET.

2022-02-09  Uroš Bizjak  <ubizjak@gmail.com>

	PR target/104458
	* config/i386/i386-expand.cc (ix86_split_idivmod):
	Force operands[2] and operands[3] into a register..

2022-02-09  Jeff Law  <jeffreyalaw@gmail.com>

	PR target/97040
	* config/v850/v850.md (*v850_fnmasf4): Renamed from fnmasf4.
	(*v850_fnmssf4): Renamed from fnmssf4

2022-02-09  Ian Lance Taylor  <iant@golang.org>

	* godump.cc (go_force_record_alignment): Really name the alignment
	field "_" (complete 2021-12-29 change).

2022-02-09  Bill Schmidt  <wschmidt@linux.ibm.com>

	* config/rs6000/rs6000-builtins.def (VREPLACE_UN_UV2DI): Change
	function prototype.
	(VREPLACE_UN_UV4SI): Likewise.
	(VREPLACE_UN_V2DF): Likewise.
	(VREPLACE_UN_V2DI): Likewise.
	(VREPLACE_UN_V4SF): Likewise.
	(VREPLACE_UN_V4SI): Likewise.
	* config/rs6000/rs6000-overload.def (VEC_REPLACE_UN): Change all
	function prototypes.
	* config/rs6000/vsx.md (vreplace_un_<mode>): Remove define_expand.
	(vreplace_un_<mode>): New define_insn.

2022-02-09  Richard Sandiford  <richard.sandiford@arm.com>

	* config/aarch64/iterators.md (VDCSIF): New mode iterator.
	(VDBL): Handle SF.
	(single_wx, single_type, single_dtype, dblq): New mode attributes.
	* config/aarch64/aarch64-simd.md (load_pair_lanes<mode>): Extend
	from VDC to VDCSIF.
	(store_pair_lanes<mode>): Likewise.
	(*aarch64_combine_internal<mode>): Likewise.
	(*aarch64_combine_internal_be<mode>): Likewise.
	(*aarch64_combinez<mode>): Likewise.
	(*aarch64_combinez_be<mode>): Likewise.
	* config/aarch64/aarch64.cc (aarch64_classify_address): Handle
	8-byte modes for ADDR_QUERY_LDP_STP_N.
	(aarch64_print_operand): Likewise for %y.

2022-02-09  Richard Sandiford  <richard.sandiford@arm.com>

	* config/aarch64/aarch64-simd.md (@aarch64_split_simd_mov<mode>):
	Use aarch64_combine instead of move_lo/hi_quad.  Tabify.
	(move_lo_quad_<mode>, aarch64_simd_move_hi_quad_<mode>): Delete.
	(aarch64_simd_move_hi_quad_be_<mode>, move_hi_quad_<mode>): Delete.
	(vec_pack_trunc_<mode>): Take general_operand elements and use
	aarch64_combine rather than move_lo/hi_quad to combine them.
	(vec_pack_trunc_df): Likewise.

2022-02-09  Richard Sandiford  <richard.sandiford@arm.com>

	* config/aarch64/aarch64-protos.h (aarch64_split_simd_combine):
	Delete.
	* config/aarch64/aarch64-simd.md (@aarch64_combinez<mode>): Rename
	to...
	(*aarch64_combinez<mode>): ...this.
	(@aarch64_combinez_be<mode>): Rename to...
	(*aarch64_combinez_be<mode>): ...this.
	(@aarch64_vec_concat<mode>): New expander.
	(aarch64_combine<mode>): Use it.
	(@aarch64_simd_combine<mode>): Delete.
	* config/aarch64/aarch64.cc (aarch64_split_simd_combine): Delete.
	(aarch64_expand_vector_init): Use aarch64_vec_concat.

2022-02-09  Richard Sandiford  <richard.sandiford@arm.com>

	* config/aarch64/predicates.md (aarch64_reg_or_mem_pair_operand):
	New predicate.
	* config/aarch64/aarch64-simd.md (*aarch64_combine_internal<mode>)
	(*aarch64_combine_internal_be<mode>): New patterns.

2022-02-09  Richard Sandiford  <richard.sandiford@arm.com>

	* config/aarch64/aarch64-simd.md (move_lo_quad_internal_<mode>)
	(move_lo_quad_internal_be_<mode>): Delete.
	(move_lo_quad_<mode>): Use aarch64_combine<Vhalf> instead of the above.

2022-02-09  Richard Sandiford  <richard.sandiford@arm.com>

	* config/aarch64/aarch64-protos.h (aarch64_mergeable_load_pair_p):
	Declare.
	* config/aarch64/aarch64-simd.md (load_pair_lanes<mode>): Use
	aarch64_mergeable_load_pair_p instead of inline check.
	* config/aarch64/aarch64.cc (aarch64_expand_vector_init): Likewise.
	(aarch64_check_consecutive_mems): Allow the reversed parameter
	to be null.
	(aarch64_mergeable_load_pair_p): New function.

2022-02-09  Richard Sandiford  <richard.sandiford@arm.com>

	* config/aarch64/aarch64-simd.md (vec_set<mode>): Allow the
	element to be an aarch64_simd_nonimmediate_operand.

2022-02-09  Richard Sandiford  <richard.sandiford@arm.com>

	* config/aarch64/aarch64-simd.md (aarch64_simd_vec_set<mode>): Use
	aarch64_simd_nonimmediate_operand instead of
	aarch64_simd_general_operand.
	(@aarch64_combinez<mode>): Use nonimmediate_operand instead of
	general_operand.
	(@aarch64_combinez_be<mode>): Likewise.

2022-02-09  Richard Biener  <rguenther@suse.de>

	PR middle-end/104464
	* gimple-isel.cc (gimple_expand_vec_cond_expr): Postpone
	throwing check to after unproblematic replacement.

2022-02-09  Roger Sayle  <roger@nextmovesoftware.com>

	PR tree-optimization/104420
	* match.pd (mult @0 real_zerop): Tweak conditions for constant
	folding X*0.0 (or X*-0.0) to HONOR_SIGNED_ZEROS when appropriate.

2022-02-09  Jakub Jelinek  <jakub@redhat.com>

	PR debug/104407
	* dwarf2out.cc (mangle_referenced_decls): New function.
	(tree_add_const_value_attribute): Don't call rtl_for_decl_init if
	early_dwarf.  Instead walk the initializer and try to mangle vars or
	functions referenced from it.

2022-02-09  Andrew MacLeod  <amacleod@redhat.com>

	PR tree-optimization/104288
	* gimple-range-cache.cc (non_null_ref::set_nonnull): New.
	(non_null_ref::adjust_range): Move to header.
	(ranger_cache::range_of_def): Don't check non-null.
	(ranger_cache::entry_range): Don't check non-null.
	(ranger_cache::range_on_edge): Check for nonnull on normal edges.
	(ranger_cache::update_to_nonnull): New.
	(non_null_loadstore): New.
	(ranger_cache::block_apply_nonnull): New.
	* gimple-range-cache.h (class non_null_ref): Update prototypes.
	(non_null_ref::adjust_range): Move to here and inline.
	(class ranger_cache): Update prototypes.
	* gimple-range-path.cc (path_range_query::range_defined_in_block): Do
	not search dominators.
	(path_range_query::adjust_for_non_null_uses): Ditto.
	* gimple-range.cc (gimple_ranger::range_of_expr): Check on-entry for
	def overrides.  Do not check nonnull.
	(gimple_ranger::range_on_entry): Check dominators for nonnull.
	(gimple_ranger::range_on_edge): Check for nonnull on normal edges..
	(gimple_ranger::register_side_effects): New.
	* gimple-range.h (gimple_ranger::register_side_effects): New.
	* tree-vrp.cc (rvrp_folder::fold_stmt): Call register_side_effects.

2022-02-09  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/104445
	PR tree-optimization/102832
	* optabs-query.h (can_vec_extract): New.
	* optabs-query.cc (can_vec_extract): Likewise.
	* tree-vect-loop.cc (vect_find_reusable_accumulator): Check
	we can extract a hi/lo part from the larger vector, rework
	check iteration from larger to smaller sizes.

2022-02-09  H.J. Lu  <hjl.tools@gmail.com>

	PR target/35513
	PR target/100593
	* config/i386/gnu-property.cc: Include "i386-protos.h".
	(file_end_indicate_exec_stack_and_gnu_property): Generate
	a GNU_PROPERTY_1_NEEDED note for -mno-direct-extern-access or
	nodirect_extern_access attribute.
	* config/i386/i386-options.cc
	(handle_nodirect_extern_access_attribute): New function.
	(ix86_attribute_table): Add nodirect_extern_access attribute.
	* config/i386/i386-protos.h (ix86_force_load_from_GOT_p): Add a
	bool argument.
	(ix86_has_no_direct_extern_access): New.
	* config/i386/i386.cc (ix86_has_no_direct_extern_access): New.
	(ix86_force_load_from_GOT_p): Add a bool argument to indicate
	call operand.  Force non-call load from GOT for
	-mno-direct-extern-access or nodirect_extern_access attribute.
	(legitimate_pic_address_disp_p): Avoid copy relocation in PIE
	for -mno-direct-extern-access or nodirect_extern_access attribute.
	(ix86_print_operand): Pass true to ix86_force_load_from_GOT_p
	for call operand.
	(asm_preferred_eh_data_format): Use PC-relative format for
	-mno-direct-extern-access to avoid copy relocation.  Check
	ptr_mode instead of TARGET_64BIT when selecting DW_EH_PE_sdata4.
	(ix86_binds_local_p): Set ix86_has_no_direct_extern_access to
	true for -mno-direct-extern-access or nodirect_extern_access
	attribute.  Don't treat protected data as extern and avoid copy
	relocation on common symbol with -mno-direct-extern-access or
	nodirect_extern_access attribute.
	(ix86_reloc_rw_mask): New to avoid copy relocation for
	-mno-direct-extern-access.
	(TARGET_ASM_RELOC_RW_MASK): New.
	* config/i386/i386.opt: Add -mdirect-extern-access.
	* doc/extend.texi: Document nodirect_extern_access attribute.
	* doc/invoke.texi: Document -m[no-]direct-extern-access.

2022-02-09  H.J. Lu  <hjl.tools@gmail.com>

	PR target/104441
	* config/i386/i386.cc (ix86_avx_u128_mode_source): New function.
	(ix86_avx_u128_mode_needed): Return AVX_U128_ANY for debug INSN.
	Call ix86_avx_u128_mode_source to check mode for each component
	of source operand.

2022-02-09  liuhongt  <hongtao.liu@intel.com>

	PR target/104451
	* config/i386/sse.md (<insn><mode>3): lowpart_subreg
	operands[2] from SImode to QImode.

2022-02-09  Richard Biener  <rguenther@suse.de>

	PR middle-end/104450
	* gimple-isel.cc: Pass cfun around.
	(+gimple_expand_vec_cond_expr): Do not combine a throwing
	comparison with the select.

2022-02-09  Richard Biener  <rguenther@suse.de>

	PR target/104453
	* config/i386/i386.cc (ix86_gimple_fold_builtin): Guard shift
	folding for NULL LHS.

2022-02-08  Robin Dapp  <rdapp@linux.ibm.com>

	PR rtl-optimization/104198
	PR rtl-optimization/104153
	* ifcvt.cc (noce_convert_multiple_sets_1): Copy rtx instead of
	using it directly.  Rework comparison handling and always
	perform a second pass.

2022-02-08  Jakub Jelinek  <jakub@redhat.com>

	PR target/102140
	* config/rs6000/rs6000.cc (vspltis_shifted): Return false also if
	split1 pass has finished already.

2022-02-08  Bill Schmidt  <wschmidt@linux.ibm.com>

	* config/rs6000/rs6000-builtins.def (VMSUMCUD): New.
	* config/rs6000/rs6000-overload.def (VEC_MSUMC): New.
	* config/rs6000/vsx.md (UNSPEC_VMSUMCUD): New constant.
	(vmsumcud): New define_insn.

2022-02-08  Tom de Vries  <tdevries@suse.de>

	* config/nvptx/nvptx-opts.h (enum ptx_isa): Add PTX_ISA_SM70.
	* config/nvptx/nvptx.h (TARGET_SM70): Define.

2022-02-08  Robin Dapp  <rdapp@linux.ibm.com>

	* config/s390/s390.cc (s390_rtx_costs): Increase costs for load
	on condition.
	* config/s390/s390.md: Use paradoxical subreg.

2022-02-08  Robin Dapp  <rdapp@linux.ibm.com>

	* combine.cc (reg_subword_p): Check for paradoxical subreg.

2022-02-08  Tom de Vries  <tdevries@suse.de>

	PR target/104283
	* config/nvptx/nvptx-opts.h (enum ptx_version): Add PTX_VERSION_3_0
	and PTX_VERSION_4_2.
	* config/nvptx/nvptx.cc (first_ptx_version_supporting_sm)
	(default_ptx_version_option, ptx_version_to_string)
	(sm_version_to_string, handle_ptx_version_option): New function.
	(nvptx_option_override): Call handle_ptx_version_option.
	(nvptx_file_start): Use ptx_version_to_string and sm_version_to_string.
	* config/nvptx/nvptx.md (define_insn "nvptx_shuffle<mode>")
	(define_insn "nvptx_vote_ballot"): Use TARGET_PTX_6_0.
	* config/nvptx/nvptx.opt (mptx): Remove 'Init'.

2022-02-08  Maciej W. Rozycki  <macro@embecosm.com>

	* doc/install.texi (Configuration): Document `--with-isa-spec='
	RISC-V option.
	* doc/invoke.texi (Option Summary): List `-misa-spec=' RISC-V
	option.
	(RISC-V Options): Document it.

2022-02-08  Maciej W. Rozycki  <macro@embecosm.com>

	* config/riscv/t-riscv (riscv-sr.o): Add $(TM_H) dependency.

2022-02-08  Tom de Vries  <tdevries@suse.de>

	* config/nvptx/nvptx.cc (write_fn_proto_1): Handle 'main (int)'.

2022-02-08  Tom de Vries  <tdevries@suse.de>

	PR target/104364
	* config/nvptx/nvptx-protos.h (nvptx_mem_local_p): Declare.
	* config/nvptx/nvptx.cc (nvptx_reorg_uniform_simt): Assert that
	change is validated.
	(nvptx_mem_local_p): New function.
	* config/nvptx/nvptx.md: Use nvptx_mem_local_p.
	(define_c_enum "unspecv"): Add UNSPECV_CAS_LOCAL.
	(define_insn "atomic_compare_and_swap<mode>_1_local"): New
	non-atomic, non-predicable define_insn, factored out of ...
	(define_insn "atomic_compare_and_swap<mode>_1"): ... here.
	Make predicable again.
	(define_expand "atomic_compare_and_swap<mode>"): Use
	atomic_compare_and_swap<mode>_1_local.

2022-02-08  liuhongt  <hongtao.liu@intel.com>

	PR rtl-optimization/104059
	* regcprop.cc (copyprop_hardreg_forward_1): Don't propagate
	for a more expensive reg-reg move.

2022-02-07  Tamar Christina  <tamar.christina@arm.com>

	* config/arm/arm_neon.h (vusdotq_s32, vusdot_laneq_s32,
	vusdotq_laneq_s32, vsudot_laneq_s32, vsudotq_laneq_s32): New
	* config/arm/arm_neon_builtins.def (usdot): Add V16QI.
	(usdot_laneq, sudot_laneq): New.
	* config/arm/neon.md (neon_<sup>dot_laneq<vsi2qi>): New.
	(neon_<sup>dot_lane<vsi2qi>): Remote unneeded code.

2022-02-07  Tamar Christina  <tamar.christina@arm.com>

	* config/arm/arm_neon.h (vdot_laneq_u32, vdotq_laneq_u32,
	vdot_laneq_s32, vdotq_laneq_s32): New.
	* config/arm/arm_neon_builtins.def (sdot_laneq, udot_laneq): New.
	* config/arm/neon.md (neon_<sup>dot<vsi2qi>): New.
	(<sup>dot_prod<vsi2qi>): Re-order rtl.
	(neon_<sup>dot_lane<vsi2qi>): Fix rtl order and endiannes.
	(neon_<sup>dot_laneq<vsi2qi>): New.

2022-02-07  Andreas Krebbel  <krebbel@linux.ibm.com>

	PR target/104327
	* config/s390/s390.cc (s390_can_inline_p): Accept a few more flags
	if always_inline is set. Don't inline when tune differs without
	always_inline.

2022-02-07  Richard Biener  <rguenther@suse.de>

	PR middle-end/104402
	* gimple-expr.cc (is_gimple_condexpr): _Complex typed
	compares are not valid.
	* tree-cfg.cc (verify_gimple_assign_ternary): For COND_EXPR
	check is_gimple_condexpr.

2022-02-07  Kewen Lin  <linkw@linux.ibm.com>

	PR target/103627
	* config/rs6000/rs6000.cc (rs6000_option_override_internal): Move the
	hunk affecting VSX and ALTIVEC to appropriate place.

2022-02-07  Kewen Lin  <linkw@linux.ibm.com>

	PR target/103627
	* config/rs6000/rs6000.cc (rs6000_option_override_internal): Disable
	MMA if !TARGET_VSX.

2022-02-06  Jakub Jelinek  <jakub@redhat.com>

	PR c++/89074
	PR c++/104033
	* fold-const.h (folding_initializer): Adjust comment.
	(folding_cxx_constexpr): Declare.
	* fold-const.cc (folding_initializer): Adjust comment.
	(folding_cxx_constexpr): New variable.
	(address_compare): Restrict the decl vs. STRING_CST
	or vice versa or STRING_CST vs. STRING_CST or
	is_global_var != is_global_var optimizations to !folding_cxx_constexpr.
	Punt for FUNCTION_DECLs with non-zero offsets.  If folding_initializer,
	assume non-aliased functions have non-zero size and have different
	addresses.  For folding_cxx_constexpr, punt on comparisons of start
	of some object and end of another one, regardless whether it is a decl
	or string literal.  Also punt for folding_cxx_constexpr on
	STRING_CST vs. STRING_CST comparisons if the two literals could be
	overlapping.

2022-02-05  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/104389
	* match.pd (x * 0 -> 0): Punt if x maybe infinite and NaNs are
	honored.

2022-02-05  Kito Cheng  <kito.cheng@sifive.com>

	* configure.ac: Fix detection for zifencei support.
	* configure: Regenerate.

2022-02-05  Kito Cheng  <kito.cheng@sifive.com>

	PR target/104219
	* config.gcc (riscv*-*-*): Normalize the with_isa_spec value.
	(all_defaults): Add isa_spec.
	* config/riscv/riscv.h (OPTION_DEFAULT_SPECS): Add isa_spec.

2022-02-04  Bill Schmidt  <wschmidt@linux.ibm.com>

	* config/rs6000/rs6000-c.cc (resolve_vec_mul): Accept args and types
	parameters instead of arglist and nargs.  Simplify accordingly.  Remove
	unnecessary test for argument count mismatch.
	(resolve_vec_cmpne): Likewise.
	(resolve_vec_adde_sube): Likewise.
	(resolve_vec_addec_subec): Likewise.
	(altivec_resolve_overloaded_builtin): Move overload special handling
	after the gathering of arguments into args[] and types[] and the test
	for correct number of arguments.  Don't perform the test for correct
	number of arguments for certain special cases.  Call the other special
	cases with args and types instead of arglist and nargs.

2022-02-04  Bill Schmidt  <wschmidt@linux.ibm.com>

	PR target/100808
	* doc/extend.texi (Basic PowerPC Built-in Functions Available on ISA
	3.1): Provide consistent type names.  Remove unnecessary semicolons.
	Fix bad line breaks.

2022-02-04  Jakub Jelinek  <jakub@redhat.com>

	PR target/104380
	* config/rs6000/rs6000.cc (rs6000_mangle_decl_assembler_name): Also
	adjust mangling of __builtin*printf_chk.

2022-02-04  Jonathan Wakely  <jwakely@redhat.com>

	* doc/cpp.texi (Variadic Macros): Replace C++2a with C++20.

2022-02-04  Richard Biener  <rguenther@suse.de>
	    Bin Cheng   <bin.cheng@linux.alibaba.com>

	PR tree-optimization/100499
	* fold-const.h (multiple_of_p): Add nowrap parameter, defaulted
	to true.
	* fold-const.cc (multiple_of_p): Likewise.  Honor it for
	MULT_EXPR, PLUS_EXPR and MINUS_EXPR and pass it along,
	switching to false for conversions.
	* tree-ssa-loop-niter.cc (number_of_iterations_ne): Do not
	claim the outermost expression does not wrap when calling
	multiple_of_p.  Refactor the check done to check the
	original IV, avoiding a bias that might wrap.

2022-02-04  Richard Biener  <rguenther@suse.de>

	* fold-const.cc (multiple_of_p): Re-write and move LSHIFT_EXPR
	handling.

2022-02-04  Eric Botcazou  <ebotcazou@adacore.com>

	PR debug/104366
	* dwarf2out.cc (dwarf2out_finish): Empty base_types.
	(dwarf2out_early_finish): Likewise.

2022-02-04  Eric Botcazou  <ebotcazou@adacore.com>

	PR tree-optimization/104356
	* match.pd (X / bool_range_Y is X): Add guard.
	(X / X is one): Likewise.
	(X / abs (X) is X < 0 ? -1 : 1): Likewise.
	(X / -X is -1): Likewise.
	(1 / X -> X == 1): Likewise.

2022-02-04  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/103641
	* tree-vect-patterns.cc (vect_synth_mult_by_constant):
	Pass the vector mode to choose_mult_variant.

2022-02-04  Roger Sayle  <roger@nextmovesoftware.com>

	PR rtl-optimization/101885
	* combine.cc (try_combine): When splitting a parallel into two
	sequential sets, check not only that the first doesn't clobber
	the second but also that the second doesn't clobber the first.

2022-02-04  Richard Biener  <rguenther@suse.de>

	PR middle-end/90348
	PR middle-end/104092
	* tree-core.h (clobber_kind): New enum.
	(tree_base::u::bits::address_space): Document use in CONSTRUCTORs.
	* tree.h (CLOBBER_KIND): Add.
	(build_clobber): Add clobber kind argument, defaulted to
	CLOBBER_UNDEF.
	* tree.cc (build_clobber): Likewise.
	* gimple.h (gimple_clobber_p): New overload with specified kind.
	* tree-streamer-in.cc (streamer_read_tree_bitfields): Stream
	CLOBBER_KIND.
	* tree-streamer-out.cc (streamer_write_tree_bitfields):
	Likewise.
	* tree-pretty-print.cc (dump_generic_node): Mark EOL CLOBBERs.
	* gimplify.cc (gimplify_bind_expr): Build storage end-of-life clobbers
	with CLOBBER_EOL.
	(gimplify_target_expr): Likewise.
	* tree-inline.cc (expand_call_inline): Likewise.
	* tree-ssa-ccp.cc (insert_clobber_before_stack_restore): Likewise.
	* gimple-ssa-warn-access.cc (pass_waccess::check_stmt): Only treat
	CLOBBER_EOL clobbers as ending lifetime of storage.

2022-02-04  Martin Sebor  <msebor@redhat.com>

	* pointer-query.h (pointer_query::cache_type): Use auto_vec for auto
	cleanup.

2022-02-03  Martin Sebor  <msebor@redhat.com>

	PR middle-end/104260
	* passes.def (pass_warn_access): Adjust pass placement.

2022-02-03  Uroš Bizjak  <ubizjak@gmail.com>

	PR target/104362
	* config/i386/i386.cc (find_drap_reg): For 32bit targets
	return DI_REG if function uses __builtin_eh_return.

2022-02-03  Martin Sebor  <msebor@redhat.com>

	* gimple-ssa-warn-restrict.cc (class pass_wrestrict): Outline ctor.
	(pass_wrestrict::m_ptr_qry): New member.
	(wrestrict_walk): Rename...
	(pass_wrestrict::check_block): ...to this.
	(pass_wrestrict::execute): Set up and tear down pointer_query and
	ranger.
	(builtin_memref::builtin_memref): Change ctor argument.  Simplify.
	(builtin_access::builtin_access): Same.
	(builtin_access::m_ptr_qry): New member.
	(check_call): Rename...
	(pass_wrestrict::check_call): ...to this.
	(check_bounds_or_overlap): Change argument.
	* gimple-ssa-warn-restrict.h (check_bounds_or_overlap): Same.

2022-02-03  Martin Sebor  <msebor@redhat.com>

	* gimple-array-bounds.cc (array_bounds_checker::array_bounds_checker):
	Define ctor.
	(array_bounds_checker::get_value_range): Use new member.
	(array_bounds_checker::check_mem_ref): Same.
	* gimple-array-bounds.h (array_bounds_checker::array_bounds_checker):
	Outline ctor.
	(array_bounds_checker::m_ptr_query): New member.

2022-02-03  Martin Sebor  <msebor@redhat.com>

	* gimple-ssa-warn-access.cc (pass_waccess::pass_waccess): Remove
	pointer_query cache.
	* pointer-query.cc (pointer_query::pointer_query): Remove cache
	argument.  Zero-initialize new cache member.
	(pointer_query::get_ref): Replace cache pointer with direct access.
	(pointer_query::put_ref): Same.
	(pointer_query::flush_cache): Same.
	(pointer_query::dump): Same.
	* pointer-query.h (class pointer_query): Remove cache argument from
	ctor.  Change cache pointer to cache subobject member.
	* tree-ssa-strlen.cc: Remove pointer_query cache.

2022-02-03  Martin Sebor  <msebor@redhat.com>

	PR tree-optimization/104119
	* gimple-ssa-sprintf.cc (struct directive): Change argument type.
	(format_none): Same.
	(format_percent): Same.
	(format_integer): Same.
	(format_floating): Same.
	(get_string_length): Same.
	(format_character): Same.
	(format_string): Same.
	(format_plain): Same.
	(format_directive): Same.
	(compute_format_length): Same.
	(handle_printf_call): Same.
	* tree-ssa-strlen.cc (get_range_strlen_dynamic): Same.   Call
	get_maxbound.
	(get_range_strlen_phi): Same.
	(get_maxbound): New function.
	(strlen_pass::get_len_or_size): Adjust to parameter change.
	* tree-ssa-strlen.h (get_range_strlen_dynamic): Change argument type.

2022-02-03  Bill Schmidt  <wschmidt@linux.ibm.com>

	PR target/103686
	* config/rs6000/rs6000-builtin.cc (rs6000_gimple_fold_builtin):	Remove
	test for !rs6000_fold_gimple.
	* config/rs6000/rs6000.cc (rs6000_option_override_internal): Likewise.
	* config/rs6000/rs6000.opt (mfold-gimple): Remove.

2022-02-03  Bill Schmidt  <wschmidt@linux.ibm.com>

	PR target/95082
	* config/rs6000/rs6000-builtin.cc (rs6000_expand_builtin): Handle
	endianness for vclzlsbb and vctzlsbb.
	* config/rs6000/rs6000-builtins.def (VCLZLSBB_V16QI): Change
	default pattern and indicate a different pattern will be used for
	big endian.
	(VCLZLSBB_V4SI): Likewise.
	(VCLZLSBB_V8HI): Likewise.
	(VCTZLSBB_V16QI): Likewise.
	(VCTZLSBB_V4SI): Likewise.
	(VCTZLSBB_V8HI): Likewise.

2022-02-03  Bill Schmidt  <wschmidt@linux.ibm.com>

	* config.gcc (powerpc*-*-*): Add rs6000-builtin.o to extra_objs.
	* config/rs6000/rs6000-builtin.cc: New file, containing code moved
	from other files.
	* config/rs6000/rs6000-call.cc (cpu_is_info): Move to
	rs6000-builtin.cc.
	(cpu_supports_info): Likewise.
	(rs6000_type_string): Likewise.
	(altivec_expand_predicate_builtin): Likewise.
	(rs6000_htm_spr_icode): Likewise.
	(altivec_expand_vec_init_builtin): Likewise.
	(get_element_number): Likewise.
	(altivec_expand_vec_set_builtin): Likewise.
	(altivec_expand_vec_ext_builtin): Likewise.
	(rs6000_invalid_builtin): Likewise.
	(rs6000_fold_builtin): Likewise.
	(fold_build_vec_cmp): Likewise.
	(fold_compare_helper): Likewise.
	(map_to_integral_tree_type): Likewise.
	(fold_mergehl_helper): Likewise.
	(fold_mergeeo_helper): Likewise.
	(rs6000_builtin_valid_without_lhs): Likewise.
	(rs6000_builtin_is_supported): Likewise.
	(rs6000_gimple_fold_mma_builtin): Likewise.
	(rs6000_gimple_fold_builtin): Likewise.
	(rs6000_expand_ldst_mask): Likewise.
	(cpu_expand_builtin): Likewise.
	(elemrev_icode): Likewise.
	(ldv_expand_builtin): Likewise.
	(lxvrse_expand_builtin): Likewise.
	(lxvrze_expand_builtin): Likewise.
	(stv_expand_builtin): Likewise.
	(mma_expand_builtin): Likewise.
	(htm_spr_num): Likewise.
	(htm_expand_builtin): Likewise.
	(rs6000_expand_builtin): Likewise.
	(rs6000_vector_type): Likewise.
	(rs6000_init_builtins): Likewise.  Remove initialization of
	builtin_mode_to_type entries.
	(rs6000_builtin_decl): Move to rs6000-builtin.cc.
	* config/rs6000/rs6000.cc (rs6000_builtin_mask_for_load): New
	external declaration.
	(rs6000_builtin_md_vectorized_function): Likewise.
	(rs6000_builtin_reciprocal): Likewise.
	(altivec_builtin_mask_for_load): Move to rs6000-builtin.cc.
	(rs6000_builtin_types): Likewise.
	(builtin_mode_to_type): Remove.
	(rs6000_builtin_mask_for_load): Move to rs6000-builtin.cc.  Remove
	static qualifier.
	(rs6000_builtin_md_vectorized_function): Likewise.
	(rs6000_builtin_reciprocal): Likewise.
	* config/rs6000/rs6000.h (builtin_mode_to_type): Remove.
	* config/rs6000/t-rs6000 (rs6000-builtin.o): New target.

2022-02-03  Richard Biener  <rguenther@suse.de>

	PR debug/104337
	* tree-nrv.cc (pass_nrv::execute): Remove tieing result and found
	together via DECL_ABSTRACT_ORIGIN.

2022-02-03  Bill Schmidt  <wschmidt@linux.ibm.com>

	* config/rs6000/rs6000-call.cc (rs6000_expand_builtin): Revise error
	message for RES_BITS case.

2022-02-03  Aldy Hernandez  <aldyh@redhat.com>

	* gimple-range-fold.cc (fur_list::fur_list): Set m_local[1] correctly.

2022-02-03  Jakub Jelinek  <jakub@redhat.com>

	* config/arm/arm.opt (mfix-cortex-a57-aes-1742098,
	mfix-cortex-a72-aes-1655431): Ensure description ends with full stop.

2022-02-03  Aldy Hernandez  <aldyh@redhat.com>

	* cfganal.cc (verify_marked_backedges): New.
	* cfganal.h (verify_marked_backedges): New.
	* gimple-range-path.cc (path_range_query::path_range_query):
	Verify freshness of back edges.
	* tree-ssa-loop-ch.cc (ch_base::copy_headers): Call
	mark_dfs_back_edges.
	* tree-ssa-threadbackward.cc (back_threader::back_threader): Move
	path_range_query construction after backedges have been
	updated.

2022-02-03  Richard Sandiford  <richard.sandiford@arm.com>

	* config/aarch64/aarch64-simd.md (movmisalign<mode>): Extend from
	VALL to VALL_F16.

2022-02-03  Richard Sandiford  <richard.sandiford@arm.com>

	* config/aarch64/iterators.md (VALL_F16MOV): Delete.
	* config/aarch64/aarch64-simd.md (mov<mode>): Use VALL_F16 instead
	of VALL_F16MOV.

2022-02-03  Martin Liska  <mliska@suse.cz>

	* config/i386/i386-options.cc (ix86_valid_target_attribute_inner_p):
	Change subject and object in the error message.
	* config/s390/s390.cc (s390_valid_target_attribute_inner_p):
	Likewise.

2022-02-03  Martin Liska  <mliska@suse.cz>

	* config/s390/s390.cc (s390_valid_target_attribute_inner_p):
	Use the error message for i386 target.

2022-02-03  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/104334
	* range-op.cc (range_operator::wi_fold_in_parts): Change lh_range
	and rh_range type to widest_int and subtract in widest_int.  Remove
	ov_rh, ov_lh and sign vars, always perform comparisons as signed
	and use >, < and == operators for it.

2022-02-03  Martin Sebor  <msebor@redhat.com>

	* common.opt (-Wuse-after-free): Correct typos.

2022-02-02  David Malcolm  <dmalcolm@redhat.com>

	PR analyzer/104270
	* doc/invoke.texi (-ftrivial-auto-var-init=): Add reference to
	-Wanalyzer-use-of-uninitialized-value to paragraph documenting that
	-ftrivial-auto-var-init= doesn't suppress warnings.

2022-02-02  Martin Liska  <mliska@suse.cz>

	* dwarf2out.cc (TEXT_SECTION_NAME): Remove unused macro.

2022-02-02  Bernd Kuhls  <bernd.kuhls@t-online.de>

	PR target/94372
	* config/or1k/linux.h (CPP_SPEC): Define.

2022-02-02  Tamar Christina  <tamar.christina@arm.com>

	PR tree-optimization/102819
	PR tree-optimization/103169
	* config/arm/vec-common.md (cml<fcmac1><conj_op><mode>4): Use
	canonical order.

2022-02-02  Tamar Christina  <tamar.christina@arm.com>

	PR tree-optimization/102819
	PR tree-optimization/103169
	* config/aarch64/aarch64-simd.md (cml<fcmac1><conj_op><mode>4): Use
	canonical order.
	* config/aarch64/aarch64-sve.md (cml<fcmac1><conj_op><mode>4): Likewise.

2022-02-02  Tamar Christina  <tamar.christina@arm.com>

	PR tree-optimization/102819
	PR tree-optimization/103169
	* doc/md.texi: Update docs for cfms, cfma.
	* tree-data-ref.h (same_data_refs): Accept optional offset.
	* tree-vect-slp-patterns.cc (is_linear_load_p): Fix issue with repeating
	patterns.
	(vect_normalize_conj_loc): Remove.
	(is_eq_or_top): Change to take two nodes.
	(enum _conj_status, compatible_complex_nodes_p,
	vect_validate_multiplication): New.
	(class complex_add_pattern, complex_add_pattern::matches,
	complex_add_pattern::recognize, class complex_mul_pattern,
	complex_mul_pattern::recognize, class complex_fms_pattern,
	complex_fms_pattern::recognize, class complex_operations_pattern,
	complex_operations_pattern::recognize, addsub_pattern::recognize): Pass
	new cache.
	(complex_fms_pattern::matches, complex_mul_pattern::matches): Pass new
	cache and use new validation code.
	* tree-vect-slp.cc (vect_match_slp_patterns_2, vect_match_slp_patterns,
	vect_analyze_slp): Pass along cache.
	(compatible_calls_p): Expose.
	* tree-vectorizer.h (compatible_calls_p, slp_node_hash,
	slp_compat_nodes_map_t): New.
	(class vect_pattern): Update signatures include new cache.

2022-02-02  Hans-Peter Nilsson  <hp@axis.com>

	* config/cris/cris.cc (cris_preferred_reload_class): Reject
	"eliminated" registers and small-enough constants unless
	reloaded into a class that is a subset of GENERAL_REGS.
	* config/cris/cris.md (attribute "cpu_variant"): New.
	(attribute "enabled"): Conditionalize on a matching attribute
	cpu_variant, if specified.
	("*movsi_internal<setcc><setnz><setnzvc>"): For moves to and from
	memory, add cpu-variant-enabled variants for "r" alternatives on
	the far side of the "x" alternatives, preferring the "x" ones
	only for variants where MOF is present (in addition to SRP).

2022-02-02  Hans-Peter Nilsson  <hp@axis.com>

	* config/cris/cris.cc (cris_register_move_cost): Remove special pre-ira
	extra cost for ALL_REGS.

2022-02-02  Hans-Peter Nilsson  <hp@axis.com>

	* config/cris/constraints.md (define_register_constraint "b"): Now
	GENERAL_REGS.
	* config/cris/cris.md (CRIS_ACR_REGNUM): Remove.
	* config/cris/cris.h: (reg_class, REG_CLASS_NAMES)
	(REG_CLASS_CONTENTS): Remove ACR_REGS, SPEC_ACR_REGS, GENNONACR_REGS,
	and SPEC_GENNONACR_REGS.
	* config/cris/cris.cc (cris_preferred_reload_class): Don't mention
	ACR_REGS and return GENERAL_REGS instead of GENNONACR_REGS.

2022-02-02  Hans-Peter Nilsson  <hp@axis.com>

	* config/cris/cris.md ("*movsi_internal<setcc><setnz><setnzvc>"):
	Conditionalize on (sub-)register operands or operand 1 being 0.

2022-02-02  Hans-Peter Nilsson  <hp@axis.com>

	* config/cris/cris.h (TARGET_DEFAULT): Don't include MASK_MUL_BUG.
	(MUL_BUG_ASM_DEFAULT): New macro.
	(MAYBE_AS_NO_MUL_BUG_ABORT): Define in terms of MUL_BUG_ASM_DEFAULT.
	* doc/invoke.texi (CRIS Options, -mmul-bug-workaround): Adjust
	accordingly.

2022-02-01  Eugene Rozenfeld  <erozen@microsoft.com>

	* opts.cc (common_handle_option): Don't set param_early_inliner_max_iterations
	to 10 for AutoFDO.

2022-02-01  Eugene Rozenfeld  <erozen@microsoft.com>

	* auto-profile.cc (auto_profile): Hard-code the number of iterations (10).

2022-02-01  Andrew Pinski  <apinski@marvell.com>

	* doc/install.texi:

2022-02-01  Ilya Leoshkevich  <iii@linux.ibm.com>

	* config/s390/s390.cc (s390_code_end): Do not switch back to
	code section.

2022-02-01  Jakub Jelinek  <jakub@redhat.com>

	PR target/104323
	* config/rs6000/t-rs6000 (EXTRA_GTYPE_DEPS): Append rs6000-builtins.h
	rather than $(srcdir)/config/rs6000/rs6000-builtins.def.
	* config/rs6000/rs6000-gen-builtins.cc (write_decls): Don't use
	GTY((user)) for struct bifdata and struct ovlddata.  Instead add
	GTY((skip(""))) to members with pointer and enum types that don't need
	to be tracked.  Add GTY(()) to rs6000_builtin_info and rs6000_instance_info
	declarations.  Don't emit gt_ggc_mx and gt_pch_nx declarations.
	(write_extern_fntype, write_fntype): Remove.
	(write_fntype_init): Emit the fntype vars as automatic vars instead
	of file scope ones.
	(write_header_file): Don't iterate with write_extern_fntype.
	(write_init_file): Don't iterate with write_fntype.  Don't emit
	gt_ggc_mx and gt_pch_nx definitions.

2022-02-01  Jason Merrill  <jason@redhat.com>

	* tree.h (struct tree_vec_map_cache_hasher): Move from...
	* tree.cc (struct tree_vec_map_cache_hasher): ...here.

2022-02-01  Tom de Vries  <tdevries@suse.de>

	* config/nvptx/nvptx.cc (nvptx_single): Use nvptx_uniform_warp_check.
	* config/nvptx/nvptx.md (define_c_enum "unspecv"): Add
	UNSPECV_UNIFORM_WARP_CHECK.
	(define_insn "nvptx_uniform_warp_check"): New define_insn.

2022-02-01  Tom de Vries  <tdevries@suse.de>

	* config/nvptx/nvptx.cc (nvptx_single): Use nvptx_warpsync.
	* config/nvptx/nvptx.md (define_c_enum "unspecv"): Add
	UNSPECV_WARPSYNC.
	(define_insn "nvptx_warpsync"): New define_insn.

2022-02-01  Tom de Vries  <tdevries@suse.de>

	* config/nvptx/nvptx.opt (mptx): Set to PTX_VERSION_6_3 by default.

2022-02-01  Tom de Vries  <tdevries@suse.de>

	* config/nvptx/nvptx-opts.h (enum ptx_version): Add PTX_VERSION_6_0.
	* config/nvptx/nvptx.h (TARGET_PTX_6_0): New macro.
	* config/nvptx/nvptx.md (define_insn "nvptx_barsync"): Use barrier
	insn for TARGET_PTX_6_0.

2022-02-01  Tom de Vries  <tdevries@suse.de>

	PR target/100428
	* config/nvptx/nvptx.cc (prevent_branch_around_nothing): Handle nop
	insn.

2022-02-01  Tom de Vries  <tdevries@suse.de>

	* config/nvptx/nvptx.md (define_insn "atomic_compare_and_swap<mode>_1")
	(define_insn "atomic_exchange<mode>")
	(define_insn "atomic_fetch_add<mode>")
	(define_insn "atomic_fetch_addsf")
	(define_insn "atomic_fetch_<logic><mode>"): Output non-atomic version
	if memory operands is frame-relative.

2022-02-01  Tom de Vries  <tdevries@suse.de>

	* config/nvptx/nvptx.cc (enum nvptx_builtins): Add
	NVPTX_BUILTIN_MEMBAR_GL and NVPTX_BUILTIN_MEMBAR_CTA.
	(VOID): New macro.
	(nvptx_init_builtins): Add MEMBAR_GL and MEMBAR_CTA.
	(nvptx_expand_builtin): Handle NVPTX_BUILTIN_MEMBAR_GL and
	NVPTX_BUILTIN_MEMBAR_CTA.
	(nvptx_lockfull_update): Add level parameter.  Emit barriers.
	(nvptx_reduction_update, nvptx_goacc_reduction_fini): Update call to
	nvptx_lockfull_update.
	* config/nvptx/nvptx.md (define_c_enum "unspecv"): Add
	UNSPECV_MEMBAR_GL.
	(define_expand "nvptx_membar_gl"): New expand.
	(define_insn "*nvptx_membar_gl"): New insn.

2022-02-01  Martin Liska  <mliska@suse.cz>

	* doc/install.texi: Remove option for GCC < 4.8.

2022-02-01  Jakub Jelinek  <jakub@redhat.com>

	PR middle-end/104307
	* tree-vect-generic.cc (expand_vector_comparison): Don't push debug
	stmts to uses vector, just set vec_cond_expr_only to false for
	non-VEC_COND_EXPRs instead of pushing them into uses.  Treat
	VEC_COND_EXPRs that use lhs not just in rhs1, but rhs2 or rhs3 too
	like non-VEC_COND_EXPRs.

2022-02-01  Bill Schmidt  <wschmidt@linux.ibm.com>

	* config/rs6000/rs6000-overload.def (VEC_ABSD): Remove #ifdef token.
	(VEC_BLENDV): Likewise.
	(VEC_BPERM): Likewise.
	(VEC_CFUGE): Likewise.
	(VEC_CIPHER_BE): Likewise.
	(VEC_CIPHERLAST_BE): Likewise.
	(VEC_CLRL): Likewise.
	(VEC_CLRR): Likewise.
	(VEC_CMPNEZ): Likewise.
	(VEC_CNTLZ): Likewise.
	(VEC_CNTLZM): Likewise.
	(VEC_CNTTZM): Likewise.
	(VEC_CNTLZ_LSBB): Likewise.
	(VEC_CNTM): Likewise.
	(VEC_CNTTZ): Likewise.
	(VEC_CNTTZ_LSBB): Likewise.
	(VEC_CONVERT_4F32_8F16): Likewise.
	(VEC_DIV): Likewise.
	(VEC_DIVE): Likewise.
	(VEC_EQV): Likewise.
	(VEC_EXPANDM): Likewise.
	(VEC_EXTRACT_FP_FROM_SHORTH): Likewise.
	(VEC_EXTRACT_FP_FROM_SHORTL): Likewise.
	(VEC_EXTRACTH): Likewise.
	(VEC_EXTRACTL): Likewise.
	(VEC_EXTRACTM): Likewise.
	(VEC_EXTRACT4B): Likewise.
	(VEC_EXTULX): Likewise.
	(VEC_EXTURX): Likewise.
	(VEC_FIRSTMATCHINDEX): Likewise.
	(VEC_FIRSTMACHOREOSINDEX): Likewise.
	(VEC_FIRSTMISMATCHINDEX): Likewise.
	(VEC_FIRSTMISMATCHOREOSINDEX): Likewise.
	(VEC_GB): Likewise.
	(VEC_GENBM): Likewise.
	(VEC_GENHM): Likewise.
	(VEC_GENWM): Likewise.
	(VEC_GENDM): Likewise.
	(VEC_GENQM): Likewise.
	(VEC_GENPCVM): Likewise.
	(VEC_GNB): Likewise.
	(VEC_INSERTH): Likewise.
	(VEC_INSERTL): Likewise.
	(VEC_INSERT4B): Likewise.
	(VEC_LXVL): Likewise.
	(VEC_MERGEE): Likewise.
	(VEC_MERGEO): Likewise.
	(VEC_MOD): Likewise.
	(VEC_MSUB): Likewise.
	(VEC_MULH): Likewise.
	(VEC_NAND): Likewise.
	(VEC_NCIPHER_BE): Likewise.
	(VEC_NCIPHERLAST_BE): Likewise.
	(VEC_NEARBYINT): Likewise.
	(VEC_NMADD): Likewise.
	(VEC_ORC): Likewise.
	(VEC_PDEP): Likewise.
	(VEC_PERMX): Likewise.
	(VEC_PEXT): Likewise.
	(VEC_POPCNT): Likewise.
	(VEC_PARITY_LSBB): Likewise.
	(VEC_REPLACE_ELT): Likewise.
	(VEC_REPLACE_UN): Likewise.
	(VEC_REVB): Likewise.
	(VEC_RINT): Likewise.
	(VEC_RLMI): Likewise.
	(VEC_RLNM): Likewise.
	(VEC_SBOX_BE): Likewise.
	(VEC_SIGNEXTI): Likewise.
	(VEC_SIGNEXTLL): Likewise.
	(VEC_SIGNEXTQ): Likewise.
	(VEC_SLDB): Likewise.
	(VEC_SLV): Likewise.
	(VEC_SPLATI): Likewise.
	(VEC_SPLATID): Likewise.
	(VEC_SPLATI_INS): Likewise.
	(VEC_SQRT): Likewise.
	(VEC_SRDB): Likewise.
	(VEC_SRV): Likewise.
	(VEC_STRIL): Likewise.
	(VEC_STRIL_P): Likewise.
	(VEC_STRIR): Likewise.
	(VEC_STRIR_P): Likewise.
	(VEC_STXVL): Likewise.
	(VEC_TERNARYLOGIC): Likewise.
	(VEC_TEST_LSBB_ALL_ONES): Likewise.
	(VEC_TEST_LSBB_ALL_ZEROS): Likewise.
	(VEC_VEE): Likewise.
	(VEC_VES): Likewise.
	(VEC_VIE): Likewise.
	(VEC_VPRTYB): Likewise.
	(VEC_VSCEEQ): Likewise.
	(VEC_VSCEGT): Likewise.
	(VEC_VSCELT): Likewise.
	(VEC_VSCEUO): Likewise.
	(VEC_VSEE): Likewise.
	(VEC_VSES): Likewise.
	(VEC_VSIE): Likewise.
	(VEC_VSTDC): Likewise.
	(VEC_VSTDCN): Likewise.
	(VEC_VTDC): Likewise.
	(VEC_XL): Likewise.
	(VEC_XL_BE): Likewise.
	(VEC_XL_LEN_R): Likewise.
	(VEC_XL_SEXT): Likewise.
	(VEC_XL_ZEXT): Likewise.
	(VEC_XST): Likewise.
	(VEC_XST_BE): Likewise.
	(VEC_XST_LEN_R): Likewise.
	(VEC_XST_TRUNC): Likewise.
	(VEC_XXPERMDI): Likewise.
	(VEC_XXSLDWI): Likewise.
	(VEC_TSTSFI_EQ_DD): Likewise.
	(VEC_TSTSFI_EQ_TD): Likewise.
	(VEC_TSTSFI_GT_DD): Likewise.
	(VEC_TSTSFI_GT_TD): Likewise.
	(VEC_TSTSFI_LT_DD): Likewise.
	(VEC_TSTSFI_LT_TD): Likewise.
	(VEC_TSTSFI_OV_DD): Likewise.
	(VEC_TSTSFI_OV_TD): Likewise.
	(VEC_VADDCUQ): Likewise.
	(VEC_VADDECUQ): Likewise.
	(VEC_VADDEUQM): Likewise.
	(VEC_VADDUDM): Likewise.
	(VEC_VADDUQM): Likewise.
	(VEC_VBPERMQ): Likewise.
	(VEC_VCLZB): Likewise.
	(VEC_VCLZD): Likewise.
	(VEC_VCLZH): Likewise.
	(VEC_VCLZW): Likewise.
	(VEC_VCTZB): Likewise.
	(VEC_VCTZD): Likewise.
	(VEC_VCTZH): Likewise.
	(VEC_VCTZW): Likewise.
	(VEC_VEEDP): Likewise.
	(VEC_VEESP): Likewise.
	(VEC_VESDP): Likewise.
	(VEC_VESSP): Likewise.
	(VEC_VIEDP): Likewise.
	(VEC_VIESP): Likewise.
	(VEC_VPKSDSS): Likewise.
	(VEC_VPKSDUS): Likewise.
	(VEC_VPKUDUM): Likewise.
	(VEC_VPKUDUS): Likewise.
	(VEC_VPOPCNT): Likewise.
	(VEC_VPOPCNTB): Likewise.
	(VEC_VPOPCNTD): Likewise.
	(VEC_VPOPCNTH): Likewise.
	(VEC_VPOPCNTW): Likewise.
	(VEC_VPRTYBD): Likewise.
	(VEC_VPRTYBQ): Likewise.
	(VEC_VPRTYBW): Likewise.
	(VEC_VRLD): Likewise.
	(VEC_VSLD): Likewise.
	(VEC_VSRAD): Likewise.
	(VEC_VSRD): Likewise.
	(VEC_VSTDCDP): Likewise.
	(VEC_VSTDCNDP): Likewise.
	(VEC_VSTDCNQP): Likewise.
	(VEC_VSTDCNSP): Likewise.
	(VEC_VSTDCQP): Likewise.
	(VEC_VSTDCSP): Likewise.
	(VEC_VSUBECUQ): Likewise.
	(VEC_VSUBEUQM): Likewise.
	(VEC_VSUBUDM): Likewise.
	(VEC_VSUBUQM): Likewise.
	(VEC_VTDCDP): Likewise.
	(VEC_VTDCSP): Likewise.
	(VEC_VUPKHSW): Likewise.
	(VEC_VUPKLSW): Likewise.

2022-02-01  Andreas Krebbel  <krebbel@linux.ibm.com>

	PR rtl-optimization/101260
	* regcprop.cc (maybe_mode_change): Invoke mode_change_ok also for
	copy_regno.

2022-02-01  Xi Ruoyao  <xry111@mengyan1223.wang>

	PR middle-end/95115
	* fold-const.cc (const_binop): Do not fold NaN result from
	non-NaN operands.

2022-02-01  Tom de Vries  <tdevries@suse.de>

	* tree-loop-distribution.cc (generate_reduction_builtin_1): Check for
	-ftree-loop-distribute-patterns.
	(loop_distribution::execute): Don't call transform_reduction_loop for
	-fno-tree-loop-distribute-patterns.

2022-01-31  Andrew Pinski  <apinski@marvell.com>

	* fold-const.h (operand_compare::operand_equal_p):
	Fix comment about OEP_* flags.

2022-01-31  Jakub Jelinek  <jakub@redhat.com>

	PR target/104298
	* config/rs6000/aix.h (OPTION_GLIBC): Remove.
	* config/rs6000/darwin.h (OPTION_GLIBC): Likewise.
	* config/rs6000/option-defaults.h (OPTION_GLIBC): Define to 0
	if not already defined.

2022-01-31  Martin Sebor  <msebor@redhat.com>

	PR middle-end/104232
	* gimple-ssa-warn-access.cc (pointers_related_p): Add argument.
	Handle PHIs.  Add a synonymous overload.
	(pass_waccess::check_pointer_uses): Call pointers_related_p.

2022-01-31  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/100499
	* fold-const.cc (multiple_of_p): Pass the correct type of
	the expression to the recursive invocation of multiple_of_p
	for conversions and use CASE_CONVERT.

2022-01-31  Eric Botcazou  <ebotcazou@adacore.com>

	PR target/104189
	* config/sparc/linux64.h (TARGET_DEFAULT): Add MASK_V8PLUS.

2022-01-31  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/100499
	* tree-cfg.cc (verify_gimple_assign_ternary): Use multiple_p
	on poly-ints instead of multiple_of_p.
	* tree-ssa.cc (maybe_rewrite_mem_ref_base): Likewise.
	(non_rewritable_mem_ref_base): Likewise.
	(non_rewritable_lvalue_p): Likewise.
	(execute_update_addresses_taken): Likewise.

2022-01-29  Jakub Jelinek  <jakub@redhat.com>
	    Andrew Pinski  <apinski@marvell.com>

	PR tree-optimization/104279
	PR tree-optimization/104280
	PR tree-optimization/104281
	* match.pd (1 / X -> X == 1 for unsigned X): Build eq with
	boolean_type_node and convert to type.  Formatting fixes.

2022-01-28  Yoshinori Sato  <yo-satoh@sios.com>

	* config/sh/t-linux (MULTILIB_EXCEPTIONS): Add m1, mb/m1 and m2a.

2022-01-28  Navid Rahimi  <navidrahimi@microsoft.com>

	PR tree-optimization/103514
	* match.pd (a & b) ^ (a == b) -> !(a | b): New optimization.
	(a & b) == (a ^ b) -> !(a | b): New optimization.

2022-01-28  Marek Polacek  <polacek@redhat.com>

	* doc/invoke.texi: Update -Wbidi-chars documentation.

2022-01-28  Iain Sandoe  <iain@sandoe.co.uk>

	* config/rs6000/darwin.h (OPTION_GLIBC): Define to 0.

2022-01-28  Zhao Wei Liew  <zhaoweiliew@gmail.com>

	PR tree-optimization/95424
	* match.pd: Simplify 1 / X where X is an integer.

2022-01-28  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/104263
	* gimple-ssa-store-merging.cc (get_status_for_store_merging): For
	cfun->can_throw_non_call_exceptions && cfun->eh test whether
	last non-debug stmt in the bb is store_valid_for_store_merging_p
	rather than last stmt.

2022-01-28  Martin Liska  <mliska@suse.cz>

	* diagnostic.cc (diagnostic_action_after_output): Remove extra
	newline.

2022-01-28  Martin Liska  <mliska@suse.cz>

	* config/rs6000/host-darwin.cc (segv_crash_handler):
	Do not use leading capital letter.
	(segv_handler): Likewise.
	* ipa-sra.cc (verify_splitting_accesses): Likewise.
	* varasm.cc (get_section): Likewise.

2022-01-28  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/104267
	* tree-vect-stmts.cc (vectorizable_call): Properly use the
	per-argument determined vector type for externals and
	invariants.

2022-01-28  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/104263
	* tree-cfg.cc (gimple_purge_dead_abnormal_call_edges):
	Purge edges also when !cfun->has_nonlocal_label
	and !cfun->calls_setjmp.

2022-01-28  Maciej W. Rozycki  <macro@embecosm.com>

	* config/riscv/riscv.md: Document `auipc' and `bitmanip' `type'
	attributes.

2022-01-28  Jakub Jelinek  <jakub@redhat.com>

	PR lto/104237
	* cfgrtl.cc (loc_equal): New function.
	(unique_locus_on_edge_between_p): Use it.

2022-01-28  Richard Biener  <rguenther@suse.de>

	* cfganal.h (mark_dfs_back_edges): Provide API with struct
	function argument.
	* cfganal.cc (mark_dfs_back_edges): Take a struct function
	to work on, add a wrapper passing cfun.
	* graph.cc (draw_cfg_nodes_no_loops): Replace stray cfun
	uses with fun which is already passed.
	(draw_cfg_edges): Likewise.
	(draw_cfg_nodes_for_loop): Do not use draw_cfg_nodes_for_loop
	for fun != cfun.

2022-01-27  Patrick Palka  <ppalka@redhat.com>

	PR c++/99895
	* tree.cc (build_call_vec): Add const to second parameter.
	* tree.h (build_call_vec): Likewise.

2022-01-27  Martin Liska  <mliska@suse.cz>

	PR web/104254
	* diagnostic.cc (diagnostic_initialize):
	Initialize report_bug flag.
	(diagnostic_action_after_output):
	Explain that -freport-bug option can be used for pre-processed
	file creation.  Make the message shorter.
	(error_recursion): Rename Internal to internal.
	* diagnostic.h (struct diagnostic_context): New field.
	* opts.cc (common_handle_option): Init the field here.

2022-01-27  Kewen Lin  <linkw@linux.ibm.com>

	PR target/103702
	* config/rs6000/rs6000.cc
	(rs6000_cost_data::update_target_cost_per_stmt): Fix one wrong
	assertion with early return.

2022-01-27  Chung-Lin Tang  <cltang@codesourcery.com>

	PR middle-end/103642
	* gimplify.cc (gimplify_scan_omp_clauses): Do not do indir_p handling
	for non-pointer or non-reference-to-pointer cases.

2022-01-27  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/104196
	* gimple-fold.h (rewrite_to_defined_overflow): Add IN_PLACE argument.
	* gimple-fold.cc (rewrite_to_defined_overflow): Likewise.  If true,
	return NULL and emit needed stmts before and after stmt.
	* tree-ssa-reassoc.cc (update_range_test): For inter-bb range opt
	pick as operand_entry that will hold the merged test the one feeding
	earliest condition, ensure that by swapping range->idx with some
	other range's idx if needed.  If seq is non-NULL, don't actually swap
	it but instead rewrite stmts with undefined overflow in between
	the two locations.
	(maybe_optimize_range_tests): Set ops[]->id to bb->index with the
	corresponding condition even if they have non-NULL ops[]->op.
	Formatting fix.

2022-01-26  Jakub Jelinek  <jakub@redhat.com>

	PR target/104239
	* config/rs6000/emmintrin.h (_mm_sad_epu8): Use __asm__ instead of
	asm.
	* config/rs6000/smmintrin.h (_mm_minpos_epu16): Declare iterator
	before for loop instead of for init clause.
	* config/rs6000/bmi2intrin.h (_pext_u64): Likewise.

2022-01-26  Jakub Jelinek  <jakub@redhat.com>

	PR target/104239
	* config/rs6000/bmiintrin.h: Test _X86GPRINTRIN_H_INCLUDED instead of
	_X86INTRIN_H_INCLUDED and adjust #error wording.
	* config/rs6000/bmi2intrin.h: Likewise.

2022-01-26  Jakub Jelinek  <jakub@redhat.com>

	PR debug/104194
	* dwarf2out.cc (long_double_as_float128): New function.
	(modified_type_die): For powerpc64le IEEE 754 quad long double
	and complex long double emit those as DW_TAG_typedef to
	_Float128 or complex _Float128 base type.

2022-01-26  Marek Polacek  <polacek@redhat.com>

	PR target/104213
	* gimple-ssa-warn-access.cc (pass_waccess::warn_invalid_pointer): Don't
	warn when the SSA_NAME_VAR of REF has supressed -Wuse-after-free.

2022-01-26  Martin Liska  <mliska@suse.cz>

	* ipa-modref-tree.cc (modref_access_node::update):
	Remove "--param param=foo" with "--param foo".
	(modref_access_node::insert): Likewise.
	(modref_access_node::insert_kill): Likewise.
	* ipa-modref-tree.h (struct modref_ref_node): Likewise.
	(struct modref_base_node): Likewise.
	(struct modref_tree): Likewise.

2022-01-26  Raoni Fassina Firmino  <raoni@linux.ibm.com>

	PR target/94193
	* builtins.cc (expand_builtin_feclear_feraise_except): Add op0
	predicate check.

2022-01-25  Martin Sebor  <msebor@redhat.com>

	PR tree-optimization/104203
	* gimple-ssa-warn-access.cc (pass_data pass_data_waccess): Use
	TV_WARN_ACCESS.
	* pointer-query.cc (access_ref::merge_ref): Change return type.
	Convert failure to a conservative success.
	(access_ref::get_ref): Adjust to the change above.  Short-circuit
	PHI evaluation after first failure turned into conservative success.
	* pointer-query.h (access_ref::merge_ref): Change return type.
	* timevar.def (TV_WARN_ACCESS): New timer variable.

2022-01-25  David Edelsohn  <dje.gcc@gmail.com>

	* config/rs6000/aix.h (OPTION_GLIBC): Define as 0.

2022-01-25  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/104214
	* tree-ssa-loop-niter.cc (number_of_iterations_cond): Use
	stronger guarantees for relational pointer compares when
	rewriting BASE0 + STEP0 cmp BASE1 + STEP1 as
	BASE0 + STEP0 - STEP1 cmp BASE1.

2022-01-25  Jakub Jelinek  <jakub@redhat.com>

	PR target/104172
	* config/rs6000/rs6000-internal.h (rs6000_passes_ieee128): Don't
	declare.
	* config/rs6000/rs6000.cc (rs6000_passes_ieee128,
	ieee128_mangling_gcc_8_1): Remove.
	(TARGET_ASM_GLOBALIZE_DECL_NAME): Don't redefine.
	(rs6000_mangle_type): Return "u9__ieee128" instead of
	ieee128_mangling_gcc_8_1 ? "U10__float128" : "u9__ieee128".
	(rs6000_globalize_decl_name): Remove.
	* config/rs6000/rs6000-call.cc (init_cumulative_args,
	rs6000_function_arg_advance_1): Don't set rs6000_passes_ieee128.

2022-01-24  Martin Sebor  <msebor@redhat.com>

	* pointer-query.cc (pointer_query::dump): Remove duplicate
	block.

2022-01-24  Marek Polacek  <polacek@redhat.com>

	PR preprocessor/104030
	* doc/invoke.texi: Update documentation for -Wbidi-chars.

2022-01-24  Raoni Fassina Firmino  <raoni@linux.ibm.com>

	PR target/94193
	* builtins.cc (expand_builtin_fegetround): New function.
	(expand_builtin_feclear_feraise_except): New function.
	(expand_builtin): Add cases for BUILT_IN_FEGETROUND,
	BUILT_IN_FECLEAREXCEPT and BUILT_IN_FERAISEEXCEPT.
	* config/rs6000/rs6000.md (fegetroundsi): New pattern.
	(feclearexceptsi): New Pattern.
	(feraiseexceptsi): New Pattern.
	* doc/extend.texi: Add a new introductory paragraph about the
	new builtins.
	* doc/md.texi: (fegetround@var{m}): Document new optab.
	(feclearexcept@var{m}): Document new optab.
	(feraiseexcept@var{m}): Document new optab.
	* optabs.def (fegetround_optab): New optab.
	(feclearexcept_optab): New optab.
	(feraiseexcept_optab): New optab.

2022-01-24  Richard Biener  <rguenther@suse.de>
	    Jiufu Guo  <guojiufu@linux.ibm.com>

	PR tree-optimization/100740
	PR tree-optimization/101508
	PR tree-optimization/101972
	PR tree-optimization/102131
	* tree-ssa-loop-niter.cc (number_of_iterations_cond): Properly
	constrain BASE0 + STEP0 cmp BASE1 + STEP1 to
	BASE0 + STEP0 - STEP1 cmp BASE1 transform.

2022-01-24  Jakub Jelinek  <jakub@redhat.com>

	PR sanitizer/104158
	* opt-functions.awk (var_set): Handle EnumBitSet property.
	* optc-gen.awk: Don't disallow RejectNegative if EnumBitSet is
	specified.
	* opts.h (enum cl_enum_var_value): New type.
	* opts-common.cc (decode_cmdline_option): Use CLEV_* values.
	Handle CLEV_BITSET.
	(cmdline_handle_error): Handle CLEV_BITSET.
	* opts.cc (test_enum_sets): Also test EnumBitSet requirements.
	* doc/options.texi (EnumBitSet): Document.
	* common.opt (fsanitize-coverage=): Use EnumBitSet instead of
	EnumSet.
	(trace-pc, trace-cmp): Drop Set properties.

2022-01-24  Jakub Jelinek  <jakub@redhat.com>

	PR sanitizer/104158
	* common.opt (flag_sanitize_coverage): Remove Variable entry.
	(fsanitize-coverage=): Remove RejectNegative property, add
	Var(flag_sanitize_coverage) and EnumSet properties.
	(trace-pc): Add Set(1) property.
	(trace-cmp): Add Set(2) property.
	* opts.cc (common_handle_option): Don't handle
	OPT_fsanitize_coverage_.

2022-01-24  Jakub Jelinek  <jakub@redhat.com>

	PR sanitizer/104158
	* opt-functions.awk (var_set): Handle EnumSet property.
	* optc-gen.awk: Don't disallow RejectNegative if EnumSet is
	specified.
	* opt-read.awk: Handle Set property.
	* opts.h (CL_ENUM_SET_SHIFT, CL_ERR_ENUM_SET_ARG): Define.
	(struct cl_decoded_option): Mention enum in value description.
	Add mask member.
	(set_option): Add mask argument defaulted to 0.
	* opts.cc (test_enum_sets): New function.
	(opts_cc_tests): Call it.
	* opts-common.cc (enum_arg_to_value): Change return argument
	from bool to int, on success return index into the cl_enum_arg
	array, on failure -1.  Add len argument, if non-0, use strncmp
	instead of strcmp.
	(opt_enum_arg_to_value): Adjust caller.
	(decode_cmdline_option): Handle EnumSet represented as
	CLVC_ENUM with non-zero var_value.  Initialize decoded->mask.
	(decode_cmdline_options_to_array): CLear opt_array[0].mask.
	(handle_option): Pass decoded->mask to set_options last argument.
	(generate_option): Clear decoded->mask.
	(generate_option_input_file): Likewise.
	(cmdline_handle_error): Handle CL_ERR_ENUM_SET_ARG.
	(set_option): Add mask argument, use it for CLVC_ENUM.
	(control_warning_option): Adjust enum_arg_to_value caller.
	* doc/options.texi: Document Set and EnumSet properties.

2022-01-24  Jakub Jelinek  <jakub@redhat.com>

	PR bootstrap/104170
	* config/linux.h (OPTION_GLIBC_P, OPTION_UCLIBC_P,
	OPTION_BIONIC_P, OPTION_MUSL_P): Define.
	(OPTION_GLIBC, OPTION_UCLIBC, OPTION_BIONIC, OPTION_MUSL): Redefine
	using OPTION_*_P macros.
	* config/alpha/linux.h (OPTION_GLIBC_P, OPTION_UCLIBC_P,
	OPTION_BIONIC_P, OPTION_MUSL_P): Define.
	(OPTION_GLIBC, OPTION_UCLIBC, OPTION_BIONIC, OPTION_MUSL): Redefine
	using OPTION_*_P macros.
	* config/rs6000/linux.h (OPTION_GLIBC_P, OPTION_UCLIBC_P,
	OPTION_BIONIC_P, OPTION_MUSL_P): Define.
	(OPTION_GLIBC, OPTION_UCLIBC, OPTION_BIONIC, OPTION_MUSL): Redefine
	using OPTION_*_P macros.
	* config/rs6000/linux64.h (OPTION_GLIBC_P, OPTION_UCLIBC_P,
	OPTION_BIONIC_P, OPTION_MUSL_P): Define.
	(OPTION_GLIBC, OPTION_UCLIBC, OPTION_BIONIC, OPTION_MUSL): Redefine
	using OPTION_*_P macros.
	* config/fuchsia.h (OPTION_MUSL_P): Redefine.
	* config/glibc-stdint.h (OPTION_MUSL_P): Define if not defined.
	* common/config/s390/s390-common.cc (s390_supports_split_stack): Re-add
	ATTRIBUTE_UNUSED to opts parameter.  If OPTION_GLIBC_P is defined, use
	OPTION_GLIBC_P (opts) as condition, otherwise assume if (false).
	* common/config/i386/i386-common.cc (ix86_supports_split_stack): If
	OPTION_GLIBC_P is defined use !OPTION_GLIBC_P (opts) as condition,
	otherwise assume if (true).

2022-01-24  Kito Cheng  <kito.cheng@sifive.com>

	* common/config/riscv/riscv-common.cc (riscv_subset_list::to_string):
	Skip zicsr and zifencei if I-ext is 2.0.

2022-01-24  Jia-Wei Chen  <jiawei@iscas.ac.cn>

	* config.gcc: Modify default isa_spec version.

2022-01-24  Jiufu Guo  <guojiufu@linux.ibm.com>

	PR tree-optimization/102087
	* tree-ssa-loop-niter.cc (number_of_iterations_until_wrap):
	Correct PLUS result type.

2022-01-24  H.J. Lu  <hjl.tools@gmail.com>

	PR target/104188
	* config/i386/predicates.md (bcst_mem_operand): Also check mode
	of memory broadcast.

2022-01-23  Andrew Pinski  <apinski@marvell.com>

	PR target/64821
	* config/aarch64/aarch64-builtins.cc
	(aarch64_general_gimple_fold_builtin): Handle
	__builtin_aarch64_sqrt* and simplify into SQRT internal
	function.

2022-01-22  Jakub Jelinek  <jakub@redhat.com>

	PR other/104176
	* opts-global.cc (handle_common_deferred_options): Quote
	--enable-plugin in diagnostics to avoid -Werror=format-diag.

2022-01-21  Michael Meissner  <meissner@the-meissners.org>

	PR target/104136
	* config/rs6000/rs6000-protos.h (prefixed_xxsplti_p): Delete.
	* config/rs6000/rs6000.cc (prefixed_xxsplti_p): Delete.
	* config/rs6000/rs6000.md (prefixed attribute): Delete section
	that sets the prefixed attribute for xxspltiw, xxspltidp, and
	xxsplti32dx instructions.
	(movsf_hardfloat): Explicitly set the prefixed attribute
	when xxspltiw and xxspltidp instructions are generated.
	(mov<mode>_hardfloat32): Likewise.
	(mov<mode>_hardfloat64): Likewise.
	* config/rs6000/vsx.md (vsx_mov<mode>_64bit): Explicitly set the
	prefixed attribute for xxspltiw and xxspltidp instructions.
	(vsx_mov<mode>_32bit): Likewise.

2022-01-21  H.J. Lu  <hjl.tools@gmail.com>

	PR bootstrap/104170
	* common/config/i386/i386-common.cc (ix86_supports_split_stack):
	Return true only on glibc.
	* config/i386/gnu-user-common.h (STACK_CHECK_STATIC_BUILTIN):
	Revert commit c163647ffbc.
	* config/i386/gnu.h (TARGET_LIBC_PROVIDES_SSP): Likewise.

2022-01-21  Sören Tempel  <soeren@soeren-tempel.net>

	* common/config/s390/s390-common.cc (s390_supports_split_stack):
	Only support split-stack on glibc targets.
	* config/i386/gnu-user-common.h (STACK_CHECK_STATIC_BUILTIN): Ditto.
	* config/i386/gnu.h (defined): Ditto.

2022-01-21  Bill Schmidt  <wschmidt@linux.ibm.com>

	* config/rs6000/rs6000-overload.def (VEC_SLDW): Add instances for
	vector float and vector double.

2022-01-21  Bill Seurer  <seurer@gcc.gnu.org>

	* config/rs6000/rs6000.cc (rs6000_get_function_versions_dispatcher):
	Fix mention of ifunc in string.

2022-01-21  Roger Sayle  <roger@nextmovesoftware.com>

	PR middle-end/104140
	* tree-ssa-math-opts.cc (convert_mult_to_highpart): Check that the
	operands of the widening multiplication are either both signed or
	both unsigned, and abort the conversion if mismatched.
	* doc/generic.texi (WIDEN_MULT_EXPR): Describe expression node.
	(MULT_HIGHPART_EXPR): Clarify that operands must have the same
	signedness.
	* tree.def (MULT_HIGHPART_EXPR): Document both operands must have
	integer types with the same precision and signedness.
	(WIDEN_MULT_EXPR): Document that operands must have integer types
	with the same precision, but possibly differing signedness.
	* config/riscv/riscv-c.cc (riscv_cpu_cpp_builtins): Defend against
	riscv_current_subset_list returning a NULL pointer (empty list).

2022-01-21  Vladimir N. Makarov  <vmakarov@redhat.com>

	PR target/103676
	* ira.h (struct target_ira): Add member
	x_ira_exclude_class_mode_regs.
	(ira_exclude_class_mode_regs): New macro.
	* lra.h (lra_create_new_reg): Add arg exclude_start_hard_regs and
	move from here ...
	* lra-int.h: ... to here.
	(lra_create_new_reg_with_unique_value): Add arg
	exclude_start_hard_regs.
	(class lra_reg): Add member exclude_start_hard_regs.
	* lra-assigns.cc (find_hard_regno_for_1): Setup
	impossible_start_hard_regs from exclude_start_hard_regs.
	* lra-constraints.cc (get_reload_reg): Add arg exclude_start_hard_regs and pass
	it lra_create_new_reg[_with_unique_value].
	(match_reload): Ditto.
	(check_and_process_move): Pass NULL
	exclude_start_hard_regs to lra_create_new_reg_with_unique_value.
	(goal_alt_exclude_start_hard_regs): New static variable.
	(process_addr_reg, simplify_operand_subreg): Pass NULL
	exclude_start_hard_regs to lra_create_new_reg_with_unique_value
	and get_reload_reg.
	(process_alt_operands): Setup goal_alt_exclude_start_hard_regs.
	Use this_alternative_exclude_start_hard_regs additionally to find
	winning operand alternative.
	(base_to_reg, base_plus_disp_to_reg, index_part_to_reg): Pass NULL
	exclude_start_hard_regs to lra_create_new_reg.
	(process_address_1, emit_inc): Ditto.
	(curr_insn_transform): Pass exclude_start_hard_regs value to
	lra_create_new_reg, get_reload_reg, match_reload.
	(inherit_reload_reg, split_reg): Pass NULL exclude_start_hard_regs
	to lra_create_new_reg.
	(process_invariant_for_inheritance): Ditto.
	* lra-remat.cc (update_scratch_ops): Ditto.
	* lra.cc (lra_create_new_reg_with_unique_value): Add arg
	exclude_start_hard_regs.  Setup the corresponding member of
	lra reg info.
	(lra_create_new_reg): Add arg exclude_start_hard_regs and pass it
	to lra_create_new_reg_with_unique_value.
	(initialize_lra_reg_info_element): Initialize member
	exclude_start_hard_regs.
	(get_scratch_reg): Pass NULL to lra_create_new_reg.
	* ira.cc (setup_prohibited_class_mode_regs): Rename to
	setup_prohibited_and_exclude_class_mode_regs and calculate
	ira_exclude_class_mode_regs.

2022-01-21  Martin Liska  <mliska@suse.cz>

	* configure.ac: Detect ld_is_mold and use it for
	comdat_group=yes and gcc_cv_ld_hidden=yes.
	* configure: Regenerate.

2022-01-21  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/100089
	* tree-vect-slp.cc (vect_slp_region): Reject BB vectorization
	of if-converted loops with unvectorized COND_EXPRs for
	all but the unlimited cost models.

2022-01-21  Ard Biesheuvel  <ardb@kernel.org>

	* config/arm/arm-opts.h (enum stack_protector_guard): New.
	* config/arm/arm-protos.h (arm_stack_protect_tls_canary_mem):
	New.
	* config/arm/arm.cc (TARGET_STACK_PROTECT_GUARD): Define.
	(arm_option_override_internal): Handle and put in error checks.
	for stack protector guard options.
	(arm_option_reconfigure_globals): Likewise.
	(arm_stack_protect_tls_canary_mem): New.
	(arm_stack_protect_guard): New.
	* config/arm/arm.md (stack_protect_set): New.
	(stack_protect_set_tls): Likewise.
	(stack_protect_test): Likewise.
	(stack_protect_test_tls): Likewise.
	(reload_tp_hard): Likewise.
	* config/arm/arm.opt (-mstack-protector-guard): New
	(-mstack-protector-guard-offset): New.
	* doc/invoke.texi: Document new options.

2022-01-21  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/104156
	* tree-ssa-loop-unswitch.cc (tree_unswitch_outer_loop):
	Collect and reset debug stmts with out-of-loop uses when
	hoisting guards.
	(find_loop_guard): Adjust.
	(empty_bb_without_guard_p): Likewise.  Ignore debug stmts.
	(used_outside_loop_p): Push debug uses to a vector of
	debug stmts to reset.
	(hoist_guard): Adjust -fopt-info category.

2022-01-21  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/104152
	* tree-vect-slp.cc (vect_build_slp_tree_2): Add missing
	can_duplicate_and_interleave_p check.

2022-01-21  Jakub Jelinek  <jakub@redhat.com>

	* gimple-ssa-warn-access.cc (pass_waccess::warn_invalid_pointer):
	Avoid passing var to warning_at when the format string doesn't
	refer to it.

2022-01-21  Aldy Hernandez  <aldyh@redhat.com>

	PR tree-optimization/103721
	* gimple-range-path.cc
	(path_range_query::relations_may_be_invalidated): New.
	(path_range_query::compute_ranges_in_block): Reset relations if
	they may be invalidated.
	(path_range_query::maybe_register_phi_relation): Exit if relations
	may be invalidated on incoming edge.
	(path_range_query::compute_phi_relations): Pass incoming PHI edge
	to maybe_register_phi_relation.
	* gimple-range-path.h (relations_may_be_invalidated): New.
	(maybe_register_phi_relation): Pass edge instead of tree.
	* tree-ssa-threadbackward.cc (back_threader::back_threader):
	Mark DFS edges.
	* value-relation.cc (path_oracle::path_oracle): Call
	mark_dfs_back_edges.
	(path_oracle::register_relation): Add SSA names to m_registered
	bitmap.
	(path_oracle::reset_path): Clear m_registered bitmap.
	* value-relation.h (path_oracle::set_root_oracle): New.

2022-01-21  Jakub Jelinek  <jakub@redhat.com>

	PR rtl-optimization/102478
	* optabs.cc (prepare_cmp_insn): If !can_create_pseudo_p (), don't
	force_reg constants and for -fnon-call-exceptions fail if copy_to_reg
	would be needed.

2022-01-20  Richard Biener  <rguenther@suse.de>

	PR middle-end/100786
	* gimple-fold.cc (get_symbol_constant_value): Only return
	values of compatible type to the symbol.

2022-01-20  Andrew MacLeod  <amacleod@redhat.com>

	* value-relation.cc (relation_oracle::valid_equivs): Query and add
	if valid members of a set.
	(equiv_oracle::register_equiv): Call valid_equivs rather than
	bitmap direct operations.
	(path_oracle::register_equiv): Ditto.
	* value-relation.h (relation_oracle::valid_equivs): New prototype.

2022-01-20  Richard Biener  <rguenther@suse.de>

	PR target/100784
	* config/i386/i386.cc (ix86_gimple_fold_builtin): Check for
	LHS before folding __builtin_ia32_shufpd and friends.

2022-01-20  Richard Earnshaw  <rearnsha@arm.com>

	* config/arm/crypto.md (aes_op_protect): Allow moves from core
	registers and from memory.
	(aes_op_protect_misalign_load): New pattern.
	(aes_op_protect_neon_vld1v16qi): New pattern.

2022-01-20  Richard Earnshaw  <rearnsha@arm.com>

	* config/arm/crypto.md (crypto_<CRYPTO_AESMC:crypto_pattern>_protected):
	New pattern.
	(aarch32_crypto_aese_fused_protected): Likewise.
	(aarch32_crypto_aesd_fused_protected): Likewise.

2022-01-20  Richard Earnshaw  <rearnsha@arm.com>

	* config/arm/crypto.md (crypto_<CRYPTO_AES:crypto_pattern>): Convert
	to define_expand.  Add mitigation for the Cortex-A AES erratum
	when enabled.
	(*crypto_<CRYPTO_AES:crypto_pattern>_insn): New pattern, based
	on original crypto_<CRYPTO_AES:crypto_pattern> insn.
	(aes_op_protect): New pattern.
	* config/arm/unspecs.md (unspec): Add UNSPEC_AES_PROTECT.

2022-01-20  Richard Earnshaw  <rearnsha@arm.com>

	* config/arm/arm-cpus.in (quirk_aes_1742098): New quirk feature
	(ALL_QUIRKS): Add it.
	(cortex-a57, cortex-a72): Enable it.
	(cortex-a57.cortex-a53, cortex-a72.cortex-a53): Likewise.
	* config/arm/arm.opt (mfix-cortex-a57-aes-1742098): New command-line
	option.
	(mfix-cortex-a72-aes-1655431): New option alias.
	* config/arm/arm.cc (arm_option_override): Handle default settings
	for AES erratum switch.
	* doc/invoke.texi (Arm Options): Document new options.

2022-01-20  Richard Earnshaw  <rearnsha@arm.com>

	* config/arm/crypto.md (crypto_<CYRPTO_AES:crypto_pattern>): Use
	<crypto_mode> rather than hard-coding the mode.
	(crypto_<CRYPTO_AESMC:crypto_pattern>): Fix white space.
	(crypto_<CRYPTO_AES:crypto_pattern>): Likewise.
	(*aarch32_crypto_aese_fused): Likewise.
	(*aarch32_crypto_aesd_fused): Likewise.
	(crypto_<CRYPTO_BINARY:crypto_pattern>): Likewise.
	(crypto_<CRYPTO_TERNARY:crypto_pattern>): Likewise.
	(crypto_sha1h_lb): Likewise.
	(crypto_vmullp64): Likewise.
	(crypto_<CRYPTO_SELECTING:crypto_pattern>): Likewise.
	(crypto_<CRYPTO_SELECTING:crypto_pattern>_lb): Likewise.

2022-01-20  Richard Earnshaw  <rearnsha@arm.com>

	* config/arm/crypto.md (crypto_<CRYPTO_AESMC:crypto_pattern>): Add
	iterator to pattern name to disambiguate.
	(crypto_<CRYPTO_AES:crypto_pattern>): Likewise.
	(crypto_<CRYPTO_BINARY:crypto_pattern>): Likewise.
	(crypto_<CRYPTO_TERNARY:crypto_pattern>): Likewise.
	(crypto_<CRYPTO_SELECTING:crypto_pattern>): Likewise.
	(crypto_<CRYPTO_SELECTING:crypto_pattern>_lb): Likewise.

2022-01-20  Martin Liska  <mliska@suse.cz>

	PR bootstrap/104135
	* emit-rtl.cc (make_insn_raw): Fix -Wformat-diag warnings.
	* rtl.cc: Partially disable -Wformat-diag for RTL checking
	error messages.

2022-01-20  Jakub Jelinek  <jakub@redhat.com>

	PR debug/103874
	* dwarf2out.cc (index_rnglists): For !HAVE_AS_LEB128 and
	block_num > 0, index entry even if !have_multiple_function_sections.

2022-01-20  liuhongt  <hongtao.liu@intel.com>

	PR target/103771
	* tree-vect-stmts.cc (supportable_narrowing_operation): Enhance
	integral mode mask pack by multi steps which takes
	vec_pack_sbool_trunc_optab as start when elements number is
	less than BITS_PER_UNITS.

2022-01-20  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/104114
	* tree-vect-generic.cc (expand_vector_piecewise): Do not diagnose
	single element vector decomposition.

2022-01-19  Robin Dapp  <rdapp@linux.ibm.com>

	* ifcvt.cc (noce_convert_multiple_sets_1): New function.
	(noce_convert_multiple_sets): Call function a second time if we can
	improve the first try.

2022-01-19  Robin Dapp  <rdapp@linux.ibm.com>

	* ifcvt.cc (cond_exec_get_condition): New parameter to allow getting the
	reversed comparison.
	(try_emit_cmove_seq): New function to facilitate creating a cmov
	sequence.
	(noce_convert_multiple_sets): Create two sequences and use the less
	expensive one.

2022-01-19  Robin Dapp  <rdapp@linux.ibm.com>

	* rtl.h (struct rtx_comparison): New struct that holds an rtx
	comparison.
	* config/rs6000/rs6000.cc (rs6000_emit_minmax): Use struct instead of
	single parameters.
	(rs6000_emit_swsqrt): Likewise.
	* expmed.cc (expand_sdiv_pow2): Likewise.
	(emit_store_flag): Likewise.
	* expr.cc (expand_cond_expr_using_cmove): Likewise.
	(expand_expr_real_2): Likewise.
	* ifcvt.cc (noce_emit_cmove): Add compare and reversed compare
	parameters.
	* optabs.cc (emit_conditional_move_1): New function.
	(expand_doubleword_shift_condmove): Use struct.
	(emit_conditional_move): Use struct and allow to call directly
	without going through preparation steps.
	* optabs.h (emit_conditional_move): Use struct.

2022-01-19  Robin Dapp  <rdapp@linux.ibm.com>

	* ifcvt.cc (bb_ok_for_noce_convert_multiple_sets): Estimate insns costs.
	(noce_process_if_block): Use potential costs.

2022-01-19  Robin Dapp  <rdapp@linux.ibm.com>

	* ifcvt.cc (noce_convert_multiple_sets): Allow constants.
	(bb_ok_for_noce_convert_multiple_sets): Likewise.

2022-01-19  Robin Dapp  <rdapp@linux.ibm.com>

	* ifcvt.cc (need_cmov_or_rewire): New function.
	(noce_convert_multiple_sets): Call it.

2022-01-19  David Malcolm  <dmalcolm@redhat.com>

	* attribs.cc (attribute_c_tests): Rename to...
	(attribs_cc_tests): ...this.
	* bitmap.cc (bitmap_c_tests): Rename to...
	(bitmap_cc_tests): ...this.
	* cgraph.cc (cgraph_c_finalize): Rename to...
	(cgraph_cc_finalize): ...this.
	(cgraph_c_tests): Rename to...
	(cgraph_cc_tests): ...this.
	* cgraph.h (cgraph_c_finalize): Rename to...
	(cgraph_cc_finalize): ...this.
	(cgraphunit_c_finalize): Rename to...
	(cgraphunit_cc_finalize): ...this.
	* cgraphunit.cc (cgraphunit_c_finalize): Rename to...
	(cgraphunit_cc_finalize): ...this.
	* convert.cc (convert_c_tests): Rename to...
	(convert_cc_tests): ...this.
	* dbgcnt.cc (dbgcnt_c_tests): Rename to...
	(dbgcnt_cc_tests): ...this.
	* diagnostic-show-locus.cc (diagnostic_show_locus_c_tests): Rename to...
	(diagnostic_show_locus_cc_tests): ...this.
	* diagnostic.cc (diagnostic_c_tests): Rename to...
	(diagnostic_cc_tests): ...this.
	* dumpfile.cc (dumpfile_c_tests): Rename to...
	(dumpfile_cc_tests): ...this.
	* dwarf2out.cc (dwarf2out_c_finalize): Rename to...
	(dwarf2out_cc_finalize): ...this.
	* dwarf2out.h (dwarf2out_c_finalize): Rename to...
	(dwarf2out_cc_finalize): ...this.
	* edit-context.cc (edit_context_c_tests): Rename to...
	(edit_context_cc_tests): ...this.
	* et-forest.cc (et_forest_c_tests): Rename to...
	(et_forest_cc_tests): ...this.
	* fibonacci_heap.cc (fibonacci_heap_c_tests): Rename to...
	(fibonacci_heap_cc_tests): ...this.
	* fold-const.cc (fold_const_c_tests): Rename to...
	(fold_const_cc_tests): ...this.
	* function-tests.cc (function_tests_c_tests): Rename to...
	(function_tests_cc_tests): ...this.
	* gcse.cc (gcse_c_finalize): Rename to...
	(gcse_cc_finalize): ...this.
	* gcse.h (gcse_c_finalize): Rename to...
	(gcse_cc_finalize): ...this.
	* ggc-tests.cc (ggc_tests_c_tests): Rename to...
	(ggc_tests_cc_tests): ...this.
	* gimple-ssa-store-merging.cc (store_merging_c_tests): Rename to...
	(store_merging_cc_tests): ...this.
	* gimple.cc (gimple_c_tests): Rename to...
	(gimple_cc_tests): ...this.
	* hash-map-tests.cc (hash_map_tests_c_tests): Rename to...
	(hash_map_tests_cc_tests): ...this.
	* hash-set-tests.cc (hash_set_tests_c_tests): Rename to...
	(hash_set_tests_cc_tests): ...this.
	* input.cc (input_c_tests): Rename to...
	(input_cc_tests): ...this.
	* ipa-cp.cc (ipa_cp_c_finalize): Rename to...
	(ipa_cp_cc_finalize): ...this.
	* ipa-fnsummary.cc (ipa_fnsummary_c_finalize): Rename to...
	(ipa_fnsummary_cc_finalize): ...this.
	* ipa-fnsummary.h (ipa_fnsummary_c_finalize): Rename to...
	(ipa_fnsummary_cc_finalize): ...this.
	* ipa-modref-tree.cc (ipa_modref_tree_c_tests): Rename to...
	(ipa_modref_tree_cc_tests): ...this.
	* ipa-modref-tree.h (modref_c_tests): Delete bogus decl.
	* ipa-modref.cc (ipa_modref_c_finalize): Rename to...
	(ipa_modref_cc_finalize): ...this.
	* ipa-modref.h (ipa_modref_c_finalize): Rename to...
	(ipa_modref_cc_finalize): ...this.
	* ipa-prop.h (ipa_cp_c_finalize): Rename to...
	(ipa_cp_cc_finalize): ...this.
	* ipa-reference.cc (ipa_reference_c_finalize): Rename to...
	(ipa_reference_cc_finalize): ...this.
	* ipa-reference.h (ipa_reference_c_finalize): Rename to...
	(ipa_reference_cc_finalize): ...this.
	* ira-costs.cc (ira_costs_c_finalize): Rename to...
	(ira_costs_cc_finalize): ...this.
	* ira.h (ira_costs_c_finalize): Rename to...
	(ira_costs_cc_finalize): ...this.
	* opt-suggestions.cc (opt_proposer_c_tests): Rename to...
	(opt_suggestions_cc_tests): ...this.
	* opts.cc (opts_c_tests): Rename to...
	(opts_cc_tests): ...this.
	* predict.cc (predict_c_tests): Rename to...
	(predict_cc_tests): ...this.
	* pretty-print.cc (pretty_print_c_tests): Rename to...
	(pretty_print_cc_tests): ...this.
	* read-rtl-function.cc (read_rtl_function_c_tests): Rename to...
	(read_rtl_function_cc_tests): ...this.
	* rtl-tests.cc (rtl_tests_c_tests): Rename to...
	(rtl_tests_cc_tests): ...this.
	* sbitmap.cc (sbitmap_c_tests): Rename to...
	(sbitmap_cc_tests): ...this.
	* selftest-run-tests.cc (selftest::run_tests): Update calls for
	_c_ to _cc_ function renamings; fix names of attribs and
	opt-suggestions tests.
	* selftest.cc (selftest_c_tests): Rename to...
	(selftest_cc_tests): ...this.
	* selftest.h (attribute_c_tests): Rename to...
	(attribs_cc_tests): ...this.
	(bitmap_c_tests): Rename to...
	(bitmap_cc_tests): ...this.
	(cgraph_c_tests): Rename to...
	(cgraph_cc_tests): ...this.
	(convert_c_tests): Rename to...
	(convert_cc_tests): ...this.
	(diagnostic_c_tests): Rename to...
	(diagnostic_cc_tests): ...this.
	(diagnostic_show_locus_c_tests): Rename to...
	(diagnostic_show_locus_cc_tests): ...this.
	(dumpfile_c_tests): Rename to...
	(dumpfile_cc_tests): ...this.
	(edit_context_c_tests): Rename to...
	(edit_context_cc_tests): ...this.
	(et_forest_c_tests): Rename to...
	(et_forest_cc_tests): ...this.
	(fibonacci_heap_c_tests): Rename to...
	(fibonacci_heap_cc_tests): ...this.
	(fold_const_c_tests): Rename to...
	(fold_const_cc_tests): ...this.
	(function_tests_c_tests): Rename to...
	(function_tests_cc_tests): ...this.
	(ggc_tests_c_tests): Rename to...
	(ggc_tests_cc_tests): ...this.
	(gimple_c_tests): Rename to...
	(gimple_cc_tests): ...this.
	(hash_map_tests_c_tests): Rename to...
	(hash_map_tests_cc_tests): ...this.
	(hash_set_tests_c_tests): Rename to...
	(hash_set_tests_cc_tests): ...this.
	(input_c_tests): Rename to...
	(input_cc_tests): ...this.
	(opts_c_tests): Rename to...
	(opts_cc_tests): ...this.
	(predict_c_tests): Rename to...
	(predict_cc_tests): ...this.
	(pretty_print_c_tests): Rename to...
	(pretty_print_cc_tests): ...this.
	(read_rtl_function_c_tests): Rename to...
	(read_rtl_function_cc_tests): ...this.
	(rtl_tests_c_tests): Rename to...
	(rtl_tests_cc_tests): ...this.
	(sbitmap_c_tests): Rename to...
	(sbitmap_cc_tests): ...this.
	(selftest_c_tests): Rename to...
	(selftest_cc_tests): ...this.
	(simplify_rtx_c_tests): Rename to...
	(simplify_rtx_cc_tests): ...this.
	(spellcheck_c_tests): Rename to...
	(spellcheck_cc_tests): ...this.
	(spellcheck_tree_c_tests): Rename to...
	(spellcheck_tree_cc_tests): ...this.
	(sreal_c_tests): Rename to...
	(sreal_cc_tests): ...this.
	(store_merging_c_tests): Rename to...
	(store_merging_cc_tests): ...this.
	(tree_c_tests): Rename to...
	(tree_cc_tests): ...this.
	(tree_cfg_c_tests): Rename to...
	(tree_cfg_cc_tests): ...this.
	(typed_splay_tree_c_tests): Rename to...
	(typed_splay_tree_cc_tests): ...this.
	(vec_c_tests): Rename to...
	(vec_cc_tests): ...this.
	(vec_perm_indices_c_tests): Rename to...
	(vec_perm_indices_cc_tests): ..this.
	(opt_proposer_c_tests): Rename to...
	(opt_suggestions_cc_tests): ...this.
	(dbgcnt_c_tests): Rename to...
	(dbgcnt_cc_tests): ...this.
	(ipa_modref_tree_c_tests): Rename to...
	(ipa_modref_tree_cc_tests): ...this.
	* simplify-rtx.cc (simplify_rtx_c_tests): Rename to...
	(simplify_rtx_cc_tests): ...this.
	* spellcheck-tree.cc (spellcheck_tree_c_tests): Rename to...
	(spellcheck_tree_cc_tests): ...this.
	* spellcheck.cc (spellcheck_c_tests): Rename to...
	(spellcheck_cc_tests): ...this.
	* sreal.cc (sreal_c_tests): Rename to...
	(sreal_cc_tests): ...this.
	* toplev.cc (toplev::finalize): Update calls for _c_ to _cc_
	function renamings.
	* tree-cfg.cc (tree_cfg_c_tests): Rename to...
	(tree_cfg_cc_tests): ...this.
	* tree.cc (tree_c_tests): Rename to...
	(tree_cc_tests): ...this.
	* typed-splay-tree.cc (typed_splay_tree_c_tests): Rename to...
	(typed_splay_tree_cc_tests): ...this.
	* vec-perm-indices.cc (vec_perm_indices_c_tests): Rename to...
	(vec_perm_indices_cc_tests): ...this.
	* vec.cc (vec_c_tests): Rename to...
	(vec_cc_tests): ...this.

2022-01-19  Andre Vieira  <andre.simoesdiasvieira@arm.com>

	PR tree-optimization/103997
	* tree-vect-loop.cc (vect_analyze_loop): Fix mode skipping for epilogue
	vectorization.

2022-01-19  Jakub Jelinek  <jakub@redhat.com>

	PR middle-end/102860
	* match.pd (x %[fl] y -> x % y): New simplification for
	unsigned integral types.
	* optabs-tree.cc (optab_for_tree_code): Return unknown_optab
	for {CEIL,FLOOR,ROUND}_{DIV,MOD}_EXPR with VECTOR_TYPE.

2022-01-19  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/104112
	* tree-vect-loop.cc (vect_find_reusable_accumulator): Check
	for required intermediate vector types.

2022-01-19  Jakub Jelinek  <jakub@redhat.com>

	* config/rs6000/rs6000.cc (rs6000_machine_from_flags): Add default:.

2022-01-19  Martin Liska  <mliska@suse.cz>

	* configure.ac: Remove -Wno-error=format-diag.
	* configure: Regenerate.

2022-01-19  Martin Liska  <mliska@suse.cz>

	* config/riscv/riscv.cc (riscv_handle_type_attribute):
	Update one -Wformat-diag string in warning message.

2022-01-19  Jakub Jelinek  <jakub@redhat.com>

	PR middle-end/104103
	* gimple-ssa-warn-access.cc (pass_waccess::check_call): Don't check
	.ASAN_MARK calls.

2022-01-19  Jakub Jelinek  <jakub@redhat.com>

	PR c++/89074
	* fold-const.cc (address_compare): Consider different STRING_CSTs
	with the same lengths that memcmp the same as equal, not different.

2022-01-19  Jakub Jelinek  <jakub@redhat.com>

	* config/i386/sse.md (*aes<aeswideklvariant>u*): Use %0 instead of
	{%0}.

2022-01-19  Martin Liska  <mliska@suse.cz>
	    Thomas Schwinge  <thomas@codesourcery.com>

	* config/nvptx/nvptx.cc (nvptx_goacc_validate_dims_1): Update
	warning messages.

2022-01-19  Sebastian Huber  <sebastian.huber@embedded-brains.de>

	PR target/104090
	* config/rs6000/rs6000.cc (rs6000_machine_from_flags): Use also
	rs6000_cpu.

2022-01-19  Jakub Jelinek  <jakub@redhat.com>

	PR target/104104
	* config/i386/sse.md
	(<avx512>_<complexopname>_<mode><maskc_name><round_name>,
	avx512fp16_<complexopname>sh_v8hf<mask_scalarc_name><round_scalarcz_name>,
	avx512dq_mul<mode>3<mask_name>, <avx2_avx512>_permvar<mode><mask_name>,
	avx2_perm<mode>_1<mask_name>, avx512f_perm<mode>_1<mask_name>,
	avx512dq_rangep<mode><mask_name><round_saeonly_name>,
	avx512dq_ranges<mode><mask_scalar_name><round_saeonly_scalar_name>,
	<avx512>_getmant<mode><mask_name><round_saeonly_name>,
	avx512f_vgetmant<mode><mask_scalar_name><round_saeonly_scalar_name>):
	Use vxorps\t%x0, %x0, %x0 instead of vxorps\t{%x0, %x0, %x0}.

2022-01-19  Martin Sebor  <msebor@redhat.com>

	PR middle-end/104069
	* gimple-ssa-warn-access.cc (pointers_related_p): Return false for
	an unknown result as documented.

2022-01-18  Andrew Pinski  <apinski@marvell.com>

	* ipa-split.cc (visit_bb): Fix comment before the
	warning/error attribute checking code.

2022-01-18  David Faust  <david.faust@oracle.com>

	* config/bpf/coreout.cc (bpf_core_reloc_add): Do not account
	for base strtab offset yet as it may change.
	(output_asm_btfext_core_reloc): Do so here instead.
	(output_btfext_core_sections): Likewise.

2022-01-18  David Faust  <david.faust@oracle.com>

	* config/bpf/coreout.cc (output_btfext_header): Account for
	4-byte record size in core_relo_len.
	(output_btfext_core_sections): Only write record size once.
	* config/bpf/coreout.h (btf_ext_section_header): Delete unused
	member.

2022-01-18  Maciej W. Rozycki  <macro@embecosm.com>

	* common/config/riscv/riscv-common.cc
	(riscv_subset_list::parse_multiletter_ext): Move pointer
	arithmetic ahead of `free'.

2022-01-18  Jason Merrill  <jason@redhat.com>

	PR c++/104007
	* gimplify.cc (gimple_push_cleanup): Handle eh_only in conditional
	context.

2022-01-18  Sandra Loosemore  <sandra@codesourcery.com>

	PR middle-end/103163
	* emit-rtl.cc (init_emit_regs): Initialize stack_limit_rtx here...
	(init_emit_once): ...not here.

2022-01-18  Martin Liska  <mliska@suse.cz>

	* collect2.cc (scan_libraries): Fix -Wformat-diag issues.
	* config/aarch64/aarch64-builtins.cc (aarch64_simd_expand_builtin): Likewise.
	* config/arc/arc.md: Likewise.
	* config/avr/avr.cc (avr_section_type_flags): Likewise.
	* config/bfin/bfin.cc (bfin_option_override): Likewise.
	(bfin_handle_longcall_attribute): Likewise.
	* config/cris/cris.h (FUNCTION_PROFILER): Likewise.
	* config/frv/frv.cc (frv_expand_builtin): Likewise.
	* config/ia64/ia64-c.cc (ia64_hpux_handle_builtin_pragma): Likewise.
	* config/iq2000/iq2000.cc (save_restore_insns): Likewise.
	(iq2000_print_operand_address): Likewise.
	(iq2000_print_operand): Likewise.
	* config/m32c/m32c-pragma.cc (m32c_pragma_memregs): Likewise.
	(m32c_pragma_address): Likewise.
	* config/m68k/m68k.cc (m68k_handle_fndecl_attribute): Likewise.
	* config/mips/mips.cc (mips_handle_interrupt_attr): Likewise.
	(mips_set_compression_mode): Likewise.
	* config/mmix/mmix.cc (mmix_function_profiler): Likewise.
	(mmix_print_operand): Likewise.
	(mmix_output_shiftvalue_op_from_str): Likewise.
	(mmix_output_shifted_value): Likewise.
	* config/msp430/driver-msp430.cc (msp430_select_hwmult_lib): Likewise.
	* config/msp430/msp430.cc (msp430_option_override): Likewise.
	(msp430_attr): Likewise.
	(msp430_expand_delay_cycles): Likewise.
	(msp430_expand_builtin): Likewise.
	* config/rs6000/aix73.h: Likewise.
	* config/rs6000/rtems.h (INVALID_64BIT): Likewise.
	* config/rx/rx.cc (rx_expand_builtin_mvtc): Likewise.
	(valid_psw_flag): Likewise.
	* config/sh/sh.cc (parse_validate_atomic_model_option): Likewise.
	* config/stormy16/stormy16.cc (xstormy16_function_profiler): Likewise.
	(xstormy16_expand_builtin_va_start): Likewise.
	(xstormy16_handle_below100_attribute): Likewise.

2022-01-18  Martin Liska  <mliska@suse.cz>

	* config/vms/vms-c.cc (vms_pragma_nostandard): Fix -Wformat-diag
	warning.
	(vms_pragma_standard): Likewise.
	(vms_pragma_extern_prefix): Likewise.

2022-01-18  Martin Liska  <mliska@suse.cz>

	* config/xtensa/xtensa.cc (print_operand): Fix warnings.
	(print_operand_address): Likewise.
	(xtensa_multibss_section_type_flags): Likewise.

2022-01-18  Martin Liska  <mliska@suse.cz>

	* config/rs6000/rs6000-call.cc (rs6000_invalid_builtin): Change
	wording of an error message.

2022-01-18  Martin Liska  <mliska@suse.cz>

	* config/v850/v850-c.cc (pop_data_area): Fix -Wformat-diag
	warning.
	(ghs_pragma_section): Likewise.
	(ghs_pragma_interrupt): Likewise.
	(ghs_pragma_starttda): Likewise.
	(ghs_pragma_startsda): Likewise.
	(ghs_pragma_startzda): Likewise.
	(ghs_pragma_endtda): Likewise.
	(ghs_pragma_endsda): Likewise.
	(ghs_pragma_endzda): Likewise.

2022-01-18  Martin Liska  <mliska@suse.cz>

	* config/nds32/nds32-intrinsic.cc (nds32_expand_builtin_impl):
	Fix warnings.
	* config/nds32/nds32-intrinsic.md: Likewise.
	* config/nds32/nds32-isr.cc (nds32_check_isr_attrs_conflict): Likewise.
	* config/nds32/nds32.cc (nds32_print_operand): Likewise.
	(nds32_insert_attributes): Likewise.

2022-01-18  Martin Liska  <mliska@suse.cz>

	* config/nvptx/nvptx.cc (nvptx_goacc_validate_dims_1): Wrap
	keyword.
	* config/nvptx/nvptx.md: Remove trailing dot.

2022-01-18  Martin Liska  <mliska@suse.cz>

	* common/config/riscv/riscv-common.cc (riscv_subset_list::add):
	Wrap keywords with quotes and remove trailing dots.
	(riscv_subset_list::parsing_subset_version): Likewise.
	(riscv_subset_list::parse_std_ext): Likewise.
	(riscv_subset_list::parse_multiletter_ext): Likewise.
	* config/riscv/riscv.cc (riscv_handle_type_attribute): Likewise.

2022-01-18  Andre Vieira  <andre.simoesdiasvieira@arm.com>

	* tree-vect-loop.cc (vect_estimate_min_profitable_iters): Pass new
	argument suggested_unroll_factor.
	(vect_analyze_loop_costing): Likewise.
	(_loop_vec_info::_loop_vec_info): Initialize new member
	suggested_unroll_factor.
	(vect_determine_partial_vectors_and_peeling): Make epilogue of unrolled
	main loop use partial vectors.
	(vect_analyze_loop_2): Pass and use new argument
	suggested_unroll_factor.
	(vect_analyze_loop_1): Change to intialize local
	suggested_unroll_factor and use it.
	(vectorizable_reduction): Don't use single_defuse_cycle when unrolling.
	* tree-vectorizer.h (_loop_vec_info::_loop_vec_info): Add new member
	suggested_unroll_factor.
	(vector_costs::vector_costs): Add new member m_suggested_unroll_factor.
	(vector_costs::suggested_unroll_factor): New getter function.
	(finish_cost): Set return argument suggested_unroll_factor.

2022-01-18  Andrew MacLeod  <amacleod@redhat.com>

	PR tree-optimization/104038
	* doc/invoke.texi (relation-block-limit): New.
	* params.opt (relation-block-limit): New.
	* value-relation.cc (dom_oracle::register_relation): Check for NULL
	record before invoking transitive registery.
	(dom_oracle::set_one_relation): Check limit before creating record.
	(dom_oracle::register_transitives): Stop when no record created.
	* value-relation.h (relation_chain_head::m_num_relations): New.

2022-01-18  Richard Biener  <rguenther@suse.de>

	PR ipa/103989
	* ipa-inline.cc (inline_small_functions): Do not enqueue call
	edges originating in functions compiled with -Og.

2022-01-18  Richard Biener  <rguenther@suse.de>

	PR ipa/103989
	* passes.def (pass_all_optimizations_g): Remove pass_modref
	and pass_local_pure_const.

2022-01-18  Martin Liska  <mliska@suse.cz>

	* config/s390/s390.cc: Fix -Wformat-diag warnings.

2022-01-18  Martin Liska  <mliska@suse.cz>

	* config/s390/s390-c.cc (s390_expand_overloaded_builtin): Wrap
	keyword in quotes.
	(s390_resolve_overloaded_builtin): Remove trailing dot.
	* config/s390/s390.cc (s390_const_operand_ok): Use - for range.
	(s390_expand_builtin): Remove trailing dot.
	(s390_emit_prologue): Likewise, use semicolon.
	(s390_option_override_internal): Update keyword.
	* varasm.cc (do_assemble_alias): Wrap keyword in quotes.

2022-01-18  Martin Liska  <mliska@suse.cz>

	* config/rs6000/rs6000-call.cc (rs6000_expand_builtin): Wrap
	keywords and use %qs instead of %<%s%>.

2022-01-18  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/103987
	* tree-ssa-dse.cc (dse_optimize_call): Properly guard modref
	query with a pointer check.

2022-01-18  Richard Sandiford  <richard.sandiford@arm.com>

	PR target/104005
	* config/aarch64/aarch64.cc (aarch64_check_consecutive_mems):
	When using MEM_EXPR, require the base to be a decl.

2022-01-18  Richard Biener  <rguenther@suse.de>

	* cgraph.h (struct cgraph_simd_clone_arg): Re-arrange fields to
	avoid padding.
	* function.h (struct function): Likewise.

2022-01-18  Arnaud Charlet  <charlet@adacore.com>

	* doc/install.texi: Update prerequisites for GNAT

2022-01-18  Andrew Pinski  <apinski@marvell.com>

	PR tree-optimization/101941
	* ipa-split.cc (visit_bb): Disallow function calls where
	the function has either error or warning attribute.

2022-01-18  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/104064
	* tree-vect-data-refs.cc (vect_analyze_data_ref_accesses): Check
	DR_INIT fits in a signed HWI, represent the difference from the
	first DR in unsigned.

2022-01-17  Martin Liska  <mliska@suse.cz>

	* Makefile.in: Rename .c names to .cc.
	* config.gcc: Likewise.
	* configure: Regenerate. Likewise.
	* configure.ac: Likewise.
	* gengtype.cc (set_gc_used): Likewise.
	(source_dot_c_frul): Likewise.
	(source_dot_cc_frul): Likewise.
	(struct file_rule_st): Likewise.
	(close_output_files): Likewise.
	* config/avr/t-avr: Use CXXFLAGS_* and CXX_FOR_BUILD.

2022-01-17  Martin Liska  <mliska@suse.cz>

	* Makefile.in: Rename .c names to .cc.
	* alias.h: Likewise.
	* asan.cc: Likewise.
	* auto-profile.h: Likewise.
	* basic-block.h (struct basic_block_d): Likewise.
	* btfout.cc: Likewise.
	* builtins.cc (expand_builtin_longjmp): Likewise.
	(validate_arg): Likewise.
	(access_ref::offset_bounded): Likewise.
	* caller-save.cc (reg_restore_code): Likewise.
	(setup_save_areas): Likewise.
	* calls.cc (initialize_argument_information): Likewise.
	(expand_call): Likewise.
	(emit_library_call_value_1): Likewise.
	* cfg-flags.def (RTL): Likewise.
	(SIBCALL): Likewise.
	(CAN_FALLTHRU): Likewise.
	* cfganal.cc (post_order_compute): Likewise.
	* cfgcleanup.cc (try_simplify_condjump): Likewise.
	(merge_blocks_move_predecessor_nojumps): Likewise.
	(merge_blocks_move_successor_nojumps): Likewise.
	(merge_blocks_move): Likewise.
	(old_insns_match_p): Likewise.
	(try_crossjump_bb): Likewise.
	* cfgexpand.cc (expand_gimple_stmt): Likewise.
	* cfghooks.cc (split_block_before_cond_jump): Likewise.
	(profile_record_check_consistency): Likewise.
	* cfghooks.h: Likewise.
	* cfgrtl.cc (pass_free_cfg::execute): Likewise.
	(rtl_can_merge_blocks): Likewise.
	(try_redirect_by_replacing_jump): Likewise.
	(make_pass_outof_cfg_layout_mode): Likewise.
	(cfg_layout_can_merge_blocks_p): Likewise.
	* cgraph.cc (release_function_body): Likewise.
	(cgraph_node::get_fun): Likewise.
	* cgraph.h (struct cgraph_node): Likewise.
	(asmname_hasher::equal): Likewise.
	(cgraph_inline_failed_type): Likewise.
	(thunk_adjust): Likewise.
	(dump_callgraph_transformation): Likewise.
	(record_references_in_initializer): Likewise.
	(ipa_discover_variable_flags): Likewise.
	* cgraphclones.cc (GTY): Likewise.
	* cgraphunit.cc (symbol_table::finalize_compilation_unit): Likewise.
	* collect-utils.h (GCC_COLLECT_UTILS_H): Likewise.
	* collect2-aix.h (GCC_COLLECT2_AIX_H): Likewise.
	* collect2.cc (maybe_run_lto_and_relink): Likewise.
	* combine-stack-adj.cc: Likewise.
	* combine.cc (setup_incoming_promotions): Likewise.
	(combine_simplify_rtx): Likewise.
	(count_rtxs): Likewise.
	* common.opt: Likewise.
	* common/config/aarch64/aarch64-common.cc: Likewise.
	* common/config/arm/arm-common.cc (arm_asm_auto_mfpu): Likewise.
	* common/config/avr/avr-common.cc: Likewise.
	* common/config/i386/i386-isas.h (struct _isa_names_table): Likewise.
	* conditions.h: Likewise.
	* config.gcc: Likewise.
	* config/aarch64/aarch64-builtins.cc (aarch64_resolve_overloaded_memtag): Likewise.
	* config/aarch64/aarch64-protos.h (aarch64_classify_address): Likewise.
	(aarch64_get_extension_string_for_isa_flags): Likewise.
	* config/aarch64/aarch64-sve-builtins.cc (function_builder::add_function): Likewise.
	* config/aarch64/aarch64.cc (aarch64_regmode_natural_size): Likewise.
	(aarch64_sched_first_cycle_multipass_dfa_lookahead): Likewise.
	(aarch64_option_valid_attribute_p): Likewise.
	(aarch64_short_vector_p): Likewise.
	(aarch64_float_const_representable_p): Likewise.
	* config/aarch64/aarch64.h (DBX_REGISTER_NUMBER): Likewise.
	(ASM_OUTPUT_POOL_EPILOGUE): Likewise.
	(GTY): Likewise.
	* config/aarch64/cortex-a57-fma-steering.cc: Likewise.
	* config/aarch64/driver-aarch64.cc (contains_core_p): Likewise.
	* config/aarch64/t-aarch64: Likewise.
	* config/aarch64/x-aarch64: Likewise.
	* config/aarch64/x-darwin: Likewise.
	* config/alpha/alpha-protos.h: Likewise.
	* config/alpha/alpha.cc (alpha_scalar_mode_supported_p): Likewise.
	* config/alpha/alpha.h (LONG_DOUBLE_TYPE_SIZE): Likewise.
	(enum reg_class): Likewise.
	* config/alpha/alpha.md: Likewise.
	* config/alpha/driver-alpha.cc (AMASK_LOCKPFTCHOK): Likewise.
	* config/alpha/x-alpha: Likewise.
	* config/arc/arc-protos.h (arc_eh_uses): Likewise.
	* config/arc/arc.cc (ARC_OPT): Likewise.
	(arc_ccfsm_advance): Likewise.
	(arc_arg_partial_bytes): Likewise.
	(conditionalize_nonjump): Likewise.
	* config/arc/arc.md: Likewise.
	* config/arc/builtins.def: Likewise.
	* config/arc/t-arc: Likewise.
	* config/arm/arm-c.cc (arm_resolve_overloaded_builtin): Likewise.
	(arm_pragma_target_parse): Likewise.
	* config/arm/arm-protos.h (save_restore_target_globals): Likewise.
	(arm_cpu_cpp_builtins): Likewise.
	* config/arm/arm.cc (vfp3_const_double_index): Likewise.
	(shift_op): Likewise.
	(thumb2_final_prescan_insn): Likewise.
	(arm_final_prescan_insn): Likewise.
	(arm_asm_output_labelref): Likewise.
	(arm_small_register_classes_for_mode_p): Likewise.
	* config/arm/arm.h: Likewise.
	* config/arm/arm.md: Likewise.
	* config/arm/driver-arm.cc: Likewise.
	* config/arm/symbian.h: Likewise.
	* config/arm/t-arm: Likewise.
	* config/arm/thumb1.md: Likewise.
	* config/arm/x-arm: Likewise.
	* config/avr/avr-c.cc (avr_register_target_pragmas): Likewise.
	* config/avr/avr-fixed.md: Likewise.
	* config/avr/avr-log.cc (avr_log_vadump): Likewise.
	* config/avr/avr-mcus.def: Likewise.
	* config/avr/avr-modes.def (FRACTIONAL_INT_MODE): Likewise.
	* config/avr/avr-passes.def (INSERT_PASS_BEFORE): Likewise.
	* config/avr/avr-protos.h (make_avr_pass_casesi): Likewise.
	* config/avr/avr.cc (avr_option_override): Likewise.
	(avr_build_builtin_va_list): Likewise.
	(avr_mode_dependent_address_p): Likewise.
	(avr_function_arg_advance): Likewise.
	(avr_asm_output_aligned_decl_common): Likewise.
	* config/avr/avr.h (RETURN_ADDR_RTX): Likewise.
	(SUPPORTS_INIT_PRIORITY): Likewise.
	* config/avr/avr.md: Likewise.
	* config/avr/builtins.def: Likewise.
	* config/avr/gen-avr-mmcu-specs.cc (IN_GEN_AVR_MMCU_TEXI): Likewise.
	* config/avr/gen-avr-mmcu-texi.cc (IN_GEN_AVR_MMCU_TEXI): Likewise.
	(main): Likewise.
	* config/avr/t-avr: Likewise.
	* config/bfin/bfin.cc (frame_related_constant_load): Likewise.
	* config/bpf/bpf-protos.h (GCC_BPF_PROTOS_H): Likewise.
	* config/bpf/bpf.h (enum reg_class): Likewise.
	* config/bpf/t-bpf: Likewise.
	* config/c6x/c6x-protos.h (GCC_C6X_PROTOS_H): Likewise.
	* config/cr16/cr16-protos.h: Likewise.
	* config/cris/cris.cc (cris_address_cost): Likewise.
	(cris_side_effect_mode_ok): Likewise.
	(cris_init_machine_status): Likewise.
	(cris_emit_movem_store): Likewise.
	* config/cris/cris.h (INDEX_REG_CLASS): Likewise.
	(enum reg_class): Likewise.
	(struct cum_args): Likewise.
	* config/cris/cris.opt: Likewise.
	* config/cris/sync.md: Likewise.
	* config/csky/csky.cc (csky_expand_prologue): Likewise.
	* config/darwin-c.cc: Likewise.
	* config/darwin-f.cc: Likewise.
	* config/darwin-sections.def (zobj_const_section): Likewise.
	* config/darwin.cc (output_objc_section_asm_op): Likewise.
	(fprintf): Likewise.
	* config/darwin.h (GTY): Likewise.
	* config/elfos.h: Likewise.
	* config/epiphany/epiphany-sched.md: Likewise.
	* config/epiphany/epiphany.cc (epiphany_function_value): Likewise.
	* config/epiphany/epiphany.h (GTY): Likewise.
	(NO_FUNCTION_CSE): Likewise.
	* config/epiphany/mode-switch-use.cc: Likewise.
	* config/epiphany/predicates.md: Likewise.
	* config/epiphany/t-epiphany: Likewise.
	* config/fr30/fr30-protos.h: Likewise.
	* config/frv/frv-protos.h: Likewise.
	* config/frv/frv.cc (TLS_BIAS): Likewise.
	* config/frv/frv.h (ASM_OUTPUT_ALIGNED_LOCAL): Likewise.
	* config/ft32/ft32-protos.h: Likewise.
	* config/gcn/gcn-hsa.h (ASM_APP_OFF): Likewise.
	* config/gcn/gcn.cc (gcn_init_libfuncs): Likewise.
	* config/gcn/mkoffload.cc (copy_early_debug_info): Likewise.
	* config/gcn/t-gcn-hsa: Likewise.
	* config/gcn/t-omp-device: Likewise.
	* config/h8300/h8300-protos.h (GCC_H8300_PROTOS_H): Likewise.
	(same_cmp_following_p): Likewise.
	* config/h8300/h8300.cc (F): Likewise.
	* config/h8300/h8300.h (struct cum_arg): Likewise.
	(BRANCH_COST): Likewise.
	* config/i386/cygming.h (DEFAULT_PCC_STRUCT_RETURN): Likewise.
	* config/i386/djgpp.h (TARGET_ASM_LTO_END): Likewise.
	* config/i386/dragonfly.h (NO_PROFILE_COUNTERS): Likewise.
	* config/i386/driver-i386.cc (detect_caches_intel): Likewise.
	* config/i386/freebsd.h (NO_PROFILE_COUNTERS): Likewise.
	* config/i386/i386-c.cc (ix86_target_macros): Likewise.
	* config/i386/i386-expand.cc (get_mode_wider_vector): Likewise.
	* config/i386/i386-options.cc (ix86_set_func_type): Likewise.
	* config/i386/i386-protos.h (ix86_extract_perm_from_pool_constant): Likewise.
	(ix86_register_pragmas): Likewise.
	(ix86_d_has_stdcall_convention): Likewise.
	(i386_pe_seh_init_sections): Likewise.
	* config/i386/i386.cc (ix86_function_arg_regno_p): Likewise.
	(ix86_function_value_regno_p): Likewise.
	(ix86_compute_frame_layout): Likewise.
	(legitimize_pe_coff_symbol): Likewise.
	(output_pic_addr_const): Likewise.
	* config/i386/i386.h (defined): Likewise.
	(host_detect_local_cpu): Likewise.
	(CONSTANT_ADDRESS_P): Likewise.
	(DEFAULT_LARGE_SECTION_THRESHOLD): Likewise.
	(struct machine_frame_state): Likewise.
	* config/i386/i386.md: Likewise.
	* config/i386/lynx.h (ASM_OUTPUT_ALIGN): Likewise.
	* config/i386/mmx.md: Likewise.
	* config/i386/sse.md: Likewise.
	* config/i386/t-cygming: Likewise.
	* config/i386/t-djgpp: Likewise.
	* config/i386/t-gnu-property: Likewise.
	* config/i386/t-i386: Likewise.
	* config/i386/t-intelmic: Likewise.
	* config/i386/t-omp-device: Likewise.
	* config/i386/winnt-cxx.cc (i386_pe_type_dllimport_p): Likewise.
	(i386_pe_adjust_class_at_definition): Likewise.
	* config/i386/winnt.cc (gen_stdcall_or_fastcall_suffix): Likewise.
	(i386_pe_mangle_decl_assembler_name): Likewise.
	(i386_pe_encode_section_info): Likewise.
	* config/i386/x-cygwin: Likewise.
	* config/i386/x-darwin: Likewise.
	* config/i386/x-i386: Likewise.
	* config/i386/x-mingw32: Likewise.
	* config/i386/x86-tune-sched-core.cc: Likewise.
	* config/i386/x86-tune.def: Likewise.
	* config/i386/xm-djgpp.h (STANDARD_STARTFILE_PREFIX_1): Likewise.
	* config/ia64/freebsd.h: Likewise.
	* config/ia64/hpux.h (REGISTER_TARGET_PRAGMAS): Likewise.
	* config/ia64/ia64-protos.h (ia64_except_unwind_info): Likewise.
	* config/ia64/ia64.cc (ia64_function_value_regno_p): Likewise.
	(ia64_secondary_reload_class): Likewise.
	(bundling): Likewise.
	* config/ia64/ia64.h: Likewise.
	* config/ia64/ia64.md: Likewise.
	* config/ia64/predicates.md: Likewise.
	* config/ia64/sysv4.h: Likewise.
	* config/ia64/t-ia64: Likewise.
	* config/iq2000/iq2000.h (FUNCTION_MODE): Likewise.
	* config/iq2000/iq2000.md: Likewise.
	* config/linux.h (TARGET_HAS_BIONIC): Likewise.
	(if): Likewise.
	* config/m32c/m32c.cc (m32c_function_needs_enter): Likewise.
	* config/m32c/m32c.h (MAX_REGS_PER_ADDRESS): Likewise.
	* config/m32c/t-m32c: Likewise.
	* config/m32r/m32r-protos.h: Likewise.
	* config/m32r/m32r.cc (m32r_print_operand): Likewise.
	* config/m32r/m32r.h: Likewise.
	* config/m32r/m32r.md: Likewise.
	* config/m68k/m68k-isas.def: Likewise.
	* config/m68k/m68k-microarchs.def: Likewise.
	* config/m68k/m68k-protos.h (strict_low_part_peephole_ok): Likewise.
	(m68k_epilogue_uses): Likewise.
	* config/m68k/m68k.cc (m68k_call_tls_get_addr): Likewise.
	(m68k_sched_adjust_cost): Likewise.
	(m68k_sched_md_init): Likewise.
	* config/m68k/m68k.h (__transfer_from_trampoline): Likewise.
	(enum m68k_function_kind): Likewise.
	* config/m68k/m68k.md: Likewise.
	* config/m68k/m68kemb.h: Likewise.
	* config/m68k/uclinux.h (ENDFILE_SPEC): Likewise.
	* config/mcore/mcore-protos.h: Likewise.
	* config/mcore/mcore.cc (mcore_expand_insv): Likewise.
	(mcore_expand_prolog): Likewise.
	* config/mcore/mcore.h (TARGET_MCORE): Likewise.
	* config/mcore/mcore.md: Likewise.
	* config/microblaze/microblaze-protos.h: Likewise.
	* config/microblaze/microblaze.cc (microblaze_legitimate_pic_operand): Likewise.
	(microblaze_function_prologue): Likewise.
	(microblaze_function_epilogue): Likewise.
	(microblaze_select_section): Likewise.
	(microblaze_asm_output_mi_thunk): Likewise.
	(microblaze_eh_return): Likewise.
	* config/microblaze/microblaze.h: Likewise.
	* config/microblaze/microblaze.md: Likewise.
	* config/microblaze/t-microblaze: Likewise.
	* config/mips/driver-native.cc: Likewise.
	* config/mips/loongson2ef.md: Likewise.
	* config/mips/mips-protos.h (mips_expand_vec_cmp_expr): Likewise.
	* config/mips/mips.cc (mips_rtx_costs): Likewise.
	(mips_output_filename): Likewise.
	(mips_output_function_prologue): Likewise.
	(mips_output_function_epilogue): Likewise.
	(mips_output_mi_thunk): Likewise.
	* config/mips/mips.h: Likewise.
	* config/mips/mips.md: Likewise.
	* config/mips/t-mips: Likewise.
	* config/mips/x-native: Likewise.
	* config/mmix/mmix-protos.h: Likewise.
	* config/mmix/mmix.cc (mmix_option_override): Likewise.
	(mmix_dbx_register_number): Likewise.
	(mmix_expand_prologue): Likewise.
	* config/mmix/mmix.h: Likewise.
	* config/mmix/mmix.md: Likewise.
	* config/mmix/predicates.md: Likewise.
	* config/mn10300/mn10300.cc (mn10300_symbolic_operand): Likewise.
	(mn10300_legitimate_pic_operand_p): Likewise.
	* config/mn10300/mn10300.h (enum reg_class): Likewise.
	(NO_FUNCTION_CSE): Likewise.
	* config/moxie/moxie-protos.h: Likewise.
	* config/moxie/uclinux.h (TARGET_LIBC_HAS_FUNCTION): Likewise.
	* config/msp430/msp430-devices.cc (extract_devices_dir_from_exec_prefix): Likewise.
	* config/msp430/msp430.cc (msp430_gimplify_va_arg_expr): Likewise.
	(msp430_incoming_return_addr_rtx): Likewise.
	* config/msp430/msp430.h (msp430_get_linker_devices_include_path): Likewise.
	* config/msp430/t-msp430: Likewise.
	* config/nds32/nds32-cost.cc (nds32_rtx_costs_speed_prefer): Likewise.
	(nds32_rtx_costs_size_prefer): Likewise.
	(nds32_init_rtx_costs): Likewise.
	* config/nds32/nds32-doubleword.md: Likewise.
	* config/nds32/nds32.cc (nds32_memory_move_cost): Likewise.
	(nds32_builtin_decl): Likewise.
	* config/nds32/nds32.h (enum nds32_16bit_address_type): Likewise.
	(enum nds32_isr_nested_type): Likewise.
	(enum reg_class): Likewise.
	* config/nds32/predicates.md: Likewise.
	* config/nds32/t-nds32: Likewise.
	* config/nios2/nios2.cc (nios2_pragma_target_parse): Likewise.
	* config/nvptx/nvptx-protos.h: Likewise.
	* config/nvptx/nvptx.cc (nvptx_goacc_expand_var_decl): Likewise.
	* config/nvptx/nvptx.h (TARGET_CPU_CPP_BUILTINS): Likewise.
	* config/nvptx/t-nvptx: Likewise.
	* config/nvptx/t-omp-device: Likewise.
	* config/pa/elf.h: Likewise.
	* config/pa/pa-linux.h (GLOBAL_ASM_OP): Likewise.
	* config/pa/pa-netbsd.h (GLOBAL_ASM_OP): Likewise.
	* config/pa/pa-openbsd.h (TARGET_ASM_GLOBALIZE_LABEL): Likewise.
	* config/pa/pa-protos.h (pa_eh_return_handler_rtx): Likewise.
	(pa_legitimize_reload_address): Likewise.
	(pa_can_use_return_insn): Likewise.
	* config/pa/pa.cc (mem_shadd_or_shadd_rtx_p): Likewise.
	(som_output_text_section_asm_op): Likewise.
	* config/pa/pa.h (PROFILE_BEFORE_PROLOGUE): Likewise.
	* config/pa/pa.md: Likewise.
	* config/pa/som.h: Likewise.
	* config/pa/t-pa: Likewise.
	* config/pdp11/pdp11.cc (decode_pdp11_d): Likewise.
	* config/pdp11/pdp11.h: Likewise.
	* config/pdp11/pdp11.md: Likewise.
	* config/pdp11/t-pdp11: Likewise.
	* config/pru/pru.md: Likewise.
	* config/pru/t-pru: Likewise.
	* config/riscv/riscv-protos.h (NUM_SYMBOL_TYPES): Likewise.
	(riscv_gpr_save_operation_p): Likewise.
	(riscv_d_register_target_info): Likewise.
	(riscv_init_builtins): Likewise.
	* config/riscv/riscv.cc (riscv_output_mi_thunk): Likewise.
	* config/riscv/riscv.h (CSW_MAX_OFFSET): Likewise.
	* config/riscv/t-riscv: Likewise.
	* config/rl78/rl78.cc (rl78_asm_ctor_dtor): Likewise.
	* config/rl78/t-rl78: Likewise.
	* config/rs6000/aix.h: Likewise.
	* config/rs6000/aix71.h (ASM_SPEC_COMMON): Likewise.
	* config/rs6000/aix72.h (ASM_SPEC_COMMON): Likewise.
	* config/rs6000/aix73.h (ASM_SPEC_COMMON): Likewise.
	* config/rs6000/darwin.h (TARGET_ASM_GLOBALIZE_LABEL): Likewise.
	* config/rs6000/driver-rs6000.cc: Likewise.
	* config/rs6000/freebsd.h: Likewise.
	* config/rs6000/freebsd64.h: Likewise.
	* config/rs6000/lynx.h (ASM_OUTPUT_ALIGN): Likewise.
	* config/rs6000/rbtree.cc: Likewise.
	* config/rs6000/rbtree.h: Likewise.
	* config/rs6000/rs6000-c.cc (rs6000_target_modify_macros): Likewise.
	* config/rs6000/rs6000-call.cc (rs6000_invalid_builtin): Likewise.
	(rs6000_expand_builtin): Likewise.
	(rs6000_init_builtins): Likewise.
	* config/rs6000/rs6000-cpus.def: Likewise.
	* config/rs6000/rs6000-gen-builtins.cc (write_init_ovld_table): Likewise.
	* config/rs6000/rs6000-internal.h (ALTIVEC_REG_BIT): Likewise.
	(quad_address_offset_p): Likewise.
	* config/rs6000/rs6000-logue.cc (interesting_frame_related_regno): Likewise.
	(rs6000_emit_epilogue): Likewise.
	* config/rs6000/rs6000-overload.def: Likewise.
	* config/rs6000/rs6000-p8swap.cc: Likewise.
	* config/rs6000/rs6000-protos.h (GCC_RS6000_PROTOS_H): Likewise.
	(rs6000_const_f32_to_i32): Likewise.
	* config/rs6000/rs6000.cc (legitimate_lo_sum_address_p): Likewise.
	(rs6000_debug_legitimize_address): Likewise.
	(rs6000_mode_dependent_address): Likewise.
	(rs6000_adjust_priority): Likewise.
	(rs6000_c_mode_for_suffix): Likewise.
	* config/rs6000/rs6000.h (defined): Likewise.
	(LONG_DOUBLE_TYPE_SIZE): Likewise.
	* config/rs6000/rs6000.md: Likewise.
	* config/rs6000/sysv4.h: Likewise.
	* config/rs6000/t-linux: Likewise.
	* config/rs6000/t-linux64: Likewise.
	* config/rs6000/t-rs6000: Likewise.
	* config/rs6000/x-darwin: Likewise.
	* config/rs6000/x-darwin64: Likewise.
	* config/rs6000/x-rs6000: Likewise.
	* config/rs6000/xcoff.h (ASM_OUTPUT_LABELREF): Likewise.
	* config/rx/rx.cc (rx_expand_builtin): Likewise.
	* config/s390/constraints.md: Likewise.
	* config/s390/driver-native.cc: Likewise.
	* config/s390/htmxlintrin.h: Likewise.
	* config/s390/s390-builtins.def (B_DEF): Likewise.
	(OB_DEF_VAR): Likewise.
	* config/s390/s390-builtins.h: Likewise.
	* config/s390/s390-c.cc: Likewise.
	* config/s390/s390-opts.h: Likewise.
	* config/s390/s390-protos.h (s390_check_symref_alignment): Likewise.
	(s390_register_target_pragmas): Likewise.
	* config/s390/s390.cc (s390_init_builtins): Likewise.
	(s390_expand_plus_operand): Likewise.
	(s390_expand_atomic): Likewise.
	(s390_valid_target_attribute_inner_p): Likewise.
	* config/s390/s390.h (LONG_DOUBLE_TYPE_SIZE): Likewise.
	* config/s390/s390.md: Likewise.
	* config/s390/t-s390: Likewise.
	* config/s390/vx-builtins.md: Likewise.
	* config/s390/x-native: Likewise.
	* config/sh/divtab-sh4-300.cc (main): Likewise.
	* config/sh/divtab-sh4.cc (main): Likewise.
	* config/sh/divtab.cc (main): Likewise.
	* config/sh/elf.h: Likewise.
	* config/sh/sh-protos.h (sh_fsca_int2sf): Likewise.
	* config/sh/sh.cc (SYMBOL_FLAG_FUNCVEC_FUNCTION): Likewise.
	(sh_struct_value_rtx): Likewise.
	(sh_remove_reg_dead_or_unused_notes): Likewise.
	* config/sh/sh.h (MIN_UNITS_PER_WORD): Likewise.
	* config/sh/t-sh: Likewise.
	* config/sol2-protos.h (solaris_override_options): Likewise.
	* config/sol2.h: Likewise.
	* config/sparc/driver-sparc.cc: Likewise.
	* config/sparc/freebsd.h: Likewise.
	* config/sparc/sparc-protos.h (make_pass_work_around_errata): Likewise.
	* config/sparc/sparc.cc (sparc_output_mi_thunk): Likewise.
	(sparc_asan_shadow_offset): Likewise.
	* config/sparc/sparc.h: Likewise.
	* config/sparc/sparc.md: Likewise.
	* config/sparc/t-sparc: Likewise.
	* config/sparc/x-sparc: Likewise.
	* config/stormy16/stormy16.cc (xstormy16_mode_dependent_address_p): Likewise.
	* config/t-darwin: Likewise.
	* config/t-dragonfly: Likewise.
	* config/t-freebsd: Likewise.
	* config/t-glibc: Likewise.
	* config/t-linux: Likewise.
	* config/t-netbsd: Likewise.
	* config/t-openbsd: Likewise.
	* config/t-pnt16-warn: Likewise.
	* config/t-sol2: Likewise.
	* config/t-vxworks: Likewise.
	* config/t-winnt: Likewise.
	* config/tilegx/t-tilegx: Likewise.
	* config/tilegx/tilegx-c.cc: Likewise.
	* config/tilegx/tilegx-protos.h (tilegx_function_profiler): Likewise.
	* config/tilegx/tilegx.md: Likewise.
	* config/tilepro/t-tilepro: Likewise.
	* config/tilepro/tilepro-c.cc: Likewise.
	* config/v850/t-v850: Likewise.
	* config/v850/v850-protos.h: Likewise.
	* config/v850/v850.cc (F): Likewise.
	* config/v850/v850.h (enum reg_class): Likewise.
	(SLOW_BYTE_ACCESS): Likewise.
	* config/vax/vax.cc (vax_mode_dependent_address_p): Likewise.
	* config/vax/vax.h (enum reg_class): Likewise.
	* config/vax/vax.md: Likewise.
	* config/visium/visium.cc (visium_legitimate_address_p): Likewise.
	* config/visium/visium.h: Likewise.
	* config/vms/t-vms: Likewise.
	* config/vms/vms-crtlmap.map: Likewise.
	* config/vms/vms-protos.h (vms_c_get_vms_ver): Likewise.
	* config/vx-common.h: Likewise.
	* config/x-darwin: Likewise.
	* config/x-hpux: Likewise.
	* config/x-linux: Likewise.
	* config/x-netbsd: Likewise.
	* config/x-openbsd: Likewise.
	* config/x-solaris: Likewise.
	* config/xtensa/xtensa-protos.h (xtensa_mem_offset): Likewise.
	* config/xtensa/xtensa.cc (xtensa_option_override): Likewise.
	* config/xtensa/xtensa.h: Likewise.
	* configure.ac: Likewise.
	* context.cc: Likewise.
	* convert.h: Likewise.
	* coretypes.h: Likewise.
	* coverage.cc: Likewise.
	* coverage.h: Likewise.
	* cppdefault.h (struct default_include): Likewise.
	* cprop.cc (local_cprop_pass): Likewise.
	(one_cprop_pass): Likewise.
	* cse.cc (hash_rtx_cb): Likewise.
	(fold_rtx): Likewise.
	* ctfc.h (ctfc_get_num_vlen_bytes): Likewise.
	* data-streamer.h (bp_unpack_var_len_int): Likewise.
	(streamer_write_widest_int): Likewise.
	* dbgcnt.def: Likewise.
	* dbxout.cc (dbxout_early_global_decl): Likewise.
	(dbxout_common_check): Likewise.
	* dbxout.h: Likewise.
	* debug.h (struct gcc_debug_hooks): Likewise.
	(dump_go_spec_init): Likewise.
	* df-core.cc: Likewise.
	* df-scan.cc (df_insn_info_delete): Likewise.
	(df_insn_delete): Likewise.
	* df.h (debug_df_chain): Likewise.
	(can_move_insns_across): Likewise.
	* dfp.cc (decimal_from_binary): Likewise.
	* diagnostic-color.cc: Likewise.
	* diagnostic-event-id.h: Likewise.
	* diagnostic-show-locus.cc (test_one_liner_labels): Likewise.
	* diagnostic.cc (bt_callback): Likewise.
	(num_digits): Likewise.
	* doc/avr-mmcu.texi: Likewise.
	* doc/cfg.texi: Likewise.
	* doc/contrib.texi: Likewise.
	* doc/cppinternals.texi: Likewise.
	* doc/extend.texi: Likewise.
	* doc/generic.texi: Likewise.
	* doc/gimple.texi: Likewise.
	* doc/gty.texi: Likewise.
	* doc/invoke.texi: Likewise.
	* doc/loop.texi: Likewise.
	* doc/lto.texi: Likewise.
	* doc/match-and-simplify.texi: Likewise.
	* doc/md.texi: Likewise.
	* doc/optinfo.texi: Likewise.
	* doc/options.texi: Likewise.
	* doc/passes.texi: Likewise.
	* doc/plugins.texi: Likewise.
	* doc/rtl.texi: Likewise.
	* doc/sourcebuild.texi: Likewise.
	* doc/tm.texi: Likewise.
	* doc/tm.texi.in: Likewise.
	* doc/tree-ssa.texi: Likewise.
	* dojump.cc (do_jump): Likewise.
	* dojump.h: Likewise.
	* dumpfile.cc (test_impl_location): Likewise.
	(test_capture_of_dump_calls): Likewise.
	* dumpfile.h (enum dump_kind): Likewise.
	(class dump_location_t): Likewise.
	(dump_enabled_p): Likewise.
	(enable_rtl_dump_file): Likewise.
	(dump_combine_total_stats): Likewise.
	* dwarf2asm.cc (dw2_asm_output_delta_uleb128): Likewise.
	* dwarf2ctf.h (ctf_debug_finish): Likewise.
	* dwarf2out.cc (dwarf2out_begin_prologue): Likewise.
	(struct loc_descr_context): Likewise.
	(rtl_for_decl_location): Likewise.
	(gen_subprogram_die): Likewise.
	(gen_label_die): Likewise.
	(is_trivial_indirect_ref): Likewise.
	(dwarf2out_late_global_decl): Likewise.
	(dwarf_file_hasher::hash): Likewise.
	(dwarf2out_end_source_file): Likewise.
	(dwarf2out_define): Likewise.
	(dwarf2out_early_finish): Likewise.
	* dwarf2out.h (struct dw_fde_node): Likewise.
	(struct dw_discr_list_node): Likewise.
	(output_loc_sequence_raw): Likewise.
	* emit-rtl.cc (gen_raw_REG): Likewise.
	(maybe_set_max_label_num): Likewise.
	* emit-rtl.h (struct rtl_data): Likewise.
	* errors.cc (internal_error): Likewise.
	(trim_filename): Likewise.
	* et-forest.cc: Likewise.
	* except.cc (init_eh_for_function): Likewise.
	* explow.cc (promote_ssa_mode): Likewise.
	(get_dynamic_stack_size): Likewise.
	* explow.h: Likewise.
	* expmed.h: Likewise.
	* expr.cc (safe_from_p): Likewise.
	(expand_expr_real_2): Likewise.
	(expand_expr_real_1): Likewise.
	* file-prefix-map.cc (remap_filename): Likewise.
	* final.cc (app_enable): Likewise.
	(make_pass_compute_alignments): Likewise.
	(final_scan_insn_1): Likewise.
	(final_scan_insn): Likewise.
	* fixed-value.h (fixed_from_string): Likewise.
	* flag-types.h (NO_DEBUG): Likewise.
	(DWARF2_DEBUG): Likewise.
	(VMS_DEBUG): Likewise.
	(BTF_DEBUG): Likewise.
	(enum ctf_debug_info_levels): Likewise.
	* fold-const.cc (const_binop): Likewise.
	(fold_binary_loc): Likewise.
	(fold_checksum_tree): Likewise.
	* fp-test.cc: Likewise.
	* function.cc (expand_function_end): Likewise.
	* function.h (struct function): Likewise.
	* fwprop.cc (should_replace_address): Likewise.
	* gcc-main.cc: Likewise.
	* gcc-rich-location.h (class gcc_rich_location): Likewise.
	* gcc-symtab.h: Likewise.
	* gcc.cc (MIN_FATAL_STATUS): Likewise.
	(driver_handle_option): Likewise.
	(quote_spec_arg): Likewise.
	(driver::finalize): Likewise.
	* gcc.h (set_input): Likewise.
	* gcov-dump.cc: Likewise.
	* gcov.cc (solve_flow_graph): Likewise.
	* gcse-common.cc: Likewise.
	* gcse.cc (make_pass_rtl_hoist): Likewise.
	* genattr-common.cc: Likewise.
	* genattrtab.cc (min_fn): Likewise.
	(write_const_num_delay_slots): Likewise.
	* genautomata.cc: Likewise.
	* genconditions.cc (write_one_condition): Likewise.
	* genconstants.cc: Likewise.
	* genemit.cc (gen_exp): Likewise.
	* generic-match-head.cc: Likewise.
	* genextract.cc: Likewise.
	* gengenrtl.cc (always_void_p): Likewise.
	* gengtype-parse.cc (gtymarker_opt): Likewise.
	* gengtype-state.cc (state_writer::state_writer): Likewise.
	(write_state_trailer): Likewise.
	(equals_type_number): Likewise.
	(read_state): Likewise.
	* gengtype.cc (open_base_files): Likewise.
	(struct file_rule_st): Likewise.
	(header_dot_h_frul): Likewise.
	* gengtype.h: Likewise.
	* genmatch.cc (main): Likewise.
	* genmddeps.cc: Likewise.
	* genmodes.cc (emit_mode_inner): Likewise.
	(emit_mode_unit_size): Likewise.
	* genpeep.cc (gen_peephole): Likewise.
	* genpreds.cc (write_tm_preds_h): Likewise.
	* genrecog.cc (validate_pattern): Likewise.
	(write_header): Likewise.
	(main): Likewise.
	* gensupport.cc (change_subst_attribute): Likewise.
	(traverse_c_tests): Likewise.
	(add_predicate): Likewise.
	(init_predicate_table): Likewise.
	* gensupport.h (struct optab_pattern): Likewise.
	(get_num_insn_codes): Likewise.
	(maybe_eval_c_test): Likewise.
	(struct pred_data): Likewise.
	* ggc-internal.h: Likewise.
	* gimple-fold.cc (maybe_fold_reference): Likewise.
	(get_range_strlen_tree): Likewise.
	* gimple-fold.h (gimple_stmt_integer_valued_real_p): Likewise.
	* gimple-low.cc: Likewise.
	* gimple-match-head.cc (directly_supported_p): Likewise.
	* gimple-pretty-print.h: Likewise.
	* gimple-ssa-sprintf.cc (format_percent): Likewise.
	(adjust_range_for_overflow): Likewise.
	* gimple-streamer.h: Likewise.
	* gimple.h (struct GTY): Likewise.
	(is_gimple_resx): Likewise.
	* gimplify.cc (gimplify_expr): Likewise.
	(gimplify_init_constructor): Likewise.
	(omp_construct_selector_matches): Likewise.
	(gimplify_omp_target_update): Likewise.
	(gimplify_omp_ordered): Likewise.
	(gimplify_va_arg_expr): Likewise.
	* graphite-isl-ast-to-gimple.cc (should_copy_to_new_region): Likewise.
	* haifa-sched.cc (increase_insn_priority): Likewise.
	(try_ready): Likewise.
	(sched_create_recovery_edges): Likewise.
	* ifcvt.cc (find_if_case_1): Likewise.
	(find_if_case_2): Likewise.
	* inchash.h: Likewise.
	* incpath.cc (add_env_var_paths): Likewise.
	* input.cc (dump_location_info): Likewise.
	(assert_loceq): Likewise.
	(test_lexer_string_locations_concatenation_1): Likewise.
	(test_lexer_string_locations_concatenation_2): Likewise.
	(test_lexer_string_locations_concatenation_3): Likewise.
	* input.h (BUILTINS_LOCATION): Likewise.
	(class string_concat_db): Likewise.
	* internal-fn.cc (expand_MUL_OVERFLOW): Likewise.
	(expand_LOOP_VECTORIZED): Likewise.
	* ipa-cp.cc (make_pass_ipa_cp): Likewise.
	* ipa-fnsummary.cc (remap_freqcounting_preds_after_dup): Likewise.
	(ipa_fn_summary_t::duplicate): Likewise.
	(make_pass_ipa_fn_summary): Likewise.
	* ipa-fnsummary.h (enum ipa_hints_vals): Likewise.
	* ipa-free-lang-data.cc (fld_simplified_type): Likewise.
	(free_lang_data_in_decl): Likewise.
	* ipa-inline.cc (compute_inlined_call_time): Likewise.
	(inline_always_inline_functions): Likewise.
	* ipa-inline.h (free_growth_caches): Likewise.
	(inline_account_function_p): Likewise.
	* ipa-modref.cc (modref_access_analysis::analyze_stmt): Likewise.
	(modref_eaf_analysis::analyze_ssa_name): Likewise.
	* ipa-param-manipulation.cc (ipa_param_body_adjustments::mark_dead_statements): Likewise.
	(ipa_param_body_adjustments::remap_with_debug_expressions): Likewise.
	* ipa-prop.cc (ipa_set_node_agg_value_chain): Likewise.
	* ipa-prop.h (IPA_UNDESCRIBED_USE): Likewise.
	(unadjusted_ptr_and_unit_offset): Likewise.
	* ipa-reference.cc (make_pass_ipa_reference): Likewise.
	* ipa-reference.h (GCC_IPA_REFERENCE_H): Likewise.
	* ipa-split.cc (consider_split): Likewise.
	* ipa-sra.cc (isra_read_node_info): Likewise.
	* ipa-utils.h (struct ipa_dfs_info): Likewise.
	(recursive_call_p): Likewise.
	(ipa_make_function_pure): Likewise.
	* ira-build.cc (ira_create_allocno): Likewise.
	(ira_flattening): Likewise.
	* ira-color.cc (do_coloring): Likewise.
	(update_curr_costs): Likewise.
	* ira-conflicts.cc (process_regs_for_copy): Likewise.
	* ira-int.h (struct ira_emit_data): Likewise.
	(ira_prohibited_mode_move_regs): Likewise.
	(ira_get_dup_out_num): Likewise.
	(ira_destroy): Likewise.
	(ira_tune_allocno_costs): Likewise.
	(ira_implicitly_set_insn_hard_regs): Likewise.
	(ira_build_conflicts): Likewise.
	(ira_color): Likewise.
	* ira-lives.cc (process_bb_node_lives): Likewise.
	* ira.cc (class ira_spilled_reg_stack_slot): Likewise.
	(setup_uniform_class_p): Likewise.
	(def_dominates_uses): Likewise.
	* ira.h (ira_nullify_asm_goto): Likewise.
	* langhooks.cc (lhd_post_options): Likewise.
	* langhooks.h (class substring_loc): Likewise.
	(struct lang_hooks_for_tree_inlining): Likewise.
	(struct lang_hooks_for_types): Likewise.
	(struct lang_hooks): Likewise.
	* libfuncs.h (synchronize_libfunc): Likewise.
	* loop-doloop.cc (doloop_condition_get): Likewise.
	* loop-init.cc (fix_loop_structure): Likewise.
	* loop-invariant.cc: Likewise.
	* lower-subreg.h: Likewise.
	* lra-constraints.cc (curr_insn_transform): Likewise.
	* lra-int.h (struct lra_insn_reg): Likewise.
	(lra_undo_inheritance): Likewise.
	(lra_setup_reload_pseudo_preferenced_hard_reg): Likewise.
	(lra_split_hard_reg_for): Likewise.
	(lra_coalesce): Likewise.
	(lra_final_code_change): Likewise.
	* lra-spills.cc (lra_final_code_change): Likewise.
	* lra.cc (lra_process_new_insns): Likewise.
	* lto-compress.h (struct lto_compression_stream): Likewise.
	* lto-streamer-out.cc (DFS::DFS_write_tree_body): Likewise.
	(write_symbol): Likewise.
	* lto-streamer.h (enum LTO_tags): Likewise.
	(lto_value_range_error): Likewise.
	(lto_append_block): Likewise.
	(lto_streamer_hooks_init): Likewise.
	(stream_read_tree_ref): Likewise.
	(lto_prepare_function_for_streaming): Likewise.
	(select_what_to_stream): Likewise.
	(omp_lto_input_declare_variant_alt): Likewise.
	(cl_optimization_stream_in): Likewise.
	* lto-wrapper.cc (append_compiler_options): Likewise.
	* machmode.def: Likewise.
	* machmode.h (struct int_n_data_t): Likewise.
	* main.cc (main): Likewise.
	* match.pd: Likewise.
	* omp-builtins.def (BUILT_IN_GOMP_CRITICAL_NAME_END): Likewise.
	(BUILT_IN_GOMP_LOOP_ULL_ORDERED_RUNTIME_NEXT): Likewise.
	* omp-expand.cc (expand_omp_atomic_fetch_op): Likewise.
	(make_pass_expand_omp_ssa): Likewise.
	* omp-low.cc (struct omp_context): Likewise.
	(struct omp_taskcopy_context): Likewise.
	(lower_omp): Likewise.
	* omp-oacc-neuter-broadcast.cc (omp_sese_active_worker_call): Likewise.
	(mask_name): Likewise.
	(omp_sese_dump_pars): Likewise.
	(worker_single_simple): Likewise.
	* omp-offload.cc (omp_finish_file): Likewise.
	(execute_oacc_loop_designation): Likewise.
	* optabs-query.cc (lshift_cheap_p): Likewise.
	* optc-gen.awk: Likewise.
	* optc-save-gen.awk: Likewise.
	* optinfo-emit-json.cc (optrecord_json_writer::optrecord_json_writer): Likewise.
	* opts-common.cc: Likewise.
	* output.h (app_enable): Likewise.
	(output_operand_lossage): Likewise.
	(insn_current_reference_address): Likewise.
	(get_insn_template): Likewise.
	(output_quoted_string): Likewise.
	* pass_manager.h (struct register_pass_info): Likewise.
	* plugin.cc: Likewise.
	* plugin.def (PLUGIN_ANALYZER_INIT): Likewise.
	* plugin.h (invoke_plugin_callbacks): Likewise.
	* pointer-query.cc (handle_mem_ref): Likewise.
	* postreload-gcse.cc (alloc_mem): Likewise.
	* predict.h (enum prediction): Likewise.
	(add_reg_br_prob_note): Likewise.
	* prefix.h: Likewise.
	* profile.h (get_working_sets): Likewise.
	* read-md.cc: Likewise.
	* read-md.h (struct mapping): Likewise.
	(class md_reader): Likewise.
	(class noop_reader): Likewise.
	* read-rtl-function.cc (function_reader::create_function): Likewise.
	(function_reader::extra_parsing_for_operand_code_0): Likewise.
	* read-rtl.cc (initialize_iterators): Likewise.
	* real.cc: Likewise.
	* real.h (struct real_value): Likewise.
	(format_helper::format_helper): Likewise.
	(real_hash): Likewise.
	(real_can_shorten_arithmetic): Likewise.
	* recog.cc (struct target_recog): Likewise.
	(offsettable_nonstrict_memref_p): Likewise.
	(constrain_operands): Likewise.
	* recog.h (MAX_RECOG_ALTERNATIVES): Likewise.
	(which_op_alt): Likewise.
	(struct insn_gen_fn): Likewise.
	* reg-notes.def (REG_NOTE): Likewise.
	* reg-stack.cc: Likewise.
	* regs.h (reg_is_parm_p): Likewise.
	* regset.h: Likewise.
	* reload.cc (push_reload): Likewise.
	(find_reloads): Likewise.
	(find_reloads_address_1): Likewise.
	(find_replacement): Likewise.
	(refers_to_regno_for_reload_p): Likewise.
	(refers_to_mem_for_reload_p): Likewise.
	* reload.h (push_reload): Likewise.
	(deallocate_reload_reg): Likewise.
	* reload1.cc (emit_input_reload_insns): Likewise.
	* reorg.cc (relax_delay_slots): Likewise.
	* rtl.def (UNKNOWN): Likewise.
	(SEQUENCE): Likewise.
	(BARRIER): Likewise.
	(ASM_OPERANDS): Likewise.
	(EQ_ATTR_ALT): Likewise.
	* rtl.h (struct GTY): Likewise.
	(LABEL_NAME): Likewise.
	(LABEL_ALT_ENTRY_P): Likewise.
	(SUBREG_BYTE): Likewise.
	(get_stack_check_protect): Likewise.
	(dump_rtx_statistics): Likewise.
	(unwrap_const_vec_duplicate): Likewise.
	(subreg_promoted_mode): Likewise.
	(gen_lowpart_common): Likewise.
	(operand_subword): Likewise.
	(immed_wide_int_const): Likewise.
	(decide_function_section): Likewise.
	(active_insn_p): Likewise.
	(delete_related_insns): Likewise.
	(try_split): Likewise.
	(val_signbit_known_clear_p): Likewise.
	(simplifiable_subregs): Likewise.
	(set_insn_deleted): Likewise.
	(subreg_get_info): Likewise.
	(remove_free_EXPR_LIST_node): Likewise.
	(finish_subregs_of_mode): Likewise.
	(get_mem_attrs): Likewise.
	(lookup_constant_def): Likewise.
	(rtx_to_tree_code): Likewise.
	(hash_rtx): Likewise.
	(condjump_in_parallel_p): Likewise.
	(validate_subreg): Likewise.
	(make_compound_operation): Likewise.
	(schedule_ebbs): Likewise.
	(print_inline_rtx): Likewise.
	(fixup_args_size_notes): Likewise.
	(expand_dec): Likewise.
	(prepare_copy_insn): Likewise.
	(mark_elimination): Likewise.
	(valid_mode_changes_for_regno): Likewise.
	(make_debug_expr_from_rtl): Likewise.
	(delete_vta_debug_insns): Likewise.
	(simplify_using_condition): Likewise.
	(set_insn_locations): Likewise.
	(fatal_insn_not_found): Likewise.
	(word_register_operation_p): Likewise.
	* rtlanal.cc (get_call_fndecl): Likewise.
	(side_effects_p): Likewise.
	(subreg_nregs): Likewise.
	(rtx_cost): Likewise.
	(canonicalize_condition): Likewise.
	* rtlanal.h (rtx_properties::try_to_add_note): Likewise.
	* run-rtl-passes.cc (run_rtl_passes): Likewise.
	* sanitizer.def (BUILT_IN_ASAN_VERSION_MISMATCH_CHECK): Likewise.
	* sched-deps.cc (add_dependence_1): Likewise.
	* sched-ebb.cc (begin_move_insn): Likewise.
	(add_deps_for_risky_insns): Likewise.
	(advance_target_bb): Likewise.
	* sched-int.h (reemit_notes): Likewise.
	(struct _haifa_insn_data): Likewise.
	(HID): Likewise.
	(DEP_CANCELLED): Likewise.
	(debug_ds): Likewise.
	(number_in_ready): Likewise.
	(schedule_ebbs_finish): Likewise.
	(find_modifiable_mems): Likewise.
	* sched-rgn.cc (debug_rgn_dependencies): Likewise.
	* sel-sched-dump.cc (dump_lv_set): Likewise.
	* sel-sched-dump.h: Likewise.
	* sel-sched-ir.cc (sel_insn_rtx_cost): Likewise.
	(setup_id_reg_sets): Likewise.
	(has_dependence_p): Likewise.
	(sel_num_cfg_preds_gt_1): Likewise.
	(bb_ends_ebb_p): Likewise.
	* sel-sched-ir.h (struct _list_node): Likewise.
	(struct idata_def): Likewise.
	(bb_next_bb): Likewise.
	* sel-sched.cc (vinsn_writes_one_of_regs_p): Likewise.
	(choose_best_pseudo_reg): Likewise.
	(verify_target_availability): Likewise.
	(can_speculate_dep_p): Likewise.
	(sel_rank_for_schedule): Likewise.
	* selftest-run-tests.cc (selftest::run_tests): Likewise.
	* selftest.h (class auto_fix_quotes): Likewise.
	* shrink-wrap.cc (handle_simple_exit): Likewise.
	* shrink-wrap.h: Likewise.
	* simplify-rtx.cc (simplify_context::simplify_associative_operation): Likewise.
	(simplify_context::simplify_gen_vec_select): Likewise.
	* spellcheck-tree.h: Likewise.
	* spellcheck.h: Likewise.
	* statistics.h (struct function): Likewise.
	* stmt.cc (conditional_probability): Likewise.
	* stmt.h: Likewise.
	* stor-layout.h: Likewise.
	* streamer-hooks.h: Likewise.
	* stringpool.h: Likewise.
	* symtab.cc (symbol_table::change_decl_assembler_name): Likewise.
	* target.def (HOOK_VECTOR_END): Likewise.
	(type.): Likewise.
	* target.h (union cumulative_args_t): Likewise.
	(by_pieces_ninsns): Likewise.
	(class predefined_function_abi): Likewise.
	* targhooks.cc (default_translate_mode_attribute): Likewise.
	* timevar.def: Likewise.
	* timevar.h (class timer): Likewise.
	* toplev.h (enable_rtl_dump_file): Likewise.
	* trans-mem.cc (collect_bb2reg): Likewise.
	* tree-call-cdce.cc (gen_conditions_for_pow): Likewise.
	* tree-cfg.cc (remove_bb): Likewise.
	(verify_gimple_debug): Likewise.
	(remove_edge_and_dominated_blocks): Likewise.
	(push_fndecl): Likewise.
	* tree-cfgcleanup.h (GCC_TREE_CFGCLEANUP_H): Likewise.
	* tree-complex.cc (expand_complex_multiplication): Likewise.
	(expand_complex_div_straight): Likewise.
	* tree-core.h (enum tree_index): Likewise.
	(enum operand_equal_flag): Likewise.
	* tree-eh.cc (honor_protect_cleanup_actions): Likewise.
	* tree-if-conv.cc (if_convertible_gimple_assign_stmt_p): Likewise.
	* tree-inline.cc (initialize_inlined_parameters): Likewise.
	* tree-inline.h (force_value_to_type): Likewise.
	* tree-nested.cc (get_chain_decl): Likewise.
	(walk_all_functions): Likewise.
	* tree-object-size.h: Likewise.
	* tree-outof-ssa.cc: Likewise.
	* tree-parloops.cc (create_parallel_loop): Likewise.
	* tree-pretty-print.cc (print_generic_expr_to_str): Likewise.
	(dump_generic_node): Likewise.
	* tree-profile.cc (tree_profiling): Likewise.
	* tree-sra.cc (maybe_add_sra_candidate): Likewise.
	* tree-ssa-address.cc: Likewise.
	* tree-ssa-alias.cc: Likewise.
	* tree-ssa-alias.h (ao_ref::max_size_known_p): Likewise.
	(dump_alias_stats): Likewise.
	* tree-ssa-ccp.cc: Likewise.
	* tree-ssa-coalesce.h: Likewise.
	* tree-ssa-live.cc (remove_unused_scope_block_p): Likewise.
	* tree-ssa-loop-manip.cc (copy_phi_node_args): Likewise.
	* tree-ssa-loop-unswitch.cc: Likewise.
	* tree-ssa-math-opts.cc: Likewise.
	* tree-ssa-operands.cc (class operands_scanner): Likewise.
	* tree-ssa-pre.cc: Likewise.
	* tree-ssa-reassoc.cc (optimize_ops_list): Likewise.
	(debug_range_entry): Likewise.
	* tree-ssa-sccvn.cc (eliminate_dom_walker::eliminate_stmt): Likewise.
	* tree-ssa-sccvn.h (TREE_SSA_SCCVN_H): Likewise.
	* tree-ssa-scopedtables.cc (add_expr_commutative): Likewise.
	(equal_mem_array_ref_p): Likewise.
	* tree-ssa-strlen.cc (is_strlen_related_p): Likewise.
	* tree-ssa-strlen.h (get_range_strlen_dynamic): Likewise.
	* tree-ssa-tail-merge.cc (stmt_local_def): Likewise.
	* tree-ssa-ter.h: Likewise.
	* tree-ssa-threadupdate.h (enum bb_dom_status): Likewise.
	* tree-streamer-in.cc (lto_input_ts_block_tree_pointers): Likewise.
	* tree-streamer-out.cc (pack_ts_block_value_fields): Likewise.
	(write_ts_block_tree_pointers): Likewise.
	* tree-streamer.h (struct streamer_tree_cache_d): Likewise.
	(streamer_read_tree_bitfields): Likewise.
	(streamer_write_integer_cst): Likewise.
	* tree-vect-patterns.cc (apply_binop_and_append_stmt): Likewise.
	(vect_synth_mult_by_constant): Likewise.
	* tree-vect-stmts.cc (vectorizable_operation): Likewise.
	* tree-vectorizer.cc: Likewise.
	* tree-vectorizer.h (class auto_purge_vect_location): Likewise.
	(vect_update_inits_of_drs): Likewise.
	(vect_get_mask_type_for_stmt): Likewise.
	(vect_rgroup_iv_might_wrap_p): Likewise.
	(cse_and_gimplify_to_preheader): Likewise.
	(vect_free_slp_tree): Likewise.
	(vect_pattern_recog): Likewise.
	(vect_stmt_dominates_stmt_p): Likewise.
	* tree.cc (initialize_tree_contains_struct): Likewise.
	(need_assembler_name_p): Likewise.
	(type_with_interoperable_signedness): Likewise.
	* tree.def (SWITCH_EXPR): Likewise.
	* tree.h (TYPE_SYMTAB_ADDRESS): Likewise.
	(poly_int_tree_p): Likewise.
	(inlined_function_outer_scope_p): Likewise.
	(tree_code_for_canonical_type_merging): Likewise.
	* value-prof.cc: Likewise.
	* value-prof.h (get_nth_most_common_value): Likewise.
	(find_func_by_profile_id): Likewise.
	* value-range.cc (vrp_operand_equal_p): Likewise.
	* value-range.h: Likewise.
	* var-tracking.cc: Likewise.
	* varasm.cc (default_function_section): Likewise.
	(function_section_1): Likewise.
	(assemble_variable): Likewise.
	(handle_vtv_comdat_section): Likewise.
	* vec.h (struct vec_prefix): Likewise.
	* vmsdbgout.cc (full_name): Likewise.
	* vtable-verify.cc: Likewise.
	* vtable-verify.h (struct vtv_graph_node): Likewise.
	* xcoffout.cc: Likewise.
	* xcoffout.h (DEBUG_SYMS_TEXT): Likewise.

2022-01-17  Martin Liska  <mliska@suse.cz>

	* adjust-alignment.c: Moved to...
	* adjust-alignment.cc: ...here.
	* alias.c: Moved to...
	* alias.cc: ...here.
	* alloc-pool.c: Moved to...
	* alloc-pool.cc: ...here.
	* asan.c: Moved to...
	* asan.cc: ...here.
	* attribs.c: Moved to...
	* attribs.cc: ...here.
	* auto-inc-dec.c: Moved to...
	* auto-inc-dec.cc: ...here.
	* auto-profile.c: Moved to...
	* auto-profile.cc: ...here.
	* bb-reorder.c: Moved to...
	* bb-reorder.cc: ...here.
	* bitmap.c: Moved to...
	* bitmap.cc: ...here.
	* btfout.c: Moved to...
	* btfout.cc: ...here.
	* builtins.c: Moved to...
	* builtins.cc: ...here.
	* caller-save.c: Moved to...
	* caller-save.cc: ...here.
	* calls.c: Moved to...
	* calls.cc: ...here.
	* ccmp.c: Moved to...
	* ccmp.cc: ...here.
	* cfg.c: Moved to...
	* cfg.cc: ...here.
	* cfganal.c: Moved to...
	* cfganal.cc: ...here.
	* cfgbuild.c: Moved to...
	* cfgbuild.cc: ...here.
	* cfgcleanup.c: Moved to...
	* cfgcleanup.cc: ...here.
	* cfgexpand.c: Moved to...
	* cfgexpand.cc: ...here.
	* cfghooks.c: Moved to...
	* cfghooks.cc: ...here.
	* cfgloop.c: Moved to...
	* cfgloop.cc: ...here.
	* cfgloopanal.c: Moved to...
	* cfgloopanal.cc: ...here.
	* cfgloopmanip.c: Moved to...
	* cfgloopmanip.cc: ...here.
	* cfgrtl.c: Moved to...
	* cfgrtl.cc: ...here.
	* cgraph.c: Moved to...
	* cgraph.cc: ...here.
	* cgraphbuild.c: Moved to...
	* cgraphbuild.cc: ...here.
	* cgraphclones.c: Moved to...
	* cgraphclones.cc: ...here.
	* cgraphunit.c: Moved to...
	* cgraphunit.cc: ...here.
	* collect-utils.c: Moved to...
	* collect-utils.cc: ...here.
	* collect2-aix.c: Moved to...
	* collect2-aix.cc: ...here.
	* collect2.c: Moved to...
	* collect2.cc: ...here.
	* combine-stack-adj.c: Moved to...
	* combine-stack-adj.cc: ...here.
	* combine.c: Moved to...
	* combine.cc: ...here.
	* common/common-targhooks.c: Moved to...
	* common/common-targhooks.cc: ...here.
	* common/config/aarch64/aarch64-common.c: Moved to...
	* common/config/aarch64/aarch64-common.cc: ...here.
	* common/config/alpha/alpha-common.c: Moved to...
	* common/config/alpha/alpha-common.cc: ...here.
	* common/config/arc/arc-common.c: Moved to...
	* common/config/arc/arc-common.cc: ...here.
	* common/config/arm/arm-common.c: Moved to...
	* common/config/arm/arm-common.cc: ...here.
	* common/config/avr/avr-common.c: Moved to...
	* common/config/avr/avr-common.cc: ...here.
	* common/config/bfin/bfin-common.c: Moved to...
	* common/config/bfin/bfin-common.cc: ...here.
	* common/config/bpf/bpf-common.c: Moved to...
	* common/config/bpf/bpf-common.cc: ...here.
	* common/config/c6x/c6x-common.c: Moved to...
	* common/config/c6x/c6x-common.cc: ...here.
	* common/config/cr16/cr16-common.c: Moved to...
	* common/config/cr16/cr16-common.cc: ...here.
	* common/config/cris/cris-common.c: Moved to...
	* common/config/cris/cris-common.cc: ...here.
	* common/config/csky/csky-common.c: Moved to...
	* common/config/csky/csky-common.cc: ...here.
	* common/config/default-common.c: Moved to...
	* common/config/default-common.cc: ...here.
	* common/config/epiphany/epiphany-common.c: Moved to...
	* common/config/epiphany/epiphany-common.cc: ...here.
	* common/config/fr30/fr30-common.c: Moved to...
	* common/config/fr30/fr30-common.cc: ...here.
	* common/config/frv/frv-common.c: Moved to...
	* common/config/frv/frv-common.cc: ...here.
	* common/config/gcn/gcn-common.c: Moved to...
	* common/config/gcn/gcn-common.cc: ...here.
	* common/config/h8300/h8300-common.c: Moved to...
	* common/config/h8300/h8300-common.cc: ...here.
	* common/config/i386/i386-common.c: Moved to...
	* common/config/i386/i386-common.cc: ...here.
	* common/config/ia64/ia64-common.c: Moved to...
	* common/config/ia64/ia64-common.cc: ...here.
	* common/config/iq2000/iq2000-common.c: Moved to...
	* common/config/iq2000/iq2000-common.cc: ...here.
	* common/config/lm32/lm32-common.c: Moved to...
	* common/config/lm32/lm32-common.cc: ...here.
	* common/config/m32r/m32r-common.c: Moved to...
	* common/config/m32r/m32r-common.cc: ...here.
	* common/config/m68k/m68k-common.c: Moved to...
	* common/config/m68k/m68k-common.cc: ...here.
	* common/config/mcore/mcore-common.c: Moved to...
	* common/config/mcore/mcore-common.cc: ...here.
	* common/config/microblaze/microblaze-common.c: Moved to...
	* common/config/microblaze/microblaze-common.cc: ...here.
	* common/config/mips/mips-common.c: Moved to...
	* common/config/mips/mips-common.cc: ...here.
	* common/config/mmix/mmix-common.c: Moved to...
	* common/config/mmix/mmix-common.cc: ...here.
	* common/config/mn10300/mn10300-common.c: Moved to...
	* common/config/mn10300/mn10300-common.cc: ...here.
	* common/config/msp430/msp430-common.c: Moved to...
	* common/config/msp430/msp430-common.cc: ...here.
	* common/config/nds32/nds32-common.c: Moved to...
	* common/config/nds32/nds32-common.cc: ...here.
	* common/config/nios2/nios2-common.c: Moved to...
	* common/config/nios2/nios2-common.cc: ...here.
	* common/config/nvptx/nvptx-common.c: Moved to...
	* common/config/nvptx/nvptx-common.cc: ...here.
	* common/config/or1k/or1k-common.c: Moved to...
	* common/config/or1k/or1k-common.cc: ...here.
	* common/config/pa/pa-common.c: Moved to...
	* common/config/pa/pa-common.cc: ...here.
	* common/config/pdp11/pdp11-common.c: Moved to...
	* common/config/pdp11/pdp11-common.cc: ...here.
	* common/config/pru/pru-common.c: Moved to...
	* common/config/pru/pru-common.cc: ...here.
	* common/config/riscv/riscv-common.c: Moved to...
	* common/config/riscv/riscv-common.cc: ...here.
	* common/config/rs6000/rs6000-common.c: Moved to...
	* common/config/rs6000/rs6000-common.cc: ...here.
	* common/config/rx/rx-common.c: Moved to...
	* common/config/rx/rx-common.cc: ...here.
	* common/config/s390/s390-common.c: Moved to...
	* common/config/s390/s390-common.cc: ...here.
	* common/config/sh/sh-common.c: Moved to...
	* common/config/sh/sh-common.cc: ...here.
	* common/config/sparc/sparc-common.c: Moved to...
	* common/config/sparc/sparc-common.cc: ...here.
	* common/config/tilegx/tilegx-common.c: Moved to...
	* common/config/tilegx/tilegx-common.cc: ...here.
	* common/config/tilepro/tilepro-common.c: Moved to...
	* common/config/tilepro/tilepro-common.cc: ...here.
	* common/config/v850/v850-common.c: Moved to...
	* common/config/v850/v850-common.cc: ...here.
	* common/config/vax/vax-common.c: Moved to...
	* common/config/vax/vax-common.cc: ...here.
	* common/config/visium/visium-common.c: Moved to...
	* common/config/visium/visium-common.cc: ...here.
	* common/config/xstormy16/xstormy16-common.c: Moved to...
	* common/config/xstormy16/xstormy16-common.cc: ...here.
	* common/config/xtensa/xtensa-common.c: Moved to...
	* common/config/xtensa/xtensa-common.cc: ...here.
	* compare-elim.c: Moved to...
	* compare-elim.cc: ...here.
	* config/aarch64/aarch64-bti-insert.c: Moved to...
	* config/aarch64/aarch64-bti-insert.cc: ...here.
	* config/aarch64/aarch64-builtins.c: Moved to...
	* config/aarch64/aarch64-builtins.cc: ...here.
	* config/aarch64/aarch64-c.c: Moved to...
	* config/aarch64/aarch64-c.cc: ...here.
	* config/aarch64/aarch64-d.c: Moved to...
	* config/aarch64/aarch64-d.cc: ...here.
	* config/aarch64/aarch64.c: Moved to...
	* config/aarch64/aarch64.cc: ...here.
	* config/aarch64/cortex-a57-fma-steering.c: Moved to...
	* config/aarch64/cortex-a57-fma-steering.cc: ...here.
	* config/aarch64/driver-aarch64.c: Moved to...
	* config/aarch64/driver-aarch64.cc: ...here.
	* config/aarch64/falkor-tag-collision-avoidance.c: Moved to...
	* config/aarch64/falkor-tag-collision-avoidance.cc: ...here.
	* config/aarch64/host-aarch64-darwin.c: Moved to...
	* config/aarch64/host-aarch64-darwin.cc: ...here.
	* config/alpha/alpha.c: Moved to...
	* config/alpha/alpha.cc: ...here.
	* config/alpha/driver-alpha.c: Moved to...
	* config/alpha/driver-alpha.cc: ...here.
	* config/arc/arc-c.c: Moved to...
	* config/arc/arc-c.cc: ...here.
	* config/arc/arc.c: Moved to...
	* config/arc/arc.cc: ...here.
	* config/arc/driver-arc.c: Moved to...
	* config/arc/driver-arc.cc: ...here.
	* config/arm/aarch-common.c: Moved to...
	* config/arm/aarch-common.cc: ...here.
	* config/arm/arm-builtins.c: Moved to...
	* config/arm/arm-builtins.cc: ...here.
	* config/arm/arm-c.c: Moved to...
	* config/arm/arm-c.cc: ...here.
	* config/arm/arm-d.c: Moved to...
	* config/arm/arm-d.cc: ...here.
	* config/arm/arm.c: Moved to...
	* config/arm/arm.cc: ...here.
	* config/arm/driver-arm.c: Moved to...
	* config/arm/driver-arm.cc: ...here.
	* config/avr/avr-c.c: Moved to...
	* config/avr/avr-c.cc: ...here.
	* config/avr/avr-devices.c: Moved to...
	* config/avr/avr-devices.cc: ...here.
	* config/avr/avr-log.c: Moved to...
	* config/avr/avr-log.cc: ...here.
	* config/avr/avr.c: Moved to...
	* config/avr/avr.cc: ...here.
	* config/avr/driver-avr.c: Moved to...
	* config/avr/driver-avr.cc: ...here.
	* config/avr/gen-avr-mmcu-specs.c: Moved to...
	* config/avr/gen-avr-mmcu-specs.cc: ...here.
	* config/avr/gen-avr-mmcu-texi.c: Moved to...
	* config/avr/gen-avr-mmcu-texi.cc: ...here.
	* config/bfin/bfin.c: Moved to...
	* config/bfin/bfin.cc: ...here.
	* config/bpf/bpf.c: Moved to...
	* config/bpf/bpf.cc: ...here.
	* config/bpf/coreout.c: Moved to...
	* config/bpf/coreout.cc: ...here.
	* config/c6x/c6x.c: Moved to...
	* config/c6x/c6x.cc: ...here.
	* config/cr16/cr16.c: Moved to...
	* config/cr16/cr16.cc: ...here.
	* config/cris/cris.c: Moved to...
	* config/cris/cris.cc: ...here.
	* config/csky/csky.c: Moved to...
	* config/csky/csky.cc: ...here.
	* config/darwin-c.c: Moved to...
	* config/darwin-c.cc: ...here.
	* config/darwin-d.c: Moved to...
	* config/darwin-d.cc: ...here.
	* config/darwin-driver.c: Moved to...
	* config/darwin-driver.cc: ...here.
	* config/darwin-f.c: Moved to...
	* config/darwin-f.cc: ...here.
	* config/darwin.c: Moved to...
	* config/darwin.cc: ...here.
	* config/default-c.c: Moved to...
	* config/default-c.cc: ...here.
	* config/default-d.c: Moved to...
	* config/default-d.cc: ...here.
	* config/dragonfly-d.c: Moved to...
	* config/dragonfly-d.cc: ...here.
	* config/epiphany/epiphany.c: Moved to...
	* config/epiphany/epiphany.cc: ...here.
	* config/epiphany/mode-switch-use.c: Moved to...
	* config/epiphany/mode-switch-use.cc: ...here.
	* config/epiphany/resolve-sw-modes.c: Moved to...
	* config/epiphany/resolve-sw-modes.cc: ...here.
	* config/fr30/fr30.c: Moved to...
	* config/fr30/fr30.cc: ...here.
	* config/freebsd-d.c: Moved to...
	* config/freebsd-d.cc: ...here.
	* config/frv/frv.c: Moved to...
	* config/frv/frv.cc: ...here.
	* config/ft32/ft32.c: Moved to...
	* config/ft32/ft32.cc: ...here.
	* config/gcn/driver-gcn.c: Moved to...
	* config/gcn/driver-gcn.cc: ...here.
	* config/gcn/gcn-run.c: Moved to...
	* config/gcn/gcn-run.cc: ...here.
	* config/gcn/gcn-tree.c: Moved to...
	* config/gcn/gcn-tree.cc: ...here.
	* config/gcn/gcn.c: Moved to...
	* config/gcn/gcn.cc: ...here.
	* config/gcn/mkoffload.c: Moved to...
	* config/gcn/mkoffload.cc: ...here.
	* config/glibc-c.c: Moved to...
	* config/glibc-c.cc: ...here.
	* config/glibc-d.c: Moved to...
	* config/glibc-d.cc: ...here.
	* config/h8300/h8300.c: Moved to...
	* config/h8300/h8300.cc: ...here.
	* config/host-darwin.c: Moved to...
	* config/host-darwin.cc: ...here.
	* config/host-hpux.c: Moved to...
	* config/host-hpux.cc: ...here.
	* config/host-linux.c: Moved to...
	* config/host-linux.cc: ...here.
	* config/host-netbsd.c: Moved to...
	* config/host-netbsd.cc: ...here.
	* config/host-openbsd.c: Moved to...
	* config/host-openbsd.cc: ...here.
	* config/host-solaris.c: Moved to...
	* config/host-solaris.cc: ...here.
	* config/i386/djgpp.c: Moved to...
	* config/i386/djgpp.cc: ...here.
	* config/i386/driver-i386.c: Moved to...
	* config/i386/driver-i386.cc: ...here.
	* config/i386/driver-mingw32.c: Moved to...
	* config/i386/driver-mingw32.cc: ...here.
	* config/i386/gnu-property.c: Moved to...
	* config/i386/gnu-property.cc: ...here.
	* config/i386/host-cygwin.c: Moved to...
	* config/i386/host-cygwin.cc: ...here.
	* config/i386/host-i386-darwin.c: Moved to...
	* config/i386/host-i386-darwin.cc: ...here.
	* config/i386/host-mingw32.c: Moved to...
	* config/i386/host-mingw32.cc: ...here.
	* config/i386/i386-builtins.c: Moved to...
	* config/i386/i386-builtins.cc: ...here.
	* config/i386/i386-c.c: Moved to...
	* config/i386/i386-c.cc: ...here.
	* config/i386/i386-d.c: Moved to...
	* config/i386/i386-d.cc: ...here.
	* config/i386/i386-expand.c: Moved to...
	* config/i386/i386-expand.cc: ...here.
	* config/i386/i386-features.c: Moved to...
	* config/i386/i386-features.cc: ...here.
	* config/i386/i386-options.c: Moved to...
	* config/i386/i386-options.cc: ...here.
	* config/i386/i386.c: Moved to...
	* config/i386/i386.cc: ...here.
	* config/i386/intelmic-mkoffload.c: Moved to...
	* config/i386/intelmic-mkoffload.cc: ...here.
	* config/i386/msformat-c.c: Moved to...
	* config/i386/msformat-c.cc: ...here.
	* config/i386/winnt-cxx.c: Moved to...
	* config/i386/winnt-cxx.cc: ...here.
	* config/i386/winnt-d.c: Moved to...
	* config/i386/winnt-d.cc: ...here.
	* config/i386/winnt-stubs.c: Moved to...
	* config/i386/winnt-stubs.cc: ...here.
	* config/i386/winnt.c: Moved to...
	* config/i386/winnt.cc: ...here.
	* config/i386/x86-tune-sched-atom.c: Moved to...
	* config/i386/x86-tune-sched-atom.cc: ...here.
	* config/i386/x86-tune-sched-bd.c: Moved to...
	* config/i386/x86-tune-sched-bd.cc: ...here.
	* config/i386/x86-tune-sched-core.c: Moved to...
	* config/i386/x86-tune-sched-core.cc: ...here.
	* config/i386/x86-tune-sched.c: Moved to...
	* config/i386/x86-tune-sched.cc: ...here.
	* config/ia64/ia64-c.c: Moved to...
	* config/ia64/ia64-c.cc: ...here.
	* config/ia64/ia64.c: Moved to...
	* config/ia64/ia64.cc: ...here.
	* config/iq2000/iq2000.c: Moved to...
	* config/iq2000/iq2000.cc: ...here.
	* config/linux.c: Moved to...
	* config/linux.cc: ...here.
	* config/lm32/lm32.c: Moved to...
	* config/lm32/lm32.cc: ...here.
	* config/m32c/m32c-pragma.c: Moved to...
	* config/m32c/m32c-pragma.cc: ...here.
	* config/m32c/m32c.c: Moved to...
	* config/m32c/m32c.cc: ...here.
	* config/m32r/m32r.c: Moved to...
	* config/m32r/m32r.cc: ...here.
	* config/m68k/m68k.c: Moved to...
	* config/m68k/m68k.cc: ...here.
	* config/mcore/mcore.c: Moved to...
	* config/mcore/mcore.cc: ...here.
	* config/microblaze/microblaze-c.c: Moved to...
	* config/microblaze/microblaze-c.cc: ...here.
	* config/microblaze/microblaze.c: Moved to...
	* config/microblaze/microblaze.cc: ...here.
	* config/mips/driver-native.c: Moved to...
	* config/mips/driver-native.cc: ...here.
	* config/mips/frame-header-opt.c: Moved to...
	* config/mips/frame-header-opt.cc: ...here.
	* config/mips/mips-d.c: Moved to...
	* config/mips/mips-d.cc: ...here.
	* config/mips/mips.c: Moved to...
	* config/mips/mips.cc: ...here.
	* config/mmix/mmix.c: Moved to...
	* config/mmix/mmix.cc: ...here.
	* config/mn10300/mn10300.c: Moved to...
	* config/mn10300/mn10300.cc: ...here.
	* config/moxie/moxie.c: Moved to...
	* config/moxie/moxie.cc: ...here.
	* config/msp430/driver-msp430.c: Moved to...
	* config/msp430/driver-msp430.cc: ...here.
	* config/msp430/msp430-c.c: Moved to...
	* config/msp430/msp430-c.cc: ...here.
	* config/msp430/msp430-devices.c: Moved to...
	* config/msp430/msp430-devices.cc: ...here.
	* config/msp430/msp430.c: Moved to...
	* config/msp430/msp430.cc: ...here.
	* config/nds32/nds32-cost.c: Moved to...
	* config/nds32/nds32-cost.cc: ...here.
	* config/nds32/nds32-fp-as-gp.c: Moved to...
	* config/nds32/nds32-fp-as-gp.cc: ...here.
	* config/nds32/nds32-intrinsic.c: Moved to...
	* config/nds32/nds32-intrinsic.cc: ...here.
	* config/nds32/nds32-isr.c: Moved to...
	* config/nds32/nds32-isr.cc: ...here.
	* config/nds32/nds32-md-auxiliary.c: Moved to...
	* config/nds32/nds32-md-auxiliary.cc: ...here.
	* config/nds32/nds32-memory-manipulation.c: Moved to...
	* config/nds32/nds32-memory-manipulation.cc: ...here.
	* config/nds32/nds32-pipelines-auxiliary.c: Moved to...
	* config/nds32/nds32-pipelines-auxiliary.cc: ...here.
	* config/nds32/nds32-predicates.c: Moved to...
	* config/nds32/nds32-predicates.cc: ...here.
	* config/nds32/nds32-relax-opt.c: Moved to...
	* config/nds32/nds32-relax-opt.cc: ...here.
	* config/nds32/nds32-utils.c: Moved to...
	* config/nds32/nds32-utils.cc: ...here.
	* config/nds32/nds32.c: Moved to...
	* config/nds32/nds32.cc: ...here.
	* config/netbsd-d.c: Moved to...
	* config/netbsd-d.cc: ...here.
	* config/netbsd.c: Moved to...
	* config/netbsd.cc: ...here.
	* config/nios2/nios2.c: Moved to...
	* config/nios2/nios2.cc: ...here.
	* config/nvptx/mkoffload.c: Moved to...
	* config/nvptx/mkoffload.cc: ...here.
	* config/nvptx/nvptx-c.c: Moved to...
	* config/nvptx/nvptx-c.cc: ...here.
	* config/nvptx/nvptx.c: Moved to...
	* config/nvptx/nvptx.cc: ...here.
	* config/openbsd-d.c: Moved to...
	* config/openbsd-d.cc: ...here.
	* config/or1k/or1k.c: Moved to...
	* config/or1k/or1k.cc: ...here.
	* config/pa/pa-d.c: Moved to...
	* config/pa/pa-d.cc: ...here.
	* config/pa/pa.c: Moved to...
	* config/pa/pa.cc: ...here.
	* config/pdp11/pdp11.c: Moved to...
	* config/pdp11/pdp11.cc: ...here.
	* config/pru/pru-passes.c: Moved to...
	* config/pru/pru-passes.cc: ...here.
	* config/pru/pru-pragma.c: Moved to...
	* config/pru/pru-pragma.cc: ...here.
	* config/pru/pru.c: Moved to...
	* config/pru/pru.cc: ...here.
	* config/riscv/riscv-builtins.c: Moved to...
	* config/riscv/riscv-builtins.cc: ...here.
	* config/riscv/riscv-c.c: Moved to...
	* config/riscv/riscv-c.cc: ...here.
	* config/riscv/riscv-d.c: Moved to...
	* config/riscv/riscv-d.cc: ...here.
	* config/riscv/riscv-shorten-memrefs.c: Moved to...
	* config/riscv/riscv-shorten-memrefs.cc: ...here.
	* config/riscv/riscv-sr.c: Moved to...
	* config/riscv/riscv-sr.cc: ...here.
	* config/riscv/riscv.c: Moved to...
	* config/riscv/riscv.cc: ...here.
	* config/rl78/rl78-c.c: Moved to...
	* config/rl78/rl78-c.cc: ...here.
	* config/rl78/rl78.c: Moved to...
	* config/rl78/rl78.cc: ...here.
	* config/rs6000/driver-rs6000.c: Moved to...
	* config/rs6000/driver-rs6000.cc: ...here.
	* config/rs6000/host-darwin.c: Moved to...
	* config/rs6000/host-darwin.cc: ...here.
	* config/rs6000/host-ppc64-darwin.c: Moved to...
	* config/rs6000/host-ppc64-darwin.cc: ...here.
	* config/rs6000/rbtree.c: Moved to...
	* config/rs6000/rbtree.cc: ...here.
	* config/rs6000/rs6000-c.c: Moved to...
	* config/rs6000/rs6000-c.cc: ...here.
	* config/rs6000/rs6000-call.c: Moved to...
	* config/rs6000/rs6000-call.cc: ...here.
	* config/rs6000/rs6000-d.c: Moved to...
	* config/rs6000/rs6000-d.cc: ...here.
	* config/rs6000/rs6000-gen-builtins.c: Moved to...
	* config/rs6000/rs6000-gen-builtins.cc: ...here.
	* config/rs6000/rs6000-linux.c: Moved to...
	* config/rs6000/rs6000-linux.cc: ...here.
	* config/rs6000/rs6000-logue.c: Moved to...
	* config/rs6000/rs6000-logue.cc: ...here.
	* config/rs6000/rs6000-p8swap.c: Moved to...
	* config/rs6000/rs6000-p8swap.cc: ...here.
	* config/rs6000/rs6000-pcrel-opt.c: Moved to...
	* config/rs6000/rs6000-pcrel-opt.cc: ...here.
	* config/rs6000/rs6000-string.c: Moved to...
	* config/rs6000/rs6000-string.cc: ...here.
	* config/rs6000/rs6000.c: Moved to...
	* config/rs6000/rs6000.cc: ...here.
	* config/rx/rx.c: Moved to...
	* config/rx/rx.cc: ...here.
	* config/s390/driver-native.c: Moved to...
	* config/s390/driver-native.cc: ...here.
	* config/s390/s390-c.c: Moved to...
	* config/s390/s390-c.cc: ...here.
	* config/s390/s390-d.c: Moved to...
	* config/s390/s390-d.cc: ...here.
	* config/s390/s390.c: Moved to...
	* config/s390/s390.cc: ...here.
	* config/sh/divtab-sh4-300.c: Moved to...
	* config/sh/divtab-sh4-300.cc: ...here.
	* config/sh/divtab-sh4.c: Moved to...
	* config/sh/divtab-sh4.cc: ...here.
	* config/sh/divtab.c: Moved to...
	* config/sh/divtab.cc: ...here.
	* config/sh/sh-c.c: Moved to...
	* config/sh/sh-c.cc: ...here.
	* config/sh/sh.c: Moved to...
	* config/sh/sh.cc: ...here.
	* config/sol2-c.c: Moved to...
	* config/sol2-c.cc: ...here.
	* config/sol2-cxx.c: Moved to...
	* config/sol2-cxx.cc: ...here.
	* config/sol2-d.c: Moved to...
	* config/sol2-d.cc: ...here.
	* config/sol2-stubs.c: Moved to...
	* config/sol2-stubs.cc: ...here.
	* config/sol2.c: Moved to...
	* config/sol2.cc: ...here.
	* config/sparc/driver-sparc.c: Moved to...
	* config/sparc/driver-sparc.cc: ...here.
	* config/sparc/sparc-c.c: Moved to...
	* config/sparc/sparc-c.cc: ...here.
	* config/sparc/sparc-d.c: Moved to...
	* config/sparc/sparc-d.cc: ...here.
	* config/sparc/sparc.c: Moved to...
	* config/sparc/sparc.cc: ...here.
	* config/stormy16/stormy16.c: Moved to...
	* config/stormy16/stormy16.cc: ...here.
	* config/tilegx/mul-tables.c: Moved to...
	* config/tilegx/mul-tables.cc: ...here.
	* config/tilegx/tilegx-c.c: Moved to...
	* config/tilegx/tilegx-c.cc: ...here.
	* config/tilegx/tilegx.c: Moved to...
	* config/tilegx/tilegx.cc: ...here.
	* config/tilepro/mul-tables.c: Moved to...
	* config/tilepro/mul-tables.cc: ...here.
	* config/tilepro/tilepro-c.c: Moved to...
	* config/tilepro/tilepro-c.cc: ...here.
	* config/tilepro/tilepro.c: Moved to...
	* config/tilepro/tilepro.cc: ...here.
	* config/v850/v850-c.c: Moved to...
	* config/v850/v850-c.cc: ...here.
	* config/v850/v850.c: Moved to...
	* config/v850/v850.cc: ...here.
	* config/vax/vax.c: Moved to...
	* config/vax/vax.cc: ...here.
	* config/visium/visium.c: Moved to...
	* config/visium/visium.cc: ...here.
	* config/vms/vms-c.c: Moved to...
	* config/vms/vms-c.cc: ...here.
	* config/vms/vms-f.c: Moved to...
	* config/vms/vms-f.cc: ...here.
	* config/vms/vms.c: Moved to...
	* config/vms/vms.cc: ...here.
	* config/vxworks-c.c: Moved to...
	* config/vxworks-c.cc: ...here.
	* config/vxworks.c: Moved to...
	* config/vxworks.cc: ...here.
	* config/winnt-c.c: Moved to...
	* config/winnt-c.cc: ...here.
	* config/xtensa/xtensa.c: Moved to...
	* config/xtensa/xtensa.cc: ...here.
	* context.c: Moved to...
	* context.cc: ...here.
	* convert.c: Moved to...
	* convert.cc: ...here.
	* coverage.c: Moved to...
	* coverage.cc: ...here.
	* cppbuiltin.c: Moved to...
	* cppbuiltin.cc: ...here.
	* cppdefault.c: Moved to...
	* cppdefault.cc: ...here.
	* cprop.c: Moved to...
	* cprop.cc: ...here.
	* cse.c: Moved to...
	* cse.cc: ...here.
	* cselib.c: Moved to...
	* cselib.cc: ...here.
	* ctfc.c: Moved to...
	* ctfc.cc: ...here.
	* ctfout.c: Moved to...
	* ctfout.cc: ...here.
	* data-streamer-in.c: Moved to...
	* data-streamer-in.cc: ...here.
	* data-streamer-out.c: Moved to...
	* data-streamer-out.cc: ...here.
	* data-streamer.c: Moved to...
	* data-streamer.cc: ...here.
	* dbgcnt.c: Moved to...
	* dbgcnt.cc: ...here.
	* dbxout.c: Moved to...
	* dbxout.cc: ...here.
	* dce.c: Moved to...
	* dce.cc: ...here.
	* ddg.c: Moved to...
	* ddg.cc: ...here.
	* debug.c: Moved to...
	* debug.cc: ...here.
	* df-core.c: Moved to...
	* df-core.cc: ...here.
	* df-problems.c: Moved to...
	* df-problems.cc: ...here.
	* df-scan.c: Moved to...
	* df-scan.cc: ...here.
	* dfp.c: Moved to...
	* dfp.cc: ...here.
	* diagnostic-color.c: Moved to...
	* diagnostic-color.cc: ...here.
	* diagnostic-show-locus.c: Moved to...
	* diagnostic-show-locus.cc: ...here.
	* diagnostic-spec.c: Moved to...
	* diagnostic-spec.cc: ...here.
	* diagnostic.c: Moved to...
	* diagnostic.cc: ...here.
	* dojump.c: Moved to...
	* dojump.cc: ...here.
	* dominance.c: Moved to...
	* dominance.cc: ...here.
	* domwalk.c: Moved to...
	* domwalk.cc: ...here.
	* double-int.c: Moved to...
	* double-int.cc: ...here.
	* dse.c: Moved to...
	* dse.cc: ...here.
	* dumpfile.c: Moved to...
	* dumpfile.cc: ...here.
	* dwarf2asm.c: Moved to...
	* dwarf2asm.cc: ...here.
	* dwarf2cfi.c: Moved to...
	* dwarf2cfi.cc: ...here.
	* dwarf2ctf.c: Moved to...
	* dwarf2ctf.cc: ...here.
	* dwarf2out.c: Moved to...
	* dwarf2out.cc: ...here.
	* early-remat.c: Moved to...
	* early-remat.cc: ...here.
	* edit-context.c: Moved to...
	* edit-context.cc: ...here.
	* emit-rtl.c: Moved to...
	* emit-rtl.cc: ...here.
	* errors.c: Moved to...
	* errors.cc: ...here.
	* et-forest.c: Moved to...
	* et-forest.cc: ...here.
	* except.c: Moved to...
	* except.cc: ...here.
	* explow.c: Moved to...
	* explow.cc: ...here.
	* expmed.c: Moved to...
	* expmed.cc: ...here.
	* expr.c: Moved to...
	* expr.cc: ...here.
	* fibonacci_heap.c: Moved to...
	* fibonacci_heap.cc: ...here.
	* file-find.c: Moved to...
	* file-find.cc: ...here.
	* file-prefix-map.c: Moved to...
	* file-prefix-map.cc: ...here.
	* final.c: Moved to...
	* final.cc: ...here.
	* fixed-value.c: Moved to...
	* fixed-value.cc: ...here.
	* fold-const-call.c: Moved to...
	* fold-const-call.cc: ...here.
	* fold-const.c: Moved to...
	* fold-const.cc: ...here.
	* fp-test.c: Moved to...
	* fp-test.cc: ...here.
	* function-tests.c: Moved to...
	* function-tests.cc: ...here.
	* function.c: Moved to...
	* function.cc: ...here.
	* fwprop.c: Moved to...
	* fwprop.cc: ...here.
	* gcc-ar.c: Moved to...
	* gcc-ar.cc: ...here.
	* gcc-main.c: Moved to...
	* gcc-main.cc: ...here.
	* gcc-rich-location.c: Moved to...
	* gcc-rich-location.cc: ...here.
	* gcc.c: Moved to...
	* gcc.cc: ...here.
	* gcov-dump.c: Moved to...
	* gcov-dump.cc: ...here.
	* gcov-io.c: Moved to...
	* gcov-io.cc: ...here.
	* gcov-tool.c: Moved to...
	* gcov-tool.cc: ...here.
	* gcov.c: Moved to...
	* gcov.cc: ...here.
	* gcse-common.c: Moved to...
	* gcse-common.cc: ...here.
	* gcse.c: Moved to...
	* gcse.cc: ...here.
	* genattr-common.c: Moved to...
	* genattr-common.cc: ...here.
	* genattr.c: Moved to...
	* genattr.cc: ...here.
	* genattrtab.c: Moved to...
	* genattrtab.cc: ...here.
	* genautomata.c: Moved to...
	* genautomata.cc: ...here.
	* gencfn-macros.c: Moved to...
	* gencfn-macros.cc: ...here.
	* gencheck.c: Moved to...
	* gencheck.cc: ...here.
	* genchecksum.c: Moved to...
	* genchecksum.cc: ...here.
	* gencodes.c: Moved to...
	* gencodes.cc: ...here.
	* genconditions.c: Moved to...
	* genconditions.cc: ...here.
	* genconfig.c: Moved to...
	* genconfig.cc: ...here.
	* genconstants.c: Moved to...
	* genconstants.cc: ...here.
	* genemit.c: Moved to...
	* genemit.cc: ...here.
	* genenums.c: Moved to...
	* genenums.cc: ...here.
	* generic-match-head.c: Moved to...
	* generic-match-head.cc: ...here.
	* genextract.c: Moved to...
	* genextract.cc: ...here.
	* genflags.c: Moved to...
	* genflags.cc: ...here.
	* gengenrtl.c: Moved to...
	* gengenrtl.cc: ...here.
	* gengtype-parse.c: Moved to...
	* gengtype-parse.cc: ...here.
	* gengtype-state.c: Moved to...
	* gengtype-state.cc: ...here.
	* gengtype.c: Moved to...
	* gengtype.cc: ...here.
	* genhooks.c: Moved to...
	* genhooks.cc: ...here.
	* genmatch.c: Moved to...
	* genmatch.cc: ...here.
	* genmddeps.c: Moved to...
	* genmddeps.cc: ...here.
	* genmddump.c: Moved to...
	* genmddump.cc: ...here.
	* genmodes.c: Moved to...
	* genmodes.cc: ...here.
	* genopinit.c: Moved to...
	* genopinit.cc: ...here.
	* genoutput.c: Moved to...
	* genoutput.cc: ...here.
	* genpeep.c: Moved to...
	* genpeep.cc: ...here.
	* genpreds.c: Moved to...
	* genpreds.cc: ...here.
	* genrecog.c: Moved to...
	* genrecog.cc: ...here.
	* gensupport.c: Moved to...
	* gensupport.cc: ...here.
	* gentarget-def.c: Moved to...
	* gentarget-def.cc: ...here.
	* genversion.c: Moved to...
	* genversion.cc: ...here.
	* ggc-common.c: Moved to...
	* ggc-common.cc: ...here.
	* ggc-none.c: Moved to...
	* ggc-none.cc: ...here.
	* ggc-page.c: Moved to...
	* ggc-page.cc: ...here.
	* ggc-tests.c: Moved to...
	* ggc-tests.cc: ...here.
	* gimple-builder.c: Moved to...
	* gimple-builder.cc: ...here.
	* gimple-expr.c: Moved to...
	* gimple-expr.cc: ...here.
	* gimple-fold.c: Moved to...
	* gimple-fold.cc: ...here.
	* gimple-iterator.c: Moved to...
	* gimple-iterator.cc: ...here.
	* gimple-laddress.c: Moved to...
	* gimple-laddress.cc: ...here.
	* gimple-loop-jam.c: Moved to...
	* gimple-loop-jam.cc: ...here.
	* gimple-low.c: Moved to...
	* gimple-low.cc: ...here.
	* gimple-match-head.c: Moved to...
	* gimple-match-head.cc: ...here.
	* gimple-pretty-print.c: Moved to...
	* gimple-pretty-print.cc: ...here.
	* gimple-ssa-backprop.c: Moved to...
	* gimple-ssa-backprop.cc: ...here.
	* gimple-ssa-evrp-analyze.c: Moved to...
	* gimple-ssa-evrp-analyze.cc: ...here.
	* gimple-ssa-evrp.c: Moved to...
	* gimple-ssa-evrp.cc: ...here.
	* gimple-ssa-isolate-paths.c: Moved to...
	* gimple-ssa-isolate-paths.cc: ...here.
	* gimple-ssa-nonnull-compare.c: Moved to...
	* gimple-ssa-nonnull-compare.cc: ...here.
	* gimple-ssa-split-paths.c: Moved to...
	* gimple-ssa-split-paths.cc: ...here.
	* gimple-ssa-sprintf.c: Moved to...
	* gimple-ssa-sprintf.cc: ...here.
	* gimple-ssa-store-merging.c: Moved to...
	* gimple-ssa-store-merging.cc: ...here.
	* gimple-ssa-strength-reduction.c: Moved to...
	* gimple-ssa-strength-reduction.cc: ...here.
	* gimple-ssa-warn-alloca.c: Moved to...
	* gimple-ssa-warn-alloca.cc: ...here.
	* gimple-ssa-warn-restrict.c: Moved to...
	* gimple-ssa-warn-restrict.cc: ...here.
	* gimple-streamer-in.c: Moved to...
	* gimple-streamer-in.cc: ...here.
	* gimple-streamer-out.c: Moved to...
	* gimple-streamer-out.cc: ...here.
	* gimple-walk.c: Moved to...
	* gimple-walk.cc: ...here.
	* gimple-warn-recursion.c: Moved to...
	* gimple-warn-recursion.cc: ...here.
	* gimple.c: Moved to...
	* gimple.cc: ...here.
	* gimplify-me.c: Moved to...
	* gimplify-me.cc: ...here.
	* gimplify.c: Moved to...
	* gimplify.cc: ...here.
	* godump.c: Moved to...
	* godump.cc: ...here.
	* graph.c: Moved to...
	* graph.cc: ...here.
	* graphds.c: Moved to...
	* graphds.cc: ...here.
	* graphite-dependences.c: Moved to...
	* graphite-dependences.cc: ...here.
	* graphite-isl-ast-to-gimple.c: Moved to...
	* graphite-isl-ast-to-gimple.cc: ...here.
	* graphite-optimize-isl.c: Moved to...
	* graphite-optimize-isl.cc: ...here.
	* graphite-poly.c: Moved to...
	* graphite-poly.cc: ...here.
	* graphite-scop-detection.c: Moved to...
	* graphite-scop-detection.cc: ...here.
	* graphite-sese-to-poly.c: Moved to...
	* graphite-sese-to-poly.cc: ...here.
	* graphite.c: Moved to...
	* graphite.cc: ...here.
	* haifa-sched.c: Moved to...
	* haifa-sched.cc: ...here.
	* hash-map-tests.c: Moved to...
	* hash-map-tests.cc: ...here.
	* hash-set-tests.c: Moved to...
	* hash-set-tests.cc: ...here.
	* hash-table.c: Moved to...
	* hash-table.cc: ...here.
	* hooks.c: Moved to...
	* hooks.cc: ...here.
	* host-default.c: Moved to...
	* host-default.cc: ...here.
	* hw-doloop.c: Moved to...
	* hw-doloop.cc: ...here.
	* hwint.c: Moved to...
	* hwint.cc: ...here.
	* ifcvt.c: Moved to...
	* ifcvt.cc: ...here.
	* inchash.c: Moved to...
	* inchash.cc: ...here.
	* incpath.c: Moved to...
	* incpath.cc: ...here.
	* init-regs.c: Moved to...
	* init-regs.cc: ...here.
	* input.c: Moved to...
	* input.cc: ...here.
	* internal-fn.c: Moved to...
	* internal-fn.cc: ...here.
	* intl.c: Moved to...
	* intl.cc: ...here.
	* ipa-comdats.c: Moved to...
	* ipa-comdats.cc: ...here.
	* ipa-cp.c: Moved to...
	* ipa-cp.cc: ...here.
	* ipa-devirt.c: Moved to...
	* ipa-devirt.cc: ...here.
	* ipa-fnsummary.c: Moved to...
	* ipa-fnsummary.cc: ...here.
	* ipa-icf-gimple.c: Moved to...
	* ipa-icf-gimple.cc: ...here.
	* ipa-icf.c: Moved to...
	* ipa-icf.cc: ...here.
	* ipa-inline-analysis.c: Moved to...
	* ipa-inline-analysis.cc: ...here.
	* ipa-inline-transform.c: Moved to...
	* ipa-inline-transform.cc: ...here.
	* ipa-inline.c: Moved to...
	* ipa-inline.cc: ...here.
	* ipa-modref-tree.c: Moved to...
	* ipa-modref-tree.cc: ...here.
	* ipa-modref.c: Moved to...
	* ipa-modref.cc: ...here.
	* ipa-param-manipulation.c: Moved to...
	* ipa-param-manipulation.cc: ...here.
	* ipa-polymorphic-call.c: Moved to...
	* ipa-polymorphic-call.cc: ...here.
	* ipa-predicate.c: Moved to...
	* ipa-predicate.cc: ...here.
	* ipa-profile.c: Moved to...
	* ipa-profile.cc: ...here.
	* ipa-prop.c: Moved to...
	* ipa-prop.cc: ...here.
	* ipa-pure-const.c: Moved to...
	* ipa-pure-const.cc: ...here.
	* ipa-ref.c: Moved to...
	* ipa-ref.cc: ...here.
	* ipa-reference.c: Moved to...
	* ipa-reference.cc: ...here.
	* ipa-split.c: Moved to...
	* ipa-split.cc: ...here.
	* ipa-sra.c: Moved to...
	* ipa-sra.cc: ...here.
	* ipa-utils.c: Moved to...
	* ipa-utils.cc: ...here.
	* ipa-visibility.c: Moved to...
	* ipa-visibility.cc: ...here.
	* ipa.c: Moved to...
	* ipa.cc: ...here.
	* ira-build.c: Moved to...
	* ira-build.cc: ...here.
	* ira-color.c: Moved to...
	* ira-color.cc: ...here.
	* ira-conflicts.c: Moved to...
	* ira-conflicts.cc: ...here.
	* ira-costs.c: Moved to...
	* ira-costs.cc: ...here.
	* ira-emit.c: Moved to...
	* ira-emit.cc: ...here.
	* ira-lives.c: Moved to...
	* ira-lives.cc: ...here.
	* ira.c: Moved to...
	* ira.cc: ...here.
	* jump.c: Moved to...
	* jump.cc: ...here.
	* langhooks.c: Moved to...
	* langhooks.cc: ...here.
	* lcm.c: Moved to...
	* lcm.cc: ...here.
	* lists.c: Moved to...
	* lists.cc: ...here.
	* loop-doloop.c: Moved to...
	* loop-doloop.cc: ...here.
	* loop-init.c: Moved to...
	* loop-init.cc: ...here.
	* loop-invariant.c: Moved to...
	* loop-invariant.cc: ...here.
	* loop-iv.c: Moved to...
	* loop-iv.cc: ...here.
	* loop-unroll.c: Moved to...
	* loop-unroll.cc: ...here.
	* lower-subreg.c: Moved to...
	* lower-subreg.cc: ...here.
	* lra-assigns.c: Moved to...
	* lra-assigns.cc: ...here.
	* lra-coalesce.c: Moved to...
	* lra-coalesce.cc: ...here.
	* lra-constraints.c: Moved to...
	* lra-constraints.cc: ...here.
	* lra-eliminations.c: Moved to...
	* lra-eliminations.cc: ...here.
	* lra-lives.c: Moved to...
	* lra-lives.cc: ...here.
	* lra-remat.c: Moved to...
	* lra-remat.cc: ...here.
	* lra-spills.c: Moved to...
	* lra-spills.cc: ...here.
	* lra.c: Moved to...
	* lra.cc: ...here.
	* lto-cgraph.c: Moved to...
	* lto-cgraph.cc: ...here.
	* lto-compress.c: Moved to...
	* lto-compress.cc: ...here.
	* lto-opts.c: Moved to...
	* lto-opts.cc: ...here.
	* lto-section-in.c: Moved to...
	* lto-section-in.cc: ...here.
	* lto-section-out.c: Moved to...
	* lto-section-out.cc: ...here.
	* lto-streamer-in.c: Moved to...
	* lto-streamer-in.cc: ...here.
	* lto-streamer-out.c: Moved to...
	* lto-streamer-out.cc: ...here.
	* lto-streamer.c: Moved to...
	* lto-streamer.cc: ...here.
	* lto-wrapper.c: Moved to...
	* lto-wrapper.cc: ...here.
	* main.c: Moved to...
	* main.cc: ...here.
	* mcf.c: Moved to...
	* mcf.cc: ...here.
	* mode-switching.c: Moved to...
	* mode-switching.cc: ...here.
	* modulo-sched.c: Moved to...
	* modulo-sched.cc: ...here.
	* multiple_target.c: Moved to...
	* multiple_target.cc: ...here.
	* omp-expand.c: Moved to...
	* omp-expand.cc: ...here.
	* omp-general.c: Moved to...
	* omp-general.cc: ...here.
	* omp-low.c: Moved to...
	* omp-low.cc: ...here.
	* omp-offload.c: Moved to...
	* omp-offload.cc: ...here.
	* omp-simd-clone.c: Moved to...
	* omp-simd-clone.cc: ...here.
	* opt-suggestions.c: Moved to...
	* opt-suggestions.cc: ...here.
	* optabs-libfuncs.c: Moved to...
	* optabs-libfuncs.cc: ...here.
	* optabs-query.c: Moved to...
	* optabs-query.cc: ...here.
	* optabs-tree.c: Moved to...
	* optabs-tree.cc: ...here.
	* optabs.c: Moved to...
	* optabs.cc: ...here.
	* opts-common.c: Moved to...
	* opts-common.cc: ...here.
	* opts-global.c: Moved to...
	* opts-global.cc: ...here.
	* opts.c: Moved to...
	* opts.cc: ...here.
	* passes.c: Moved to...
	* passes.cc: ...here.
	* plugin.c: Moved to...
	* plugin.cc: ...here.
	* postreload-gcse.c: Moved to...
	* postreload-gcse.cc: ...here.
	* postreload.c: Moved to...
	* postreload.cc: ...here.
	* predict.c: Moved to...
	* predict.cc: ...here.
	* prefix.c: Moved to...
	* prefix.cc: ...here.
	* pretty-print.c: Moved to...
	* pretty-print.cc: ...here.
	* print-rtl-function.c: Moved to...
	* print-rtl-function.cc: ...here.
	* print-rtl.c: Moved to...
	* print-rtl.cc: ...here.
	* print-tree.c: Moved to...
	* print-tree.cc: ...here.
	* profile-count.c: Moved to...
	* profile-count.cc: ...here.
	* profile.c: Moved to...
	* profile.cc: ...here.
	* read-md.c: Moved to...
	* read-md.cc: ...here.
	* read-rtl-function.c: Moved to...
	* read-rtl-function.cc: ...here.
	* read-rtl.c: Moved to...
	* read-rtl.cc: ...here.
	* real.c: Moved to...
	* real.cc: ...here.
	* realmpfr.c: Moved to...
	* realmpfr.cc: ...here.
	* recog.c: Moved to...
	* recog.cc: ...here.
	* ree.c: Moved to...
	* ree.cc: ...here.
	* reg-stack.c: Moved to...
	* reg-stack.cc: ...here.
	* regcprop.c: Moved to...
	* regcprop.cc: ...here.
	* reginfo.c: Moved to...
	* reginfo.cc: ...here.
	* regrename.c: Moved to...
	* regrename.cc: ...here.
	* regstat.c: Moved to...
	* regstat.cc: ...here.
	* reload.c: Moved to...
	* reload.cc: ...here.
	* reload1.c: Moved to...
	* reload1.cc: ...here.
	* reorg.c: Moved to...
	* reorg.cc: ...here.
	* resource.c: Moved to...
	* resource.cc: ...here.
	* rtl-error.c: Moved to...
	* rtl-error.cc: ...here.
	* rtl-tests.c: Moved to...
	* rtl-tests.cc: ...here.
	* rtl.c: Moved to...
	* rtl.cc: ...here.
	* rtlanal.c: Moved to...
	* rtlanal.cc: ...here.
	* rtlhash.c: Moved to...
	* rtlhash.cc: ...here.
	* rtlhooks.c: Moved to...
	* rtlhooks.cc: ...here.
	* rtx-vector-builder.c: Moved to...
	* rtx-vector-builder.cc: ...here.
	* run-rtl-passes.c: Moved to...
	* run-rtl-passes.cc: ...here.
	* sancov.c: Moved to...
	* sancov.cc: ...here.
	* sanopt.c: Moved to...
	* sanopt.cc: ...here.
	* sbitmap.c: Moved to...
	* sbitmap.cc: ...here.
	* sched-deps.c: Moved to...
	* sched-deps.cc: ...here.
	* sched-ebb.c: Moved to...
	* sched-ebb.cc: ...here.
	* sched-rgn.c: Moved to...
	* sched-rgn.cc: ...here.
	* sel-sched-dump.c: Moved to...
	* sel-sched-dump.cc: ...here.
	* sel-sched-ir.c: Moved to...
	* sel-sched-ir.cc: ...here.
	* sel-sched.c: Moved to...
	* sel-sched.cc: ...here.
	* selftest-diagnostic.c: Moved to...
	* selftest-diagnostic.cc: ...here.
	* selftest-rtl.c: Moved to...
	* selftest-rtl.cc: ...here.
	* selftest-run-tests.c: Moved to...
	* selftest-run-tests.cc: ...here.
	* selftest.c: Moved to...
	* selftest.cc: ...here.
	* sese.c: Moved to...
	* sese.cc: ...here.
	* shrink-wrap.c: Moved to...
	* shrink-wrap.cc: ...here.
	* simplify-rtx.c: Moved to...
	* simplify-rtx.cc: ...here.
	* sparseset.c: Moved to...
	* sparseset.cc: ...here.
	* spellcheck-tree.c: Moved to...
	* spellcheck-tree.cc: ...here.
	* spellcheck.c: Moved to...
	* spellcheck.cc: ...here.
	* sreal.c: Moved to...
	* sreal.cc: ...here.
	* stack-ptr-mod.c: Moved to...
	* stack-ptr-mod.cc: ...here.
	* statistics.c: Moved to...
	* statistics.cc: ...here.
	* stmt.c: Moved to...
	* stmt.cc: ...here.
	* stor-layout.c: Moved to...
	* stor-layout.cc: ...here.
	* store-motion.c: Moved to...
	* store-motion.cc: ...here.
	* streamer-hooks.c: Moved to...
	* streamer-hooks.cc: ...here.
	* stringpool.c: Moved to...
	* stringpool.cc: ...here.
	* substring-locations.c: Moved to...
	* substring-locations.cc: ...here.
	* symtab.c: Moved to...
	* symtab.cc: ...here.
	* target-globals.c: Moved to...
	* target-globals.cc: ...here.
	* targhooks.c: Moved to...
	* targhooks.cc: ...here.
	* timevar.c: Moved to...
	* timevar.cc: ...here.
	* toplev.c: Moved to...
	* toplev.cc: ...here.
	* tracer.c: Moved to...
	* tracer.cc: ...here.
	* trans-mem.c: Moved to...
	* trans-mem.cc: ...here.
	* tree-affine.c: Moved to...
	* tree-affine.cc: ...here.
	* tree-call-cdce.c: Moved to...
	* tree-call-cdce.cc: ...here.
	* tree-cfg.c: Moved to...
	* tree-cfg.cc: ...here.
	* tree-cfgcleanup.c: Moved to...
	* tree-cfgcleanup.cc: ...here.
	* tree-chrec.c: Moved to...
	* tree-chrec.cc: ...here.
	* tree-complex.c: Moved to...
	* tree-complex.cc: ...here.
	* tree-data-ref.c: Moved to...
	* tree-data-ref.cc: ...here.
	* tree-dfa.c: Moved to...
	* tree-dfa.cc: ...here.
	* tree-diagnostic.c: Moved to...
	* tree-diagnostic.cc: ...here.
	* tree-dump.c: Moved to...
	* tree-dump.cc: ...here.
	* tree-eh.c: Moved to...
	* tree-eh.cc: ...here.
	* tree-emutls.c: Moved to...
	* tree-emutls.cc: ...here.
	* tree-if-conv.c: Moved to...
	* tree-if-conv.cc: ...here.
	* tree-inline.c: Moved to...
	* tree-inline.cc: ...here.
	* tree-into-ssa.c: Moved to...
	* tree-into-ssa.cc: ...here.
	* tree-iterator.c: Moved to...
	* tree-iterator.cc: ...here.
	* tree-loop-distribution.c: Moved to...
	* tree-loop-distribution.cc: ...here.
	* tree-nested.c: Moved to...
	* tree-nested.cc: ...here.
	* tree-nrv.c: Moved to...
	* tree-nrv.cc: ...here.
	* tree-object-size.c: Moved to...
	* tree-object-size.cc: ...here.
	* tree-outof-ssa.c: Moved to...
	* tree-outof-ssa.cc: ...here.
	* tree-parloops.c: Moved to...
	* tree-parloops.cc: ...here.
	* tree-phinodes.c: Moved to...
	* tree-phinodes.cc: ...here.
	* tree-predcom.c: Moved to...
	* tree-predcom.cc: ...here.
	* tree-pretty-print.c: Moved to...
	* tree-pretty-print.cc: ...here.
	* tree-profile.c: Moved to...
	* tree-profile.cc: ...here.
	* tree-scalar-evolution.c: Moved to...
	* tree-scalar-evolution.cc: ...here.
	* tree-sra.c: Moved to...
	* tree-sra.cc: ...here.
	* tree-ssa-address.c: Moved to...
	* tree-ssa-address.cc: ...here.
	* tree-ssa-alias.c: Moved to...
	* tree-ssa-alias.cc: ...here.
	* tree-ssa-ccp.c: Moved to...
	* tree-ssa-ccp.cc: ...here.
	* tree-ssa-coalesce.c: Moved to...
	* tree-ssa-coalesce.cc: ...here.
	* tree-ssa-copy.c: Moved to...
	* tree-ssa-copy.cc: ...here.
	* tree-ssa-dce.c: Moved to...
	* tree-ssa-dce.cc: ...here.
	* tree-ssa-dom.c: Moved to...
	* tree-ssa-dom.cc: ...here.
	* tree-ssa-dse.c: Moved to...
	* tree-ssa-dse.cc: ...here.
	* tree-ssa-forwprop.c: Moved to...
	* tree-ssa-forwprop.cc: ...here.
	* tree-ssa-ifcombine.c: Moved to...
	* tree-ssa-ifcombine.cc: ...here.
	* tree-ssa-live.c: Moved to...
	* tree-ssa-live.cc: ...here.
	* tree-ssa-loop-ch.c: Moved to...
	* tree-ssa-loop-ch.cc: ...here.
	* tree-ssa-loop-im.c: Moved to...
	* tree-ssa-loop-im.cc: ...here.
	* tree-ssa-loop-ivcanon.c: Moved to...
	* tree-ssa-loop-ivcanon.cc: ...here.
	* tree-ssa-loop-ivopts.c: Moved to...
	* tree-ssa-loop-ivopts.cc: ...here.
	* tree-ssa-loop-manip.c: Moved to...
	* tree-ssa-loop-manip.cc: ...here.
	* tree-ssa-loop-niter.c: Moved to...
	* tree-ssa-loop-niter.cc: ...here.
	* tree-ssa-loop-prefetch.c: Moved to...
	* tree-ssa-loop-prefetch.cc: ...here.
	* tree-ssa-loop-split.c: Moved to...
	* tree-ssa-loop-split.cc: ...here.
	* tree-ssa-loop-unswitch.c: Moved to...
	* tree-ssa-loop-unswitch.cc: ...here.
	* tree-ssa-loop.c: Moved to...
	* tree-ssa-loop.cc: ...here.
	* tree-ssa-math-opts.c: Moved to...
	* tree-ssa-math-opts.cc: ...here.
	* tree-ssa-operands.c: Moved to...
	* tree-ssa-operands.cc: ...here.
	* tree-ssa-phiopt.c: Moved to...
	* tree-ssa-phiopt.cc: ...here.
	* tree-ssa-phiprop.c: Moved to...
	* tree-ssa-phiprop.cc: ...here.
	* tree-ssa-pre.c: Moved to...
	* tree-ssa-pre.cc: ...here.
	* tree-ssa-propagate.c: Moved to...
	* tree-ssa-propagate.cc: ...here.
	* tree-ssa-reassoc.c: Moved to...
	* tree-ssa-reassoc.cc: ...here.
	* tree-ssa-sccvn.c: Moved to...
	* tree-ssa-sccvn.cc: ...here.
	* tree-ssa-scopedtables.c: Moved to...
	* tree-ssa-scopedtables.cc: ...here.
	* tree-ssa-sink.c: Moved to...
	* tree-ssa-sink.cc: ...here.
	* tree-ssa-strlen.c: Moved to...
	* tree-ssa-strlen.cc: ...here.
	* tree-ssa-structalias.c: Moved to...
	* tree-ssa-structalias.cc: ...here.
	* tree-ssa-tail-merge.c: Moved to...
	* tree-ssa-tail-merge.cc: ...here.
	* tree-ssa-ter.c: Moved to...
	* tree-ssa-ter.cc: ...here.
	* tree-ssa-threadbackward.c: Moved to...
	* tree-ssa-threadbackward.cc: ...here.
	* tree-ssa-threadedge.c: Moved to...
	* tree-ssa-threadedge.cc: ...here.
	* tree-ssa-threadupdate.c: Moved to...
	* tree-ssa-threadupdate.cc: ...here.
	* tree-ssa-uncprop.c: Moved to...
	* tree-ssa-uncprop.cc: ...here.
	* tree-ssa-uninit.c: Moved to...
	* tree-ssa-uninit.cc: ...here.
	* tree-ssa.c: Moved to...
	* tree-ssa.cc: ...here.
	* tree-ssanames.c: Moved to...
	* tree-ssanames.cc: ...here.
	* tree-stdarg.c: Moved to...
	* tree-stdarg.cc: ...here.
	* tree-streamer-in.c: Moved to...
	* tree-streamer-in.cc: ...here.
	* tree-streamer-out.c: Moved to...
	* tree-streamer-out.cc: ...here.
	* tree-streamer.c: Moved to...
	* tree-streamer.cc: ...here.
	* tree-switch-conversion.c: Moved to...
	* tree-switch-conversion.cc: ...here.
	* tree-tailcall.c: Moved to...
	* tree-tailcall.cc: ...here.
	* tree-vect-data-refs.c: Moved to...
	* tree-vect-data-refs.cc: ...here.
	* tree-vect-generic.c: Moved to...
	* tree-vect-generic.cc: ...here.
	* tree-vect-loop-manip.c: Moved to...
	* tree-vect-loop-manip.cc: ...here.
	* tree-vect-loop.c: Moved to...
	* tree-vect-loop.cc: ...here.
	* tree-vect-patterns.c: Moved to...
	* tree-vect-patterns.cc: ...here.
	* tree-vect-slp-patterns.c: Moved to...
	* tree-vect-slp-patterns.cc: ...here.
	* tree-vect-slp.c: Moved to...
	* tree-vect-slp.cc: ...here.
	* tree-vect-stmts.c: Moved to...
	* tree-vect-stmts.cc: ...here.
	* tree-vector-builder.c: Moved to...
	* tree-vector-builder.cc: ...here.
	* tree-vectorizer.c: Moved to...
	* tree-vectorizer.cc: ...here.
	* tree-vrp.c: Moved to...
	* tree-vrp.cc: ...here.
	* tree.c: Moved to...
	* tree.cc: ...here.
	* tsan.c: Moved to...
	* tsan.cc: ...here.
	* typed-splay-tree.c: Moved to...
	* typed-splay-tree.cc: ...here.
	* ubsan.c: Moved to...
	* ubsan.cc: ...here.
	* valtrack.c: Moved to...
	* valtrack.cc: ...here.
	* value-prof.c: Moved to...
	* value-prof.cc: ...here.
	* var-tracking.c: Moved to...
	* var-tracking.cc: ...here.
	* varasm.c: Moved to...
	* varasm.cc: ...here.
	* varpool.c: Moved to...
	* varpool.cc: ...here.
	* vec-perm-indices.c: Moved to...
	* vec-perm-indices.cc: ...here.
	* vec.c: Moved to...
	* vec.cc: ...here.
	* vmsdbgout.c: Moved to...
	* vmsdbgout.cc: ...here.
	* vr-values.c: Moved to...
	* vr-values.cc: ...here.
	* vtable-verify.c: Moved to...
	* vtable-verify.cc: ...here.
	* web.c: Moved to...
	* web.cc: ...here.
	* xcoffout.c: Moved to...
	* xcoffout.cc: ...here.

2022-01-17  qing zhao  <qing.zhao@oracle.com>

	* tree-ssa-uninit.c (warn_uninit): Delete the 4th parameter. Handle
	.DEFERRED_INIT call with an anonymous SSA_NAME specially.
	(check_defs): Handle .DEFERRED_INIT call with an anonymous SSA_NAME
	specially.
	(warn_uninit_phi_uses): Delete the 4th actual when call warn_uninit.
	(warn_uninitialized_vars): Likewise.
	(warn_uninitialized_phi): Likewise.

2022-01-17  Jason Merrill  <jason@redhat.com>

	* diagnostic.h (struct diagnostic_context): Add includes_seen.
	* diagnostic.c (diagnostic_initialize): Initialize it.
	(diagnostic_finish): Clean it up.
	(includes_seen): New function.
	(diagnostic_report_current_module): Use it.

2022-01-17  Richard Biener  <rguenther@suse.de>

	PR middle-end/101292
	* diagnostic-spec.c (copy_warning): Make sure to not
	reference old hashtable content on possible resize.
	* warning-control.cc (copy_warning): Likewise.

2022-01-17  Jakub Jelinek  <jakub@redhat.com>

	PR target/103973
	* tree-cfg.h (cond_only_block_p): Declare.
	* tree-ssa-phiopt.c (cond_only_block_p): Move function to ...
	* tree-cfg.c (cond_only_block_p): ... here.  No longer static.
	* optabs.def (spaceship_optab): New optab.
	* internal-fn.def (SPACESHIP): New internal function.
	* internal-fn.h (expand_SPACESHIP): Declare.
	* internal-fn.c (expand_PHI): Formatting fix.
	(expand_SPACESHIP): New function.
	* tree-ssa-math-opts.c (optimize_spaceship): New function.
	(math_opts_dom_walker::after_dom_children): Use it.
	* config/i386/i386.md (spaceship<mode>3): New define_expand.
	* config/i386/i386-protos.h (ix86_expand_fp_spaceship): Declare.
	* config/i386/i386-expand.c (ix86_expand_fp_spaceship): New function.
	* doc/md.texi (spaceship@var{m}3): Document.

2022-01-17  Kewen Lin  <linkw@linux.ibm.com>

	* config/rs6000/altivec.md (altivec_vreveti2): Remove.
	* config/rs6000/vsx.md (*vsx_extract_si, *vsx_extract_si_<uns>float_df,
	*vsx_extract_si_<uns>float_<mode>, *vsx_insert_extract_v4sf_p9): Use
	known constant values to simplify code.

2022-01-17  Haochen Gui  <guihaoc@gcc.gnu.org>

	PR target/103124
	* config/rs6000/vsx.md (split pattern for TI to V1TI move): Defined.

2022-01-16  wwwhhhyyy  <hongyu.wang@intel.com>

	* config/i386/i386.h (TARGET_DEST_FALSE_DEP_FOR_GLC): New macro.
	* config/i386/sse.md (<avx512>_<complexopname>_<mode><maskc_name><round_name>):
	Insert zero-idiom in output template when attr enabled, set new attribute to
	true for non-mask/maskz insn.
	(avx512fp16_<complexopname>sh_v8hf<mask_scalarc_name><round_scalarcz_name>):
	Likewise.
	(avx512dq_mul<mode>3<mask_name>): Likewise.
	(<avx2_avx512>_permvar<mode><mask_name>): Likewise.
	(avx2_perm<mode>_1<mask_name>): Likewise.
	(avx512f_perm<mode>_1<mask_name>): Likewise.
	(avx512dq_rangep<mode><mask_name><round_saeonly_name>): Likewise.
	(avx512dq_ranges<mode><mask_scalar_name><round_saeonly_scalar_name>):
	Likewise.
	(<avx512>_getmant<mode><mask_name><round_saeonly_name>): Likewise.
	(avx512f_vgetmant<mode><mask_scalar_name><round_saeonly_scalar_name>):
	Likewise.
	* config/i386/subst.md (mask3_dest_false_dep_for_glc_cond): New
	subst_attr.
	(mask4_dest_false_dep_for_glc_cond): Likewise.
	(mask6_dest_false_dep_for_glc_cond): Likewise.
	(mask10_dest_false_dep_for_glc_cond): Likewise.
	(maskc_dest_false_dep_for_glc_cond): Likewise.
	(mask_scalar4_dest_false_dep_for_glc_cond): Likewise.
	(mask_scalarc_dest_false_dep_for_glc_cond): Likewise.
	* config/i386/x86-tune.def (X86_TUNE_DEST_FALSE_DEP_FOR_GLC): New
	DEF_TUNE enabled for m_SAPPHIRERAPIDS and m_ALDERLAKE

2022-01-15  Martin Sebor  <msebor@redhat.com>

	PR c/63272
	* diagnostic-spec.c (nowarn_spec_t::nowarn_spec_t): Handle
	-Wdangling-pointer.
	* doc/invoke.texi (-Wdangling-pointer): Document new option.
	* gimple-ssa-warn-access.cc (pass_waccess::clone): Set new member.
	(pass_waccess::check_pointer_uses): New function.
	(pass_waccess::gimple_call_return_arg): New function.
	(pass_waccess::gimple_call_return_arg_ref): New function.
	(pass_waccess::check_call_dangling): New function.
	(pass_waccess::check_dangling_uses): New function overloads.
	(pass_waccess::check_dangling_stores): New function.
	(pass_waccess::check_dangling_stores): New function.
	(pass_waccess::m_clobbers): New data member.
	(pass_waccess::m_func): New data member.
	(pass_waccess::m_run_number): New data member.
	(pass_waccess::m_check_dangling_p): New data member.
	(pass_waccess::check_alloca): Check m_early_checks_p.
	(pass_waccess::check_alloc_size_call): Same.
	(pass_waccess::check_strcat): Same.
	(pass_waccess::check_strncat): Same.
	(pass_waccess::check_stxcpy): Same.
	(pass_waccess::check_stxncpy): Same.
	(pass_waccess::check_strncmp): Same.
	(pass_waccess::check_memop_access): Same.
	(pass_waccess::check_read_access): Same.
	(pass_waccess::check_builtin): Call check_pointer_uses.
	(pass_waccess::warn_invalid_pointer): Add arguments.
	(is_auto_decl): New function.
	(pass_waccess::check_stmt): New function.
	(pass_waccess::check_block): Call check_stmt.
	(pass_waccess::execute): Call check_dangling_uses,
	check_dangling_stores.  Empty m_clobbers.
	* passes.def (pass_warn_access): Invoke pass two more times.

2022-01-15  Martin Sebor  <msebor@redhat.com>

	PR tree-optimization/80532
	* common.opt (-Wuse-after-free): New options.
	* diagnostic-spec.c (nowarn_spec_t::nowarn_spec_t): Handle
	OPT_Wreturn_local_addr and OPT_Wuse_after_free_.
	* diagnostic-spec.h (NW_DANGLING): New enumerator.
	* doc/invoke.texi (-Wuse-after-free): Document new option.
	* gimple-ssa-warn-access.cc (pass_waccess::check_call): Rename...
	(pass_waccess::check_call_access): ...to this.
	(pass_waccess::check): Rename...
	(pass_waccess::check_block): ...to this.
	(pass_waccess::check_pointer_uses): New function.
	(pass_waccess::gimple_call_return_arg): New function.
	(pass_waccess::warn_invalid_pointer): New function.
	(pass_waccess::check_builtin): Handle free and realloc.
	(gimple_use_after_inval_p): New function.
	(get_realloc_lhs): New function.
	(maybe_warn_mismatched_realloc): New function.
	(pointers_related_p): New function.
	(pass_waccess::check_call): Call check_pointer_uses.
	(pass_waccess::execute): Compute and free dominance info.

2022-01-15  Uroš Bizjak  <ubizjak@gmail.com>

	* config/i386/i386-expand.c (ix86_expand_sse_movcc): Use
	expand_simple_unop and expand_simple_binop instead of manually
	constructing NOT, AND and IOR RTXes.  Use vector_all_ones_operand
	consistently.  Eliminate common subexpressions and simplify code.
	* config/i386/sse.md (<any_logic:code><MODEF:mode>3): New expander.
	(<any_logic:code><MODEF:mode>3): Make public.

2022-01-14  Eric Botcazou  <ebotcazou@adacore.com>

	* ipa-param-manipulation.c (ipa_dump_adjusted_parameters): Dump
	reverse flag as "reverse" for the sake of consistency.
	* ipa-sra.c: Fix copyright year.
	(ipa_sra_function_summaries::duplicate): Copy the reverse flag.
	(dump_isra_access): Tweak dump line.
	(isra_write_node_summary): Write the reverse flag.
	(isra_read_node_info): Read it.
	(pull_accesses_from_callee): Test its consistency and copy it.

2022-01-14  Richard Sandiford  <richard.sandiford@arm.com>

	PR middle-end/104026
	* tree-vect-loop.c (_loop_vec_info::_loop_vec_info): Initialize
	partial_load_store_bias.

2022-01-14  Martin Sebor  <msebor@redhat.com>

	PR middle-end/101475
	* pointer-query.cc (handle_component_ref): Use the size of
	the enclosing object if it's smaller than the member.

2022-01-14  Martin Liska  <mliska@suse.cz>

	* configure: Regenerate.

2022-01-14  Uroš Bizjak  <ubizjak@gmail.com>

	* config/i386/i386.md (*add<mode>_1_slp"):
	Mark alternative 1 output operand earlyclobbered.
	(*sub<mode>_1_slp): Ditto.
	(*and<mode>_1_slp): Ditto.
	(*<code><mode>_1_slp): Ditto.
	(*neg<mode>_1_slp): Ditto.
	(*one_cmpl<mode>_1_slp): Ditto.
	(*ashl<mode>3_1_slp): Ditto.
	(*<insn><mode>3_1_slp): Ditto.
	(*<insn><mode>3_1_slp): Ditto.

2022-01-14  Kewen Lin  <linkw@linux.ibm.com>

	PR tree-optimization/104015
	* tree-vect-loop.c (vect_analyze_loop): Check
	param_vect_partial_vector_usage for supports_partial_vectors.

2022-01-14  Jakub Jelinek  <jakub@redhat.com>

	PR c++/89074
	* fold-const.c (address_compare): Punt on comparison of address of
	one object with address of end of another object if
	folding_initializer.

2022-01-14  Jakub Jelinek  <jakub@redhat.com>

	PR target/98737
	* tree-ssa-forwprop.c (simplify_builtin_call): Canonicalize
	__atomic_fetch_op (p, x, y) op x into __atomic_op_fetch (p, x, y)
	and __atomic_op_fetch (p, x, y) iop x into
	__atomic_fetch_op (p, x, y).

2022-01-14  Claudiu Zissulescu  <claziss@synopsys.com>

	* config/arc/arc.h (DWARF_FRAME_REGNUM): Update definition.
	(DWARF_FRAME_RETURN_COLUMN): Use RETURN_ADDR_REGNUM macro.
	(INCOMING_RETURN_ADDR_RTX): Likewise.
	(DWARF_ALT_FRAME_RETURN_COLUMN): Define.

2022-01-14  Claudiu Zissulescu  <claziss@synopsys.com>

	* config/arc/arc.c (arc_compute_frame_size): Remove condition when
	computin checking accumulator regs.
	(arc_expand_prologue): Update comments.
	(arc_expand_epilogue): Likewise.

2022-01-14  Roger Sayle  <roger@nextmovesoftware.com>
	    Uroš Bizjak  <ubizjak@gmail.com>

	* config/i386/i386-expand.c (ix86_expand_v1ti_to_ti): Use force_reg.
	(ix86_expand_ti_to_v1ti): Use force_reg.
	(ix86_expand_v1ti_shift): Use force_reg.
	(ix86_expand_v1ti_rotate): Use force_reg.
	(ix86_expand_v1ti_ashiftrt): Provide new three operation
	implementations for shifts by 111..126 bits.  Use force_reg.

2022-01-14  Martin Liska  <mliska@suse.cz>

	* common/config/arm/arm-common.c (arm_target_mode): Fix
	warning: unterminated quoting directive [-Wformat=].

2022-01-14  Siddhesh Poyarekar  <siddhesh@gotplt.org>

	PR tree-optimization/104009
	* tree-object-size.c (compute_builtin_object_size): Bail out on
	negative offset.
	(plus_stmt_object_size): Return maximum of wholesize and minimum
	of 0 for negative offset.

2022-01-14  liuhongt  <hongtao.liu@intel.com>

	PR target/104001
	PR target/94790
	PR target/104014
	* config/i386/i386.md (*xor2andn): Refine predicate of
	operands[0] from nonimmediate_operand to
	register_operand, remove TARGET_AVX512BW from condition.

2022-01-14  David Malcolm  <dmalcolm@redhat.com>

	* doc/extend.texi (Function Attributes): Note that "tainted_args" can
	be used on field decls.
	(Common Function Attributes): Add entry on "tainted_args" attribute.

2022-01-13  Anthony Sharp  <anthonysharp15@gmail.com>
	    Jason Merrill  <jason@redhat.com>

	PR c++/70417
	* doc/invoke.texi: Documentation for Wmissing-template-keyword.

2022-01-13  Uroš Bizjak  <ubizjak@gmail.com>

	PR target/103861
	* config/i386/i386.md (*ashlqi_ext<mode>_2): New insn pattern.
	(*<any_shiftrt:insn>qi_ext<mode>_2): Ditto.
	* config/i386/mmx.md (<any_shift:insn>v2qi):
	New insn_and_split pattern.

2022-01-13  Robin Dapp  <rdapp@linux.ibm.com>

	* internal-fn.c (expand_partial_load_optab_fn): Add bias.
	(expand_partial_store_optab_fn): Likewise.
	(internal_len_load_store_bias): New function.
	* internal-fn.h (VECT_PARTIAL_BIAS_UNSUPPORTED): New define.
	(internal_len_load_store_bias): New function.
	* tree-vect-loop-manip.c (vect_set_loop_controls_directly): Set bias.
	(vect_set_loop_condition_partial_vectors): Add header_seq parameter.
	* tree-vect-loop.c (vect_verify_loop_lens): Verify bias.
	(vect_estimate_min_profitable_iters): Account for bias.
	(vect_get_loop_len): Add bias-adjusted length.
	* tree-vect-stmts.c (vectorizable_store): Use.
	(vectorizable_load): Use.
	* tree-vectorizer.h (struct rgroup_controls): Add bias-adjusted length.
	(LOOP_VINFO_PARTIAL_LOAD_STORE_BIAS): New macro.
	* config/rs6000/vsx.md: Use const0 bias predicate.
	* doc/md.texi: Document bias value.

2022-01-13  Andrew MacLeod  <amacleod@redhat.com>

	PR tree-optimization/83072
	PR tree-optimization/83073
	PR tree-optimization/97909
	* fold-const.c (expr_not_equal_to): Use a multi-range class.

2022-01-13  Andrew MacLeod  <amacleod@redhat.com>

	PR tree-optimization/96707
	* range-op.cc (operator_rshift::lhs_op1_relation): New.

2022-01-13  Uroš Bizjak  <ubizjak@gmail.com>

	* config/i386/mmx.md (negv2qi): Disparage GPR alternative a bit.
	Disable for TARGET_PARTIAL_REG_STALL unless optimizing for size.
	(negv2qi splitters): Use lowpart_subreg instead of
	gen_lowpart to create subreg.
	(<plusminus:insn>v2qi3): Disparage GPR alternative a bit.
	Disable for TARGET_PARTIAL_REG_STALL unless optimizing for size.
	(<plusminus:insn>v2qi3 splitters): Use lowpart_subreg instead of
	gen_lowpart to create subreg.
	* config/i386/i386.md (*subqi_ext<mode>_2): Move.

2022-01-13  Uroš Bizjak  <ubizjak@gmail.com>

	PR target/104003
	* config/i386/mmx.md (*xop_pcmov_<mode>): Use VI_16_32 mode iterator.

2022-01-13  Martin Liska  <mliska@suse.cz>

	* common/config/arm/arm-common.c (arm_target_mode): Wrap
	keywords with %<, %> and remove trailing punctuation char.
	(arm_canon_arch_option_1): Likewise.
	(arm_asm_auto_mfpu): Likewise.
	* config/arm/arm-builtins.c (arm_expand_builtin): Likewise.
	* config/arm/arm.c (arm_options_perform_arch_sanity_checks): Likewise.
	(use_vfp_abi): Likewise.
	(aapcs_vfp_is_call_or_return_candidate): Likewise.
	(arm_handle_cmse_nonsecure_entry): Likewise.
	(arm_handle_cmse_nonsecure_call): Likewise.
	(thumb1_md_asm_adjust): Likewise.

2022-01-13  Paul A. Clarke  <pc@us.ibm.com>

	* config/rs6000/smmintrin.h (_mm_round_pd, _mm_round_ps,
	_mm_round_sd, _mm_round_ss, _MM_FROUND_TO_NEAREST_INT,
	_MM_FROUND_TO_ZERO, _MM_FROUND_TO_POS_INF, _MM_FROUND_TO_NEG_INF,
	_MM_FROUND_CUR_DIRECTION, _MM_FROUND_RAISE_EXC, _MM_FROUND_NO_EXC,
	_MM_FROUND_NINT, _MM_FROUND_FLOOR, _MM_FROUND_CEIL, _MM_FROUND_TRUNC,
	_MM_FROUND_RINT, _MM_FROUND_NEARBYINT): New.
	(_mm_ceil_pd, _mm_ceil_ps, _mm_ceil_sd, _mm_ceil_ss, _mm_floor_pd,
	_mm_floor_ps, _mm_floor_sd, _mm_floor_ss): Convert from function to
	macro.

2022-01-13  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/103989
	* tree-inline.c (setup_one_parameter): Don't copy parms with
	empty type.

2022-01-13  Thomas Schwinge  <thomas@codesourcery.com>

	* tree-streamer-out.c (pack_ts_base_value_fields): Don't pack
	'TYPE_ADDR_SPACE' for offloading.
	* tree-streamer-in.c (unpack_ts_base_value_fields): Don't unpack
	'TYPE_ADDR_SPACE' for offloading.

2022-01-13  Julian Brown  <julian@codesourcery.com>
	    Thomas Schwinge  <thomas@codesourcery.com>

	* omp-oacc-kernels-decompose.cc (add_wait): New function, split out
	of...
	(add_async_clauses_and_wait): ...here. Call new outlined function.
	(decompose_kernels_region_body): Add wait at the end of
	explicitly-asynchronous kernels regions.

2022-01-13  Thomas Schwinge  <thomas@codesourcery.com>

	PR middle-end/100280
	* omp-oacc-kernels-decompose.cc (maybe_build_inner_data_region):
	Mark variables used in synthesized data clauses as addressable.

2022-01-13  Martin Liska  <mliska@suse.cz>

	* config/epiphany/epiphany.c (epiphany_mode_priority):
	Use gcc_unreachable for not handled cases.

2022-01-13  Martin Liska  <mliska@suse.cz>

	* config/epiphany/epiphany.c (epiphany_handle_interrupt_attribute):
	Use %qs format specifier.
	(epiphany_override_options): Wrap keyword in %<, %>.

2022-01-13  Haochen Jiang  <haochen.jiang@intel.com>

	PR target/94790
	* config/i386/i386.md (*xor2andn): New define_insn_and_split.

2022-01-13  Xionghu Luo  <luoxhu@linux.ibm.com>

	* config/rs6000/altivec.md (sldoi_to_mov<mode>): New.

2022-01-12  Uroš Bizjak  <ubizjak@gmail.com>

	PR target/100637
	PR target/103861
	* config/i386/i386-expand.c (ix86_emit_vec_binop): New static function.
	(ix86_expand_sse_movcc): Use ix86_emit_vec_binop instead of gen_rtx_X
	when constructing vector logic RTXes.
	(expand_vec_perm_pshufb2): Ditto.
	* config/i386/mmx.md (negv2qi): Disparage GPR alternative a bit.
	(<plusminus:insn>v2qi3): Ditto.
	(vcond<mode><mode>): Re-enable for TARGET_SSE2.
	(vcondu<mode><mode>): Ditto.
	(vcond_mask_<mode><mode>): Ditto.
	(one_cmpl<VI_32:mode>2): Remove expander.
	(one_cmpl<VI_16_32:mode>2): Rename from one_cmplv2qi.
	Use VI_16_32 mode iterator.
	(one_cmpl<VI_16_32:mode>2 splitters): Use VI_16_32 mode iterator.
	Use lowpart_subreg instead of gen_lowpart to create subreg.
	(*andnot<VI_16_32:mode>3): Merge from "*andnot<VI_32:mode>" and
	"*andnotv2qi3" insn patterns using VI_16_32 mode iterator.
	Disparage GPR alternative a bit.  Add CC clobber.
	(*andnot<VI_16_32:mode>3 splitters): Use VI_16_32 mode iterator.
	Use lowpart_subreg instead of gen_lowpart to create subreg.
	(*<any_logic:code><VI_16_32:mode>3): Merge from
	"*<any_logic:code><VI_32:mode>" and "*<any_logic:code>v2qi3" insn patterns
	using VI_16_32 mode iterator.  Disparage GPR alternative a bit.
	Add CC clobber.
	(*<any_logic:code><VI_16_32:mode>3 splitters):Use VI_16_32 mode
	iterator.  Use lowpart_subreg instead of gen_lowpart to create subreg.

2022-01-12  Clément Chigot  <clement.chigot@atos.net>

	* configure.ac: Check sizeof ino_t and dev_t.
	(HOST_STAT_FOR_64BIT_INODES): New AC_DEFINE to provide stat
	syscall being able to handle 64bit inodes.
	* config.in: Regenerate.
	* configure: Regenerate.
	* incpath.c (HOST_STAT_FOR_64BIT_INODES): New define.
	(remove_duplicates): Use it.

2022-01-12  Andrew MacLeod  <amacleod@redhat.com>

	PR tree-optimization/103551
	* tree-vrp.c (execute_ranger_vrp): Always set EDGE_EXECUTABLE.

2022-01-12  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/103990
	* tree-pass.h (tail_merge_optimize): Drop unused argument.
	* tree-ssa-tail-merge.c (tail_merge_optimize): Likewise.
	* tree-ssa-pre.c (pass_pre::execute): Retain TODO_cleanup_cfg
	and adjust call to tail_merge_optimize.

2022-01-12  Andre Vieira  <andre.simoesdiasvieira@arm.com>

	* tree-vect-loop.c (vect-analyze-loop): Handle scenario where target
	does not add autovectorize_vector_modes.

2022-01-12  Martin Liska  <mliska@suse.cz>

	* config/aarch64/aarch64.c (aarch64_parse_boolean_options): Use
	%qs where possible.
	(aarch64_parse_sve_width_string): Likewise.
	(aarch64_override_options_internal): Likewise.
	(aarch64_print_hint_for_extensions): Likewise.
	(aarch64_validate_sls_mitigation): Likewise.
	(aarch64_handle_attr_arch): Likewise.
	(aarch64_handle_attr_cpu): Likewise.
	(aarch64_handle_attr_tune): Likewise.
	(aarch64_handle_attr_isa_flags): Likewise.

2022-01-12  Martin Liska  <mliska@suse.cz>

	* config.gcc: Include elfos.h before ${tm_file}.

2022-01-12  Hans-Peter Nilsson  <hp@axis.com>

	* config/cris/cris.c: Quote identifiers in parameters to error
	and internal_error, and remove extraneous spaces with punctuation.
	* config/cris/cris.h (CRIS_ASSERT): When passing on stringified
	expression to internal_error, pass it as a parameter instead of
	appending it to the format part.

2022-01-12  Hans-Peter Nilsson  <hp@axis.com>

	* config/cris/cris.c (cris_postdbr_cmpelim): Parenthesize
	parameter to as_a.

2022-01-11  qing zhao  <qing.zhao@oracle.com>

	* gimplify.c (gimple_add_init_for_auto_var): Delete the 3rd argument.
	Change the 3rd argument of function .DEFERRED_INIT to the name of the
	decl.
	(gimplify_decl_expr): Delete the 3rd argument when call
	gimple_add_init_for_auto_var.
	* internal-fn.c (expand_DEFERRED_INIT): Update comments to reflect
	the 3rd argument change of function .DEFERRED_INIT.
	* tree-cfg.c (verify_gimple_call): Update comments and verification
	to reflect the 3rd argument change of function .DEFERRED_INIT.
	* tree-sra.c (generate_subtree_deferred_init): Delete the 3rd argument.
	(sra_modify_deferred_init): Change the 3rd argument of function
	.DEFERRED_INIT to the name of the decl.

2022-01-11  Thomas Koenig  <tkoenig@gcc.gnu.org>

	* flag-types.h (enum gfc_convert): Add flags for
	conversion.

2022-01-11  Michael Meissner  <meissner@the-meissners.org>

	* config/rs6000/rs6000.c (rs6000_option_override_internal): Remove
	checks for only C/C++ front ends before allowing the long double
	format to change without a warning.

2022-01-11  Richard Sandiford  <richard.sandiford@arm.com>

	PR rtl-optimization/103974
	* ira-int.h (ira_subloop_allocnos_can_differ_p): Take an
	extra argument, default true, that says whether old-reload
	targets should be excluded.
	* ira-color.c (color_pass): Pass false.

2022-01-11  Uroš Bizjak  <ubizjak@gmail.com>

	PR target/103861
	* config/i386/mmx.md (vcond<mode><mode>):
	Use VI_16_32 mode iterator.  Enable for TARGET_SSE4_1.
	(vcondu<mode><mode>): Ditto.
	(vcond_mask_<mode><mode>): Ditto.
	(mmx_pblendvb_v8qi): Rename from mmx_pblendvb64.
	(mmx_pblendvb_<mode>): Rename from mmx_pblendvb32.
	Use VI_16_32 mode iterator.
	* config/i386/i386-expand.c (ix86_expand_sse_movcc):
	Update for rename.  Handle V2QImode.
	(expand_vec_perm_blend): Update for rename.

2022-01-11  Jakub Jelinek  <jakub@redhat.com>

	PR c++/101597
	* tree.def (OBJ_TYPE_REF): Document type of OBJ_TYPE_REF_TOKEN.

2022-01-11  Siddhesh Poyarekar  <siddhesh@gotplt.org>

	PR middle-end/70090
	* tree-object-size.c (size_valid_p): New function.
	(size_for_offset): Remove OFFSET constness assertion.
	(addr_object_size): Build dynamic expressions for object
	sizes and use size_valid_p to decide if it is valid for the
	given OBJECT_SIZE_TYPE.
	(compute_builtin_object_size): Allow dynamic offsets when
	computing size at O0.
	(call_object_size): Call size_valid_p.
	(plus_stmt_object_size): Allow non-constant offset and use
	size_valid_p to decide if it is valid for the given
	OBJECT_SIZE_TYPE.

2022-01-11  Siddhesh Poyarekar  <siddhesh@gotplt.org>

	PR middle-end/70090
	* tree-object-size.c (alloc_object_size): Make and return
	non-constant size expression.
	(call_object_size): Return expression or unknown based on
	whether dynamic object size is requested.

2022-01-11  Siddhesh Poyarekar  <siddhesh@gotplt.org>

	PR middle-end/70090
	* tree-object-size.c: Include tree-dfa.h.
	(parm_object_size): New function.
	(collect_object_sizes_for): Call it.

2022-01-11  Siddhesh Poyarekar  <siddhesh@gotplt.org>

	PR middle-end/70090
	* builtins.c (fold_builtin_object_size): Adjust for dynamic size
	expressions.
	* tree-object-size.c: Include gimplify-me.h.
	(struct object_size_info): New member UNKNOWNS.
	(size_initval_p, size_usable_p, object_sizes_get_raw): New
	functions.
	(object_sizes_get): Return suitable gimple variable for
	object size.
	(bundle_sizes): New function.
	(object_sizes_set): Use it and handle dynamic object size
	expressions.
	(object_sizes_set_temp): New function.
	(size_for_offset): Adjust for dynamic size expressions.
	(emit_phi_nodes, propagate_unknowns, gimplify_size_expressions):
	New functions.
	(compute_builtin_object_size): Call gimplify_size_expressions
	for OST_DYNAMIC.
	(dynamic_object_size): New function.
	(cond_expr_object_size): Use it.
	(phi_dynamic_object_size): New function.
	(collect_object_sizes_for): Call it for OST_DYNAMIC.  Adjust to
	accommodate dynamic object sizes.

2022-01-11  Siddhesh Poyarekar  <siddhesh@gotplt.org>
	    Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/103961
	* tree-object-size.c (plus_stmt_object_size): Always avoid
	computing offset for -1 size.

2022-01-11  Andrew MacLeod  <amacleod@redhat.com>

	PR tree-optimization/103821
	* range-op.cc (range_operator::fold_range): Only do precise ranges
	when there are not too many subranges.

2022-01-11  Richard Sandiford  <richard.sandiford@arm.com>

	* ira-costs.c (ira_tune_allocno_costs): Fix missing rclass
	definition in IRA_HARD_REGNO_ADD_COST_MULTIPLIER code.

2022-01-11  Roger Sayle  <roger@nextmovesoftware.com>
	    Richard Biener  <rguenther@suse.de>

	* tree-ssa-math-opts.c (struct widen_mul_stats): Add a
	highpart_mults_inserted field.
	(convert_mult_to_highpart): New function to convert right shift
	of a widening multiply into a MULT_HIGHPART_EXPR.
	(math_opts_dom_walker::after_dom_children) [RSHIFT_EXPR]:
	Call new convert_mult_to_highpart function.
	(pass_optimize_widening_mul::execute): Add a statistics counter
	for tracking "highpart multiplications inserted" events.

2022-01-11  Xionghu Luo  <luoxhu@linux.ibm.com>

	PR target/102239
	* config/rs6000/rs6000-protos.h (rs6000_is_valid_rotate_dot_mask): New
	declare.
	* config/rs6000/rs6000.c (rs6000_is_valid_rotate_dot_mask): New
	function.
	* config/rs6000/rs6000.md (*branch_anddi3_dot): New.

2022-01-11  Olivier Hainque  <hainque@adacore.com>

	* gcc.c (driver_handle_option): State --sysroot as
	validated.

2022-01-11  Kewen Lin  <linkw@linux.ibm.com>

	* config/rs6000/rs6000.c (rs6000_disable_incompatible_switches): Remove
	useless related to option -mno-power10.

2022-01-11  Haochen Jiang  <haochen.jiang@intel.com>

	PR target/53652
	* config/i386/sse.md (*andnot<mode>3): Extend predicate of
	operands[1] from register_operand to vector_operand.

2022-01-10  Uroš Bizjak  <ubizjak@gmail.com>

	PR target/103861
	* config/i386/i386-expand.c (ix86_expand_int_sse_cmp):
	Handle V2QImode.
	* config/i386/mmx.md (<sat_plusminus:insn><mode>3):
	Use VI1_16_32 mode iterator.
	(*eq<mode>3): Ditto.
	(*gt<mode>3): Ditto.
	(*xop_maskcmp<mode>3): Ditto.
	(*xop_maskcmp_uns<mode>3): Ditto.
	(vec_cmp<mode><mode>): Ditto.
	(vec_cmpu<mode><mode>): Ditto.

2022-01-10  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/103948
	* tree-vect-generic.c (expand_vector_condition): Return true if
	all ones vector is returned for true, all zeros vector for false
	and the target defines corresponding vec_cmp{,u}MN named RTX pattern.

2022-01-10  Paul A. Clarke  <pc@us.ibm.com>

	* config/rs6000/smmintrin.h (_mm_blendv_epi8): Use vec_blendv
	when _ARCH_PWR10. Use signed types.
	(_mm_blendv_ps): Use vec_blendv when _ARCH_PWR10.
	(_mm_blendv_pd): Likewise.

2022-01-10  Andre Vieira  <andre.simoesdiasvieira@arm.com>

	* tree-vectorizer.c (better_epilogue_loop_than_p): Round factors up for
	epilogue costing.
	* tree-vect-loop.c (vect_analyze_loop): Re-analyze all modes for
	epilogues, unless we are guaranteed that we can't have partial vectors.
	* genopinit.c: (partial_vectors_supported): Generate new function.

2022-01-10  Jakub Jelinek  <jakub@redhat.com>

	PR target/102024
	* config/i386/i386.c (classify_argument): Add zero_width_bitfields
	argument, when seeing DECL_FIELD_CXX_ZERO_WIDTH_BIT_FIELD bitfields,
	always ignore them, when seeing other zero sized bitfields, either
	set zero_width_bitfields to 1 and ignore it or if equal to 2 process
	it.  Pass it to recursive calls.  Add wrapper
	with old arguments and diagnose ABI differences for C structures
	with zero width bitfields.  Formatting fixes.

2022-01-10  Richard Sandiford  <richard.sandiford@arm.com>

	PR rtl-optimization/98782
	* ira-int.h (ira_soft_conflict): Declare.
	* ira-color.c (max_soft_conflict_loop_depth): New constant.
	(ira_soft_conflict): New function.
	(spill_soft_conflicts): Likewise.
	(assign_hard_reg): Use them to handle the case described by
	the comment above ira_soft_conflict.
	(improve_allocation): Likewise.
	* ira.c (check_allocation): Allow allocnos with "soft" conflicts
	to share the same register.

2022-01-10  Richard Sandiford  <richard.sandiford@arm.com>

	PR rtl-optimization/98782
	* ira-int.h (ira_caller_save_cost): New function.
	(ira_caller_save_loop_spill_p): Likewise.
	* ira-build.c (ira_propagate_hard_reg_costs): Test whether it is
	cheaper to spill a call-clobbered register throughout a loop rather
	than spill it around each individual call.  If so, treat all
	call-clobbered registers as conflicts and...
	(propagate_allocno_info): ...do not propagate call information
	from the child to the parent.
	* ira-color.c (move_spill_restore): Update accordingly.
	* ira-costs.c (ira_tune_allocno_costs): Use ira_caller_save_cost.

2022-01-10  Richard Sandiford  <richard.sandiford@arm.com>

	PR rtl-optimization/98782
	* ira-int.h (ira_allocno::might_conflict_with_parent_p): New field.
	(ALLOCNO_MIGHT_CONFLICT_WITH_PARENT_P): New macro.
	(ira_single_region_allocno_p): New function.
	(ira_total_conflict_hard_regs): Likewise.
	* ira-build.c (ira_create_allocno): Initialize
	ALLOCNO_MIGHT_CONFLICT_WITH_PARENT_P.
	(ira_propagate_hard_reg_costs): New function.
	(propagate_allocno_info): Use it.  Try to avoid propagating
	hard register conflicts to parent allocnos if we can handle
	the conflicts by spilling instead.  Limit the propagated
	register costs to the cost of spilling throughout the child loop.
	* ira-color.c (color_pass): Use ira_single_region_allocno_p to
	test whether a child and parent allocno can share the same
	register.
	(move_spill_restore): Adjust for the new behavior of
	propagate_allocno_info.

2022-01-10  Richard Sandiford  <richard.sandiford@arm.com>

	PR rtl-optimization/98782
	* ira-int.h (ira_subloop_allocnos_can_differ_p): New function,
	extracted from...
	* ira-color.c (color_pass): ...here.

2022-01-10  Richard Sandiford  <richard.sandiford@arm.com>

	PR rtl-optimization/98782
	* ira-color.c (color_pass): Add comments to describe the spill costs.
	(move_spill_restore): Likewise.  Fix reversed calculation.

2022-01-10  Richard Sandiford  <richard.sandiford@arm.com>

	PR rtl-optimization/98782
	* ira-int.h (ira_loop_border_costs): New class.
	* ira-color.c (ira_loop_border_costs::ira_loop_border_costs):
	New constructor.
	(calculate_allocno_spill_cost): Use ira_loop_border_costs.
	(color_pass): Likewise.
	(move_spill_restore): Likewise.

2022-01-10  Eric Botcazou  <ebotcazou@adacore.com>

	PR target/103465
	* coretypes.h (unwind_info_type): Swap UI_SEH and UI_TARGET.

2022-01-10  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/100359
	* tree-ssa-loop-ivcanon.c (try_unroll_loop_completely):
	Allow non-growing peeling with !allow_peel and UL_ALL.

2022-01-08  Roger Sayle  <roger@nextmovesoftware.com>

	* config/i386/i386-expand.c (ix86_expand_vector_move): Add
	special case for TImode to V1TImode moves, going via V2DImode.

2022-01-08  Jakub Jelinek  <jakub@redhat.com>

	PR c++/89074
	* match.pd ((ptr) (x p+ y) p+ z -> (ptr) (x p+ (y + z))): New GENERIC
	simplification.

2022-01-08  David Malcolm  <dmalcolm@redhat.com>

	* doc/analyzer.texi
	(Special Functions for Debugging the Analyzer): Document
	__analyzer_dump_escaped.

2022-01-08  David Malcolm  <dmalcolm@redhat.com>

	* doc/analyzer.texi (Other Debugging Techniques): Document
	region::is_named_decl_p.

2022-01-07  Andrew Pinski  <apinski@marvell.com>

	PR target/102941
	* config/arm/aarch-common.c (arm_md_asm_adjust):
	Use a temp if !REG_P.

2022-01-07  Uroš Bizjak  <ubizjak@gmail.com>

	* config/i386/mmx.md (*move<V_32:mode>_internal): Add isa attribute.
	(*movv2qi_internal): Remve sse2 requirement for alternatives 4,5.

2022-01-07  liuhongt  <hongtao.liu@intel.com>

	PR rtl-optimization/103750
	* fwprop.c (forward_propagate_into): Allow propagations from
	inner loop to outer loop.

2022-01-07  Roger Sayle  <roger@nextmovesoftware.com>

	* config/nvptx/nvptx.md (*cnot<mode>2): New define_insn.

2022-01-07  Haochen Gui  <guihaoc@gcc.gnu.org>

	* config/rs6000/rs6000.md (rs6000_mffscrni): Define.
	(rs6000_set_fpscr_rn): Change the type of operand[0] from DI to SI.
	Call gen_rs6000_mffscrni when operand[0] is a const_0_to_3_operand.

2022-01-07  liuhongt  <hongtao.liu@intel.com>

	* config/i386/sse.md
	(*<avx512>_eq<mode>3<mask_scalar_merge_name>_1): Extend to
	UNSPEC_PCMP_UNSIGNED.

2022-01-07  liuhongt  <hongtao.liu@intel.com>

	PR target/103753
	* config/i386/i386-expand.c (ix86_expand_vector_set): Not use
	gen_avx2_pblendph_1 when elt == 0.
	* config/i386/sse.md (avx2_pblendph): Rename to ..
	(avx2_pblend<ssemodesuffix>_1).. this, and extend to V16HI.
	(*avx2_pblendw): Rename to ..
	(*avx2_pblend<ssemodesuffix>): .. this, and extend to V16HF.
	(avx2_pblendw): Rename to ..
	(*avx2_pblend<ssemodesuffix>): .. this, and extend to V16HF.
	(blendsuf): Removed.
	(sse4_1_pblend<blendsuf>): Renamed to ..
	(sse4_1_pblend<ssemodesuffix>): .. this.

2022-01-06  H.J. Lu  <hjl.tools@gmail.com>

	PR target/103925
	* config/i386/i386.c (ix86_output_indirect_function_return):
	Generate INT3 after indirect jmp for -mharden-sls=indirect-jmp.

2022-01-06  H.J. Lu  <hjl.tools@gmail.com>

	PR target/102952
	* config/i386/i386-opts.h (harden_sls): Replace
	harden_sls_indirect_branch with harden_sls_indirect_jmp.
	* config/i386/i386.c (ix86_output_jmp_thunk_or_indirect):
	Likewise.
	(ix86_output_indirect_jmp): Likewise.
	(ix86_output_call_insn): Likewise.
	* config/i386/i386.opt: Replace indirect-branch with
	indirect-jmp.  Replace harden_sls_indirect_branch with
	harden_sls_indirect_jmp.
	* doc/invoke.texi (-harden-sls=): Replace indirect-branch with
	indirect-jmp.

2022-01-06  Uroš Bizjak  <ubizjak@gmail.com>

	* config/i386/i386.c (ix86_output_ssemov) <MODE_DI>:
	Add %q modifier for operands in general registers.
	<MODE_SI>: Add %q modifier for operands in general registers.
	* config/i386/i386.md (*movhi_internal): Change type attribute of
	xmm-gpr interunit alternatives 9,10 to ssemov and mode attribute
	to SImode for non-avx512fp16 targets.
	(*movhf_internal): Ditto for xmm-gpr interunit alternatives 6,8.
	* config/i386/mmx.md (*movv2qi_internal):
	Ditto for xmm-gpr interunit alternatives 8,9.

2022-01-06  Kito Cheng  <kito.cheng@sifive.com>

	* common/config/riscv/riscv-common.c (riscv_implied_info): Add
	vector extensions.
	(riscv_ext_version_table): Add version info for vector extensions.
	(riscv_ext_flag_table): Add option mask for vector extensions.
	* config/riscv/riscv-opts.h (MASK_VECTOR_EEW_32): New.
	(MASK_VECTOR_EEW_64): New.
	(MASK_VECTOR_EEW_FP_32): New.
	(MASK_VECTOR_EEW_FP_64): New.
	(MASK_ZVL32B): New.
	(MASK_ZVL64B): New.
	(MASK_ZVL128B): New.
	(MASK_ZVL256B): New.
	(MASK_ZVL512B): New.
	(MASK_ZVL1024B): New.
	(MASK_ZVL2048B): New.
	(MASK_ZVL4096B): New.
	(MASK_ZVL8192B): New.
	(MASK_ZVL16384B): New.
	(MASK_ZVL32768B): New.
	(MASK_ZVL65536B): New.
	(TARGET_ZVL32B): New.
	(TARGET_ZVL64B): New.
	(TARGET_ZVL128B): New.
	(TARGET_ZVL256B): New.
	(TARGET_ZVL512B): New.
	(TARGET_ZVL1024B): New.
	(TARGET_ZVL2048B): New.
	(TARGET_ZVL4096B): New.
	(TARGET_ZVL8192B): New.
	(TARGET_ZVL16384B): New.
	(TARGET_ZVL32768B): New.
	(TARGET_ZVL65536B): New.
	* config/riscv/riscv.opt (Mask(VECTOR)): New.
	(riscv_vector_eew_flags): New.
	(riscv_zvl_flags): New.

2022-01-06  Kito Cheng  <kito.cheng@sifive.com>

	* common/config/riscv/riscv-common.c
	(riscv_subset_list::parse_multiletter_ext): Allow ext. name has
	digit.

2022-01-06  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/103899
	* expr.c (expand_expr_real_1): Add a workaround for bogus uninit
	warning by moving context variable to the only spot where it is used
	and moving gcc_assert into if body.

2022-01-06  Jakub Jelinek  <jakub@redhat.com>

	PR rtl-optimization/103908
	* ifcvt.c (bb_valid_for_noce_process_p): Punt on bbs ending with
	asm goto.

2022-01-05  Bill Schmidt  <wschmidt@linux.ibm.com>

	PR target/103622
	* config/rs6000/rs6000-c.c (altivec_resolve_overloaded_builtin):
	Skip over instances with undefined function types.

2022-01-05  Andrew Pinski  <apinski@marvell.com>

	PR target/103910
	* config/i386/i386.h (x86_mfence): Mark with GTY.

2022-01-05  Uroš Bizjak  <ubizjak@gmail.com>

	PR target/103861
	* config/i386/mmx.md (VI_16_32): New mode iterator.
	(VI1_16_32): Ditto.
	(mmxvecsize): Handle V2QI mode.
	(<smaxmin:code><mode>3): Rename from <smaxmin:code>v4qi3.
	Use VI1_16_32 mode iterator.
	(<umaxmin:code><mode>3): Rename from <umaxmin:code>v4qi3.
	Use VI1_16_32 mode iterator.
	(abs<mode>2): Use VI_16_32 mode iterator.
	(uavgv2qi3_ceil): New insn pattern.

2022-01-05  Martin Sebor  <msebor@redhat.com>

	* gimple-ssa-warn-access.cc (pass_waccess::maybe_warn_memmodel): Use
	%qs to avoid -Wformat-diag.

2022-01-05  Uroš Bizjak  <ubizjak@gmail.com>

	PR target/103915
	* config/i386/mmx.md (one_cmplv2qi2): Change
	alternatives 1,2 type from sselog to sselog1.

2022-01-05  Uroš Bizjak  <ubizjak@gmail.com>

	PR target/103905
	* config/i386/i386-expand.c (expand_vec_perm_pshufb): Fix number of
	narrow mode remapped elements for !one_operand_p case.

2022-01-05  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/103816
	* tree-vect-data-refs.c (vect_analyze_group_access_1): Also
	check DR_GROUP_GAP compute for overflow and representability.

2022-01-05  Jakub Jelinek  <jakub@redhat.com>

	PR fortran/103691
	* gimple-fold.c (fold_stmt_1): Don't call maybe_fold_reference
	for DEBUG stmts with ADDR_EXPR gimple_debug_bind_get_value,
	it can do unwanted rhs folding like &a[0] into &2.0 etc.

2022-01-05  Kewen Lin  <linkw@linux.ibm.com>

	PR ipa/102059
	* config/rs6000/rs6000.c (TARGET_NEED_IPA_FN_TARGET_INFO): New macro.
	(TARGET_UPDATE_IPA_FN_TARGET_INFO): Likewise.
	(rs6000_need_ipa_fn_target_info): New function.
	(rs6000_update_ipa_fn_target_info): Likewise.
	(rs6000_can_inline_p): Adjust for ipa function summary target info.
	* config/rs6000/rs6000.h (RS6000_FN_TARGET_INFO_HTM): New macro.
	* ipa-fnsummary.c (ipa_dump_fn_summary): Adjust for ipa function
	summary target info.
	(analyze_function_body): Adjust for ipa function summary target info
	and call hook rs6000_need_ipa_fn_target_info and
	rs6000_update_ipa_fn_target_info.
	(ipa_merge_fn_summary_after_inlining): Adjust for ipa function summary
	target info.
	(inline_read_section): Likewise.
	(ipa_fn_summary_write): Likewise.
	* ipa-fnsummary.h (ipa_fn_summary::target_info): New member.
	* doc/tm.texi: Regenerate.
	* doc/tm.texi.in (TARGET_UPDATE_IPA_FN_TARGET_INFO): Document new hook.
	(TARGET_NEED_IPA_FN_TARGET_INFO): Likewise.
	* target.def (update_ipa_fn_target_info): New hook.
	(need_ipa_fn_target_info): Likewise.
	* targhooks.c (default_need_ipa_fn_target_info): New function.
	(default_update_ipa_fn_target_info): Likewise.
	* targhooks.h (default_update_ipa_fn_target_info): New declare.
	(default_need_ipa_fn_target_info): Likewise.

2022-01-04  Martin Sebor  <msebor@redhat.com>

	PR middle-end/99612
	* builtins.c (get_memmodel): Move warning code to
	gimple-ssa-warn-access.cc.
	(expand_builtin_atomic_compare_exchange): Same.
	(expand_ifn_atomic_compare_exchange): Same.
	(expand_builtin_atomic_load): Same.
	(expand_builtin_atomic_store): Same.
	(expand_builtin_atomic_clear): Same.
	* doc/extend.texi (__atomic_exchange_n): Update valid memory
	models.
	* gimple-ssa-warn-access.cc (memmodel_to_uhwi): New function.
	(struct memmodel_pair): New struct.
	(memmodel_name): New function.
	(pass_waccess::maybe_warn_memmodel): New function.
	(pass_waccess::check_atomic_memmodel): New function.
	(pass_waccess::check_atomic_builtin): Handle memory model.
	* input.c (expansion_point_location_if_in_system_header): Return
	original location if expansion location is in a system header.

2022-01-04  Uroš Bizjak  <ubizjak@gmail.com>

	PR target/103861
	* config/i386/mmx.md (one_cmplv2qi3): New insn pattern.
	(one_cmplv2qi3 splitters): New post-reload splitters.
	(*andnotv2qi3): New insn pattern.
	(andnotv2qi3 splitters): New post-reload splitters.
	(<any_logic:code>v2qi3): New insn pattern.
	(<any_logic:insn>v2qi3 splitters): New post-reload splitters.

2022-01-04  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/103800
	* tree-vect-loop.c (vectorizable_phi): Remove assert and
	expand comment.

2022-01-04  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/103690
	* tree-pass.h (tail_merge_optimize): Adjust.
	* tree-ssa-tail-merge.c (tail_merge_optimize): Pass in whether
	to re-split critical edges, move CFG cleanup ...
	* tree-ssa-pre.c (pass_pre::execute): ... here, before
	simple_dce_from_worklist and delay freeing inserted_exprs from
	...
	(fini_pre): .. here.

2022-01-04  Roger Sayle  <roger@nextmovesoftware.com>

	* config/nvptx/nvptx.h (STORE_FLAG_VALUE): Change to 1.
	* config/nvptx/nvptx.md (movbi): Use P1 constraint for true.
	(setcc_from_bi): Remove SImode specific pattern.
	(setcc<mode>_from_bi): Provide more general HSDIM pattern.
	(extendbi<mode>2, zeroextendbi<mode>2): Provide instructions
	for sign- and zero-extending BImode predicates to integers.
	(setcc_int<mode>): Remove previous (-1-based) instructions.
	(cstorebi4): Remove BImode to SImode specific expander.
	(cstore<mode>4): Fix indentation.  Expand using setccsi_from_bi.
	(cstore<mode>4): For both integer and floating point modes.

2022-01-04  Olivier Hainque  <hainque@adacore.com>

	* gcc.c (driver_handle_option): do_save --sysroot.

2022-01-04  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/103864
	PR tree-optimization/103544
	* tree-vect-slp.c (vect_analyze_slp_instance): Exclude
	reductions wrapped in conversions from SLP handling.
	(vect_analyze_slp): Revert PR103544 change.

2022-01-04  Jakub Jelinek  <jakub@redhat.com>

	PR rtl-optimization/103860
	* shrink-wrap.c (try_shrink_wrapping): Don't call can_get_prologue
	uselessly for blocks for which it has been called already.

2022-01-04  Cui,Lili  <lili.cui@intel.com>

	* common/config/i386/cpuinfo.h (get_intel_cpu): Add new model values
	to Alderlake and Rocketlake.

2022-01-04  Chung-Lin Tang  <cltang@codesourcery.com>

	PR middle-end/103643
	* gimplify.c (gimplify_omp_affinity): Adjust gimplify_expr of entire
	OMP_CLAUSE_DECL to use 'is_gimple_lvalue, fb_lvalue'

2022-01-04  liuhongt  <hongtao.liu@intel.com>

	PR target/103895
	* config/i386/sse.md (*bit_and_float_vector_all_ones):
	Force_reg operand 1 to avoid ICE.

2022-01-04  Jason Merrill  <jason@redhat.com>

	* tree-pretty-print.c (do_niy): Add spc parameter.
	(NIY): Pass it.
	(print_call_name): Add spc local variable.

2022-01-03  Uroš Bizjak  <ubizjak@gmail.com>

	PR target/103894
	* config/i386/mmx.md (mov<V_32:mode>): Remove TARGET_SSE2 constraint.
	(mov<V_32:mode>_internal): Ditto.
	(*push<V_32:mode>_rex64): Ditto.
	(movmisalign<V_32:mode>): Ditto.
	(*push<V_32:mode>_rex64 splitter): Enable for
	TARGET_64BIT && TARGET_SSE.
	(*push<V_32:mode>2): Remove insn pattern.

2022-01-03  Andrew Pinski  <apinski@marvell.com>

	PR c/33193
	* doc/extend.texi: Extend the documentation about Complex
	types for casting and also rewrite the __real__/__imag__
	expression portion to use tables.
	Move __builtin_complex to the Complex type section.

2022-01-03  Jakub Jelinek  <jakub@redhat.com>

	PR target/98737
	* internal-fn.def (ATOMIC_ADD_FETCH_CMP_0, ATOMIC_SUB_FETCH_CMP_0,
	ATOMIC_AND_FETCH_CMP_0, ATOMIC_OR_FETCH_CMP_0, ATOMIC_XOR_FETCH_CMP_0):
	New internal fns.
	* internal-fn.h (ATOMIC_OP_FETCH_CMP_0_EQ, ATOMIC_OP_FETCH_CMP_0_NE,
	ATOMIC_OP_FETCH_CMP_0_LT, ATOMIC_OP_FETCH_CMP_0_LE,
	ATOMIC_OP_FETCH_CMP_0_GT, ATOMIC_OP_FETCH_CMP_0_GE): New enumerators.
	* internal-fn.c (expand_ATOMIC_ADD_FETCH_CMP_0,
	expand_ATOMIC_SUB_FETCH_CMP_0, expand_ATOMIC_AND_FETCH_CMP_0,
	expand_ATOMIC_OR_FETCH_CMP_0, expand_ATOMIC_XOR_FETCH_CMP_0): New
	functions.
	* optabs.def (atomic_add_fetch_cmp_0_optab,
	atomic_sub_fetch_cmp_0_optab, atomic_and_fetch_cmp_0_optab,
	atomic_or_fetch_cmp_0_optab, atomic_xor_fetch_cmp_0_optab): New
	direct optabs.
	* builtins.h (expand_ifn_atomic_op_fetch_cmp_0): Declare.
	* builtins.c (expand_ifn_atomic_op_fetch_cmp_0): New function.
	* tree-ssa-ccp.c: Include internal-fn.h.
	(optimize_atomic_bit_test_and): Add . before internal fn call
	in function comment.  Change return type from void to bool and
	return true only if successfully replaced.
	(optimize_atomic_op_fetch_cmp_0): New function.
	(pass_fold_builtins::execute): Use optimize_atomic_op_fetch_cmp_0
	for BUILT_IN_ATOMIC_{ADD,SUB,AND,OR,XOR}_FETCH_{1,2,4,8,16} and
	BUILT_IN_SYNC_{ADD,SUB,AND,OR,XOR}_AND_FETCH_{1,2,4,8,16},
	for *XOR* ones only if optimize_atomic_bit_test_and failed.
	* config/i386/sync.md (atomic_<plusminus_mnemonic>_fetch_cmp_0<mode>,
	atomic_<logic>_fetch_cmp_0<mode>): New define_expand patterns.
	(atomic_add_fetch_cmp_0<mode>_1, atomic_sub_fetch_cmp_0<mode>_1,
	atomic_<logic>_fetch_cmp_0<mode>_1): New define_insn patterns.
	* doc/md.texi (atomic_add_fetch_cmp_0<mode>,
	atomic_sub_fetch_cmp_0<mode>, atomic_and_fetch_cmp_0<mode>,
	atomic_or_fetch_cmp_0<mode>, atomic_xor_fetch_cmp_0<mode>): Document
	new named patterns.

2022-01-03  Richard Biener  <rguenther@suse.de>

	PR middle-end/103851
	* tree-cfg.c (move_sese_region_to_fn): Always release SSA names.

2022-01-03  Jakub Jelinek  <jakub@redhat.com>

	PR c++/94716
	* symtab.c: Include fold-const.h.
	(symtab_node::equal_address_to): If folding_initializer is true,
	handle it like memory_accessed.  Simplify.

2022-01-03  Martin Liska  <mliska@suse.cz>

	* doc/extend.texi: Use ; for function declarations.

2022-01-03  Jakub Jelinek  <jakub@redhat.com>

	PR c++/103600
	* symtab.c (symtab_node::equal_address_to): Return 0 if one of
	VAR_DECLs has "non overlapping" attribute and rs1 != rs2.

2022-01-03  Jakub Jelinek  <jakub@redhat.com>

	* gcc.c (process_command): Update copyright notice dates.
	* gcov-dump.c (print_version): Ditto.
	* gcov.c (print_version): Ditto.
	* gcov-tool.c (print_version): Ditto.
	* gengtype.c (create_file): Ditto.
	* doc/cpp.texi: Bump @copying's copyright year.
	* doc/cppinternals.texi: Ditto.
	* doc/gcc.texi: Ditto.
	* doc/gccint.texi: Ditto.
	* doc/gcov.texi: Ditto.
	* doc/install.texi: Ditto.
	* doc/invoke.texi: Ditto.

2022-01-02  Uroš Bizjak  <ubizjak@gmail.com>

	PR target/103861
	* config/i386/i386.h (VALID_SSE2_REG_MODE): Add V2QImode.
	(VALID_INT_MODE_P): Ditto.
	* config/i386/i386.c (ix86_secondary_reload): Handle
	V2QImode reloads from SSE register to memory.
	(vector_mode_supported_p): Always return true for V2QImode.
	* config/i386/i386.md (*subqi_ext<mode>_2): New insn pattern.
	(*negqi_ext<mode>_2): Ditto.
	* config/i386/mmx.md (movv2qi): New expander.
	(movmisalignv2qi): Ditto.
	(*movv2qi_internal): New insn pattern.
	(*pushv2qi2): Ditto.
	(negv2qi2 and splitters): Ditto.
	(<plusminus:insn>v2qi3 and splitters): Ditto.

2022-01-02  John David Anglin  <danglin@gcc.gnu.org>

	* config/pa/pa.md (atomic_storeq): Use optab_libfunc to access
	sync_lock_test_and_set libfunc. Call convert_memory_address to
	convert memory address to Pmode.
	(atomic_storehi, atomic_storesi, atomic_storedi): Likewise.


Copyright (C) 2022 Free Software Foundation, Inc.

Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
notice and this notice are preserved.
