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.
