+2021-09-03 Segher Boessenkool <segher@kernel.crashing.org>
+
+ PR target/102107
+ * config/rs6000/rs6000-logue.c (rs6000_emit_prologue): On ELFv2 use r11
+ instead of r12 for CR save, in all cases.
+
+2021-09-03 Andrew Pinski <apinski@marvell.com>
+
+ * config/aarch64/aarch64-sve-builtins.cc (register_vector_type):
+ Handle error_mark_node as the type of the type_decl.
+
+2021-09-03 Andrew Pinski <apinski@marvell.com>
+
+ * config/aarch64/aarch64-builtins.c (struct aarch64_simd_type_info):
+ Mark with GTY.
+ (aarch64_simd_types): Likewise.
+ (aarch64_simd_intOI_type_node): Likewise.
+ (aarch64_simd_intCI_type_node): Likewise.
+ (aarch64_simd_intXI_type_node): Likewise.
+ * config/aarch64/aarch64.h (aarch64_fp16_type_node): Likewise.
+ (aarch64_fp16_ptr_type_node): Likewise.
+ (aarch64_bf16_type_node): Likewise.
+ (aarch64_bf16_ptr_type_node): Likewise.
+
+2021-09-03 Aldy Hernandez <aldyh@redhat.com>
+
+ * range-op.cc (operator_minus::op1_op2_relation_effect): Abstract
+ out to...
+ (minus_op1_op2_relation_effect): ...here.
+ (class operator_pointer_diff): New.
+ (operator_pointer_diff::op1_op2_relation_effect): Call
+ minus_op1_op2_relation_effect.
+ (integral_table::integral_table): Add entry for POINTER_DIFF_EXPR.
+
+2021-09-03 Aldy Hernandez <aldyh@redhat.com>
+
+ * tree-ssa-threadbackward.c (back_threader::thread_through_all_blocks):
+ Add may_peel_loop_headers.
+ (back_threader_registry::thread_through_all_blocks): Same.
+ (try_thread_blocks): Pass may_peel_loop_headers argument.
+ (pass_early_thread_jumps::execute): Same.
+
+2021-09-03 Aldy Hernandez <aldyh@redhat.com>
+
+ * tree-ssa-threadedge.c (has_phis_p): New.
+ (forwarder_block_p): New.
+ (potentially_threadable_block): Call forwarder_block_p.
+ (jump_threader::thread_around_empty_blocks): Call has_phis_p.
+ (jump_threader::thread_through_normal_block): Call
+ forwarder_block_p.
+
+2021-09-03 Aldy Hernandez <aldyh@redhat.com>
+
+ * tree-ssa-threadbackward.c (back_threader::dump): New.
+ (back_threader::debug): New.
+ (back_threader_profitability::profitable_path_p): Dump blocks
+ even if we are bailing early.
+
+2021-09-03 Aldy Hernandez <aldyh@redhat.com>
+
+ * tree-ssa-threadupdate.c (cancel_thread): New.
+ (jump_thread_path_registry::thread_block_1): Use cancel_thread.
+ (jump_thread_path_registry::mark_threaded_blocks): Same.
+ (jump_thread_path_registry::register_jump_thread): Same.
+
+2021-09-03 Aldy Hernandez <aldyh@redhat.com>
+
+ * tree-ssa-threadedge.c (jt_state::push): Only call methods for
+ which objects are available.
+ (jt_state::pop): Same.
+ (jt_state::register_equiv): Same.
+ (jt_state::register_equivs_on_edge): Same.
+
+2021-09-03 Aldy Hernandez <aldyh@redhat.com>
+
+ * tree-ssa-threadedge.c (jump_threader::thread_across_edge):
+ Move pop until after a thread is registered.
+
+2021-09-03 Aldy Hernandez <aldyh@redhat.com>
+
+ * tree-ssa-threadupdate.c (debug): New.
+
+2021-09-03 Aldy Hernandez <aldyh@redhat.com>
+
+ * gimple-range-trace.cc (push_dump_file::push_dump_file): New.
+ (push_dump_file::~push_dump_file): New.
+ (dump_ranger): Change dump_file temporarily while dumping
+ ranger.
+ * gimple-range-trace.h (class push_dump_file): New.
+
+2021-09-03 Aldy Hernandez <aldyh@redhat.com>
+
+ * gimple-range-trace.cc (debug_seed_ranger): Remove static.
+ (dump_ranger): Dump function name.
+
+2021-09-03 Aldy Hernandez <aldyh@redhat.com>
+
+ * gimple-range-path.cc (path_range_query::range_defined_in_block):
+ Adjust for non-null.
+ (path_range_query::adjust_for_non_null_uses): New.
+ (path_range_query::precompute_ranges): Call
+ adjust_for_non_null_uses.
+ * gimple-range-path.h: Add m_non_null and
+ adjust_for_non_null_uses.
+
+2021-09-03 Aldy Hernandez <aldyh@redhat.com>
+
+ * gimple-range-path.cc (path_range_query::dump): Dump path
+ length.
+ (path_range_query::precompute_ranges): Dump entire path.
+
+2021-09-03 Aldy Hernandez <aldyh@redhat.com>
+
+ * value-relation.cc (relation_oracle::debug): New.
+ * value-relation.h (relation_oracle::debug): New.
+
+2021-09-03 Aldy Hernandez <aldyh@redhat.com>
+
+ * tree-ssa-loop-ch.c: Remove unnecessary include file.
+
+2021-09-03 Aldy Hernandez <aldyh@redhat.com>
+
+ * gimple-range-fold.cc (fold_using_range::postfold_gcond_edges):
+ Skip statements with no defining BB.
+ * gimple-range-path.cc (path_range_query::range_defined_in_block):
+ Do not get confused by statements with no defining BB.
+
+2021-09-03 Aldy Hernandez <aldyh@redhat.com>
+
+ * gimple-range-fold.cc (adjust_imagpart_expr): Move from
+ gimple_range_adjustment. Add support for constants.
+ (adjust_realpart_expr): New.
+ (gimple_range_adjustment): Move IMAGPART_EXPR code to
+ adjust_imagpart_expr.
+ * range-op.cc (integral_table::integral_table): Add entry for
+ REALPART_CST.
+
+2021-09-03 Jakub Jelinek <jakub@redhat.com>
+
+ * omp-expand.c (expand_omp_atomic_pipeline): Use
+ IFN_ATOMIC_COMPARE_EXCHANGE instead of
+ BUILT_IN_SYNC_VAL_COMPARE_AND_SWAP_? so that memory order
+ can be provided.
+
+2021-09-03 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/102024
+ * tree.h (DECL_FIELD_ABI_IGNORED): Changed into rvalue only macro
+ that is false if DECL_BIT_FIELD.
+ (SET_DECL_FIELD_ABI_IGNORED, DECL_FIELD_CXX_ZERO_WIDTH_BIT_FIELD,
+ SET_DECL_FIELD_CXX_ZERO_WIDTH_BIT_FIELD): Define.
+ * tree-streamer-out.c (pack_ts_decl_common_value_fields): For
+ DECL_BIT_FIELD stream DECL_FIELD_CXX_ZERO_WIDTH_BIT_FIELD instead
+ of DECL_FIELD_ABI_IGNORED.
+ * tree-streamer-in.c (unpack_ts_decl_common_value_fields): Use
+ SET_DECL_FIELD_ABI_IGNORED instead of writing to
+ DECL_FIELD_ABI_IGNORED and for DECL_BIT_FIELD use
+ SET_DECL_FIELD_CXX_ZERO_WIDTH_BIT_FIELD instead.
+ * lto-streamer-out.c (hash_tree): For DECL_BIT_FIELD hash
+ DECL_FIELD_CXX_ZERO_WIDTH_BIT_FIELD instead of DECL_FIELD_ABI_IGNORED.
+
+2021-09-03 liuhongt <hongtao.liu@intel.com>
+
+ PR target/102166
+ * config/i386/amxbf16intrin.h : Remove macro check for __AMX_BF16__.
+ * config/i386/amxint8intrin.h : Remove macro check for __AMX_INT8__.
+ * config/i386/amxtileintrin.h : Remove macro check for __AMX_TILE__.
+
2021-09-02 Martin Sebor <msebor@redhat.com>
PR tree-optimization/17506
+2021-09-03 Iain Sandoe <iain@sandoe.co.uk>
+
+ * coroutines.cc (register_local_var_uses): Do not mangle
+ frame entries for the outermost scope. Record the outer
+ scope as nesting depth 0.
+
+2021-09-03 Iain Sandoe <iain@sandoe.co.uk>
+
+ * coroutines.cc (coro_build_artificial_var): New.
+ (build_actor_fn): Use var builder, rename vars to use
+ implementation namespace.
+ (coro_rewrite_function_body): Likewise.
+ (morph_fn_to_coro): Likewise.
+
+2021-09-03 Iain Sandoe <iain@sandoe.co.uk>
+
+ * coroutines.cc (transform_local_var_uses): Record
+ frame offset expressions as DECL_VALUE_EXPRs instead of
+ rewriting them.
+
+2021-09-03 Patrick Palka <ppalka@redhat.com>
+
+ PR c++/101904
+ * call.c (build_this_conversion): New function, split out from
+ add_function_candidate.
+ (add_function_candidate): New parameter shortcut_bad_convs.
+ Document it. Use build_this_conversion. Stop at the first bad
+ argument conversion when shortcut_bad_convs is true.
+ (add_template_candidate_real): New parameter shortcut_bad_convs.
+ Use build_this_conversion to check the 'this' conversion before
+ attempting deduction. When the rejection reason code is
+ rr_bad_arg_conversion, pass -1 instead of 0 as the viable
+ parameter to add_candidate. Pass 'convs' to add_candidate.
+ (add_template_candidate): New parameter shortcut_bad_convs.
+ (add_template_conv_candidate): Pass false as shortcut_bad_convs
+ to add_template_candidate_real.
+ (add_candidates): Prefer to shortcut bad conversions during
+ overload resolution under the assumption that we'll eventually
+ see a strictly viable candidate. If this assumption turns out
+ to be false, re-process the non-strictly viable candidates
+ without shortcutting those bad conversions.
+
+2021-09-03 Jason Merrill <jason@redhat.com>
+
+ * pt.c (limit_bad_template_recursion): Suppress -Wunused for decls
+ we decide not to instantiate.
+
+2021-09-03 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/102024
+ * class.c (build_base_field): Use SET_DECL_FIELD_ABI_IGNORED
+ instead of writing to DECL_FIELD_ABI_IGNORED.
+ (layout_class_type): Likewise. In the place where zero-width
+ bitfields used to be removed, use
+ SET_DECL_FIELD_CXX_ZERO_WIDTH_BIT_FIELD on those fields instead.
+
2021-09-01 Iain Sandoe <iain@sandoe.co.uk>
* call.c (build_over_call): Handle unavailable state in addition to