+2020-08-26 Tobias Burnus <tobias@codesourcery.com>
+
+ * MAINTAINERS (Various Maintainers): Add myself as OpenACC maintainer.
+
2020-08-20 Tobias Burnus <tobias@codesourcery.com>
PR bootstrap/96612
+2020-08-26 Iain Buclaw <ibuclaw@gdcproject.org>
+
+ * config-list.mk (LIST): Add OPT-enable-obsolete to tilegx-linux-gnu,
+ tilegxbe-linux-gnu, and tilepro-linux-gnu.
+
2020-07-29 Martin Liska <mliska@suse.cz>
* git-backport.py: fix how are ChangeLog paths combined.
+2020-08-26 Göran Uddeborg <goeran@uddeborg.se>
+
+ PR gcov-profile/96285
+ * common.opt, doc/invoke.texi: Clarify wording of
+ -fprofile-exclude-files and adjust -fprofile-filter-files to
+ match.
+
+2020-08-26 H.J. Lu <hjl.tools@gmail.com>
+
+ PR target/96802
+ * config/i386/i386-options.c (ix86_valid_target_attribute_inner_p):
+ Reject target("no-general-regs-only").
+
+2020-08-26 Jozef Lawrynowicz <jozef.l@mittosystems.com>
+
+ * config/msp430/constraints.md (K): Change unused constraint to
+ constraint to a const_int between 1 and 19.
+ (P): New constraint.
+ * config/msp430/msp430-protos.h (msp430x_logical_shift_right): Remove.
+ (msp430_expand_shift): New.
+ (msp430_output_asm_shift_insns): New.
+ * config/msp430/msp430.c (msp430_rtx_costs): Remove shift costs.
+ (CSH): Remove.
+ (msp430_expand_helper): Remove hard-coded generation of some inline
+ shift insns.
+ (use_helper_for_const_shift): New.
+ (msp430_expand_shift): New.
+ (msp430_output_asm_shift_insns): New.
+ (msp430_print_operand): Add new 'W' operand selector.
+ (msp430x_logical_shift_right): Remove.
+ * config/msp430/msp430.md (HPSI): New define_mode_iterator.
+ (HDI): Likewise.
+ (any_shift): New define_code_iterator.
+ (shift_insn): New define_code_attr.
+ Adjust unnamed insn patterns searched for by combine.
+ (ashlhi3): Remove.
+ (slli_1): Remove.
+ (430x_shift_left): Remove.
+ (slll_1): Remove.
+ (slll_2): Remove.
+ (ashlsi3): Remove.
+ (ashldi3): Remove.
+ (ashrhi3): Remove.
+ (srai_1): Remove.
+ (430x_arithmetic_shift_right): Remove.
+ (srap_1): Remove.
+ (srap_2): Remove.
+ (sral_1): Remove.
+ (sral_2): Remove.
+ (ashrsi3): Remove.
+ (ashrdi3): Remove.
+ (lshrhi3): Remove.
+ (srli_1): Remove.
+ (430x_logical_shift_right): Remove.
+ (srlp_1): Remove.
+ (srll_1): Remove.
+ (srll_2x): Remove.
+ (lshrsi3): Remove.
+ (lshrdi3): Remove.
+ (<shift_insn><mode>3): New define_expand.
+ (<shift_insn>hi3_430): New define_insn.
+ (<shift_insn>si3_const): Likewise.
+ (ashl<mode>3_430x): Likewise.
+ (ashr<mode>3_430x): Likewise.
+ (lshr<mode>3_430x): Likewise.
+ (*bitbranch<mode>4_z): Replace renamed predicate msp430_bitpos with
+ const_0_to_15_operand.
+ * config/msp430/msp430.opt: New option -mmax-inline-shift=.
+ * config/msp430/predicates.md (const_1_to_8_operand): New predicate.
+ (const_0_to_15_operand): Rename msp430_bitpos predicate.
+ (const_1_to_19_operand): New predicate.
+ * doc/invoke.texi: Document -mmax-inline-shift=.
+
+2020-08-26 Aldy Hernandez <aldyh@redhat.com>
+
+ * tree-ssa-dom.c (simplify_stmt_for_jump_threading): Abstract code out to...
+ * tree-vrp.c (find_case_label_range): ...here. Rewrite for to use irange
+ API.
+ (simplify_stmt_for_jump_threading): Call find_case_label_range instead of
+ duplicating the code in simplify_stmt_for_jump_threading.
+ * tree-vrp.h (find_case_label_range): New prototype.
+
+2020-08-26 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/96698
+ * tree-vectorizer.h (loop_vec_info::reduc_latch_defs): New.
+ (loop_vec_info::reduc_latch_slp_defs): Likewise.
+ * tree-vect-stmts.c (vect_transform_stmt): Only record
+ stmts to update PHI latches from, perform the update ...
+ * tree-vect-loop.c (vect_transform_loop): ... here after
+ vectorizing those PHIs.
+ (info_for_reduction): Properly handle non-reduction PHIs.
+
+2020-08-26 Martin Liska <mliska@suse.cz>
+
+ * cgraphunit.c (process_symver_attribute): Match only symver
+ TREE_PURPOSE.
+
+2020-08-26 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/96783
+ * tree-vect-stmts.c (get_group_load_store_type): Use
+ VMAT_ELEMENTWISE for negative strides when we cannot
+ use VMAT_STRIDED_SLP.
+
+2020-08-26 Martin Liska <mliska@suse.cz>
+
+ * doc/invoke.texi: Document how are pie and pic options merged.
+
+2020-08-26 Zhiheng Xie <xiezhiheng@huawei.com>
+
+ * config/aarch64/aarch64-simd-builtins.def: Add proper FLAG
+ for add/sub arithmetic intrinsics.
+
+2020-08-26 Jakub Jelinek <jakub@redhat.com>
+
+ PR debug/96729
+ * dwarf2out.c (dwarf2out_next_real_insn): Adjust function comment.
+ (dwarf2out_var_location): Look for next_note only if next_real is
+ non-NULL, in that case look for the first non-deleted
+ NOTE_INSN_VAR_LOCATION between loc_note and next_real, if any.
+
+2020-08-26 Iain Buclaw <ibuclaw@gdcproject.org>
+
+ * config/tilepro/gen-mul-tables.cc (main): Define IN_TARGET_CODE to 1
+ in the target file.
+
+2020-08-26 Martin Liska <mliska@suse.cz>
+
+ * cgraphunit.c (process_symver_attribute): Allow multiple
+ symver attributes for one symbol.
+ * doc/extend.texi: Document the change.
+
2020-08-25 H.J. Lu <hjl.tools@gmail.com>
PR target/95863
+2020-08-26 David Malcolm <dmalcolm@redhat.com>
+
+ PR analyzer/94858
+ * region-model-manager.cc
+ (region_model_manager::get_or_create_widening_svalue): Assert that
+ neither of the inputs are themselves widenings.
+ * store.cc (store::eval_alias_1): The initial value of a pointer
+ can't point to a region that was allocated on the heap after the
+ beginning of the path. A widened pointer value can't alias anything
+ that the initial pointer value can't alias.
+ * svalue.cc (svalue::can_merge_p): Merge BINOP (X, OP, CST) with X
+ to a widening svalue. Merge
+ BINOP(WIDENING(BASE, BINOP(BASE, X)), X) and BINOP(BASE, X) to
+ to the LHS of the first BINOP.
+
+2020-08-26 David Malcolm <dmalcolm@redhat.com>
+
+ PR analyzer/96777
+ * region-model.h (class compound_svalue): Document that all keys
+ must be concrete.
+ (compound_svalue::compound_svalue): Move definition to svalue.cc.
+ * store.cc (binding_map::apply_ctor_to_region): Handle
+ initializers for trailing arrays with incomplete size.
+ * svalue.cc (compound_svalue::compound_svalue): Move definition
+ here from region-model.h. Add assertion that all keys are
+ concrete.
+
2020-08-22 David Malcolm <dmalcolm@redhat.com>
PR analyzer/94851
+2020-08-26 Nathan Sidwell <nathan@acm.org>
+
+ * decl.c (poplevel): A local-binding tree list holds the name in
+ TREE_PURPOSE.
+ * name-lookup.c (update_local_overload): Add id to TREE_PURPOSE.
+ (lookup_name_1): Deal with local-binding error_mark_node marker.
+ (op_unqualified_lookup): Return error_mark_node for 'nothing
+ found'. Retain global binding, check class binding here.
+ (maybe_save_operator_binding): Reimplement to always cache a
+ result.
+ (push_operator_bindings): Deal with 'ignore' marker.
+
2020-08-25 Tobias Burnus <tobias@codesourcery.com>
PR c/96678
+2020-08-26 Iain Buclaw <ibuclaw@gdcproject.org>
+
+ * dmd/MERGE: Merge upstream dmd e49192807
+
+2020-08-26 Iain Buclaw <ibuclaw@gdcproject.org>
+
+ PR d/96156
+ * d-frontend.cc (retStyle): Only return RETstack for struct and static
+ array types.
+ * decl.cc (DeclVisitor::visit (FuncDeclaration *)): Use NRVO return
+ for all TREE_ADDRESSABLE types. Set shidden to the RESULT_DECL.
+ * expr.cc (ExprVisitor::visit (CallExp *)): Force TARGET_EXPR if the
+ 'this' pointer reference is a CONSTRUCTOR.
+ (ExprVisitor::visit (StructLiteralExp *)): Generate assignment to the
+ symbol to initialize with literal.
+ * toir.cc (IRVisitor::visit (ReturnStatement *)): Detect returning
+ struct literals and write directly into the RESULT_DECL.
+ * dmd/MERGE: Merge upstream dmd fe5f388d8.
+
+2020-08-26 Iain Buclaw <ibuclaw@gdcproject.org>
+
+ * dmd/MERGE: Merge upstream dmd cb4a96fae
+
+2020-08-26 Iain Buclaw <ibuclaw@gdcproject.org>
+
+ * d-lang.cc (d_parse_file): Use read() to load contents from stdin,
+ allow the front-end to free the memory after parsing.
+ * dmd/MERGE: Merge upstream dmd 2cc25c219.
+
+2020-08-26 Iain Buclaw <ibuclaw@gdcproject.org>
+
+ PR d/96153
+ * d-codegen.cc (build_address): Create a temporary for CALL_EXPRs
+ returning trivial aggregates, pre-filling it with zeroes.
+ (build_memset_call): Use build_zero_cst if setting the entire object.
+
+2020-08-26 Iain Buclaw <ibuclaw@gdcproject.org>
+
+ PR d/96157
+ * d-codegen.cc (d_build_call): Handle TREE_ADDRESSABLE static arrays.
+ * types.cc (make_array_type): Propagate TREE_ADDRESSABLE from base
+ type to static array.
+
+2020-08-26 Iain Buclaw <ibuclaw@gdcproject.org>
+
+ * d-gimplify.cc (d_gimplify_expr): Move lowering of each tree node to
+ separate functions.
+ (d_gimplify_modify_expr): New function.
+ (d_gimplify_addr_expr): New function.
+ (d_gimplify_call_expr): New function.
+ (d_gimplify_unsigned_rshift_expr): New function.
+
+2020-08-26 Iain Buclaw <ibuclaw@gdcproject.org>
+
+ * Make-lang.in (D_OBJS): Add d-gimplify.o.
+ * d-lang.cc (empty_modify_p): Move to d-gimplify.cc.
+ (d_gimplify_expr): Likewise.
+ * d-tree.h (d_gimplify_expr): Declare.
+ * d-gimplify.cc: New file.
+
2020-08-20 Iain Buclaw <ibuclaw@gdcproject.org>
* dmd/MERGE: Merge upstream dmd 1b5a53d01.
+2020-08-26 Tobias Burnus <tobias@codesourcery.com>
+
+ * gfortran.h (enum gfc_omp_device_type): New.
+ (symbol_attribute, gfc_omp_clauses, gfc_common_head): Use it.
+ * module.c (enum ab_attribute): Add AB_OMP_DEVICE_TYPE_HOST,
+ AB_OMP_DEVICE_TYPE_NOHOST and AB_OMP_DEVICE_TYPE_ANY.
+ (attr_bits, mio_symbol_attribute): Handle it.
+ (load_commons, write_common_0): Handle omp_device_type flag.
+ * openmp.c (enum omp_mask1): Add OMP_CLAUSE_DEVICE_TYPE
+ (OMP_DECLARE_TARGET_CLAUSES): Likewise.
+ (gfc_match_omp_clauses): Match 'device_type'.
+ (gfc_match_omp_declare_target): Handle it.
+ * trans-common.c (build_common_decl): Write device-type clause.
+ * trans-decl.c (add_attributes_to_decl): Likewise.
+
2020-08-23 Paul Thomas <pault@gcc.gnu.org>
PR fortran/96737
+2020-08-26 Jeff Law <law@redhat.com>
+
+ * gcc.target/i386/387-7.c: Add dg-require-effective-target c99_runtime.
+ * gcc.target/i386/387-9.c: Likewise.
+ * g++.target/i386/avx512bw-pr96246-1.C: Likewise.
+ * gcc.target/i386/avx512f-rint-sfix-vec-2.c: Likewise.
+ * gcc.target/i386/avx512f-rintf-sfix-vec-2.c: Likewise.
+ * g++.target/i386/avx512vl-pr96246-1.C: Likewise.
+ * gcc.target/i386/pr61403.c: Likewise.
+ * gcc.target/i386/sse4_1-ceil-sfix-vec.c: Likewise.
+ * gcc.target/i386/sse4_1-ceilf-sfix-vec.c: Likewise.
+ * gcc.target/i386/sse4_1-floor-sfix-vec.c: Likewise.
+ * gcc.target/i386/sse4_1-floorf-sfix-vec.c: Likewise.
+ * gcc.target/i386/sse4_1-rint-sfix-vec.c: Likewise.
+ * gcc.target/i386/sse4_1-rintf-sfix-vec.c: Likewise.
+ * gcc.target/i386/sse4_1-round-sfix-vec.c: Likewise.
+ * gcc.target/i386/sse4_1-roundf-sfix-vec.c: Likewise.
+
+2020-08-26 H.J. Lu <hjl.tools@gmail.com>
+
+ PR target/96802
+ * gcc.target/i386/pr96802-1.c: New test.
+ * gcc.target/i386/pr96802-2.c: Likewise.
+
+2020-08-26 Jozef Lawrynowicz <jozef.l@mittosystems.com>
+
+ * gcc.target/msp430/emulate-srli.c: Fix expected assembler text.
+ * gcc.target/msp430/max-inline-shift-430-no-opt.c: New test.
+ * gcc.target/msp430/max-inline-shift-430.c: New test.
+ * gcc.target/msp430/max-inline-shift-430x.c: New test.
+
+2020-08-26 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/96698
+ * gcc.dg/vect/pr96698.c: New testcase.
+
+2020-08-26 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/96783
+ * gcc.dg/vect/pr96783-1.c: New testcase.
+ * gcc.dg/vect/pr96783-2.c: Likewise.
+
+2020-08-26 Nathan Sidwell <nathan@acm.org>
+
+ * g++.dg/lookup/operator-1.C: New.
+ * g++.dg/lookup/operator-2.C: New.
+
+2020-08-26 Qian Jianhua <qianjh@cn.fujitsu.com>
+
+ * gcc.target/aarch64/insv_1.c: Add '#' in scan-assembler
+
+2020-08-26 Iain Buclaw <ibuclaw@gdcproject.org>
+
+ PR d/96156
+ * gdc.dg/pr96156.d: New test.
+
+2020-08-26 Iain Buclaw <ibuclaw@gdcproject.org>
+
+ PR d/96153
+ * gdc.dg/pr96153.d: Add new tests.
+
+2020-08-26 Iain Buclaw <ibuclaw@gdcproject.org>
+
+ PR d/96157
+ * gdc.dg/pr96157a.d: New test.
+ * gdc.dg/pr96157b.d: New test.
+
+2020-08-26 Iain Buclaw <ibuclaw@gdcproject.org>
+
+ * lib/gdc-utils.exp (gdc-convert-test): Clear PERMUTE_ARGS for
+ fail_compilation tests if not set by test file.
+
+2020-08-26 Martin Liska <mliska@suse.cz>
+
+ * lib/target-supports-dg.exp: Add dg-require-symver.
+ * lib/target-supports.exp: Likewise.
+ * gcc.dg/ipa/symver1.c: New test.
+
+2020-08-26 Tobias Burnus <tobias@codesourcery.com>
+
+ * gfortran.dg/gomp/declare-target-4.f90: New test.
+ * gfortran.dg/gomp/declare-target-5.f90: New test.
+
+2020-08-26 liuhongt <hongtao.liu@intel.com>
+
+ PR target/96667
+ * gcc.target/i386/avx512bw-pr96246-1.c: Moved to...
+ * g++.target/i386/avx512bw-pr96246-1.C: ...here.
+ * gcc.target/i386/avx512bw-pr96246-2.c: Moved to...
+ * g++.target/i386/avx512bw-pr96246-2.C: ...here.
+ * gcc.target/i386/avx512vl-pr96246-1.c: Moved to...
+ * g++.target/i386/avx512vl-pr96246-1.C: ...here.
+ * gcc.target/i386/avx512vl-pr96246-2.c: Moved to...
+ * g++.target/i386/avx512vl-pr96246-2.C: ...here.
+
+2020-08-26 David Malcolm <dmalcolm@redhat.com>
+
+ PR analyzer/94858
+ * gcc.dg/analyzer/loop-start-up-to-end-by-1.c: Remove xfail.
+ * gcc.dg/analyzer/pr94858-1.c: New test.
+ * gcc.dg/analyzer/pr94858-2.c: New test.
+ * gcc.dg/analyzer/torture/loop-inc-ptr-2.c: Update expected number
+ of enodes.
+ * gcc.dg/analyzer/torture/loop-inc-ptr-3.c: Likewise.
+
+2020-08-26 David Malcolm <dmalcolm@redhat.com>
+
+ PR analyzer/96777
+ * gcc.dg/analyzer/pr96777.c: New test.
+
2020-08-25 H.J. Lu <hjl.tools@gmail.com>
PR target/95863
+2020-08-26 Jozef Lawrynowicz <jozef.l@mittosystems.com>
+
+ * config/msp430/slli.S (__gnu_mspabi_sllp): New.
+ * config/msp430/srai.S (__gnu_mspabi_srap): New.
+ * config/msp430/srli.S (__gnu_mspabi_srlp): New.
+
2020-08-13 Kwok Cheung Yeung <kcy@codesourcery.com>
* config/nvptx/atomic.c: New.
+2020-08-26 Iain Buclaw <ibuclaw@gdcproject.org>
+
+ * d-demangle.c (dlang_function_args): Handle 'in' and 'in ref'
+ parameter storage classes.
+ (dlang_type): Remove identifier type.
+ * testsuite/d-demangle-expected: Update tests.
+
2020-08-03 Richard Biener <rguenther@suse.de>
PR lto/96385
+2020-08-26 Jonathan Wakely <jwakely@redhat.com>
+
+ * include/std/tuple (_Tuple_impl): Whitespaces changes for
+ consistent indentation. Also use __enable_if_t alias template.
+
+2020-08-26 Jonathan Wakely <jwakely@redhat.com>
+
+ PR libstdc++/96803
+ * include/std/tuple
+ (_Tuple_impl(allocator_arg_t, Alloc, const _Tuple_impl<U...>&)):
+ Replace parameter pack with a type parameter and a pack and pass
+ the first type to __use_alloc.
+ * testsuite/20_util/tuple/cons/96803.cc: New test.
+
+2020-08-26 Patrick Palka <ppalka@redhat.com>
+
+ * include/std/chrono (year_month_weekday::operator==): Compare
+ weekday_indexed instead of weekday.
+ * testsuite/std/time/year_month_weekday/1.cc: Augment testcase.
+
+2020-08-26 Jonathan Wakely <jwakely@redhat.com>
+
+ * include/bits/hashtable_policy.h (_Hash_code_base): Change
+ index of _Hashtable_ebo_helper base class.
+ * testsuite/23_containers/unordered_map/dup_types.cc: New test.
+
+2020-08-26 Jonathan Wakely <jwakely@redhat.com>
+
+ PR libstdc++/71960
+ * include/experimental/string_view (basic_string_view):
+ Enable debug assertions.
+ * include/std/string_view (basic_string_view):
+ Likewise.
+
+2020-08-26 François Dumont <fdumont@gcc.gnu.org>
+
+ * include/bits/hashtable_policy.h (_Hashtable<>): Rename _H1 into _Hash
+ _H2 into _RangeHash and _Hash into _Unused.
+ (_Hastable_base<>): Likewise.
+ (_Map_base<>): Likewise.
+ (_Insert_base<>): Likewise.
+ (_Insert<>): Likewise.
+ (_Rehash_base<>): Likewise.
+ (_Local_iterator_base<>): Likewise.
+ (_Hash_code_base<>): Likewise.
+ (_Hash_code_base<_Key, _Value, _ExtractKey, _H1, _H2, _Hash, false>):
+ Remove.
+ (_Hash_code_base<_Key, _Value, _ExtractKey, _H1, _H2, _Hash, true>):
+ Remove.
+ (_Hash_code_base<_Key, _Value, _ExtractKey, _Hash, _RangeHas, _Unused,
+ bool>): Remove _Hashtable_ebo_helper<2, _RangeHash> base type..
+ (_Hash_code_base<>::_M_bucket_index(const _Key&, __hash_code, size_t)):
+ Replace by...
+ (_Hash_code_base<>::_M_bucket_index(__hash_code, size_t)): ...this.
+ (_Local_iterator<>): Remove _H1 and _H2 template parameters.
+ (_Local_const_iterator<>): Likewise.
+ (_Equality<>): Likewise.
+ (_Map_base<>::operator[](const key_type&): Adapt.
+ (_Map_base<>::operator[](key_type&&): Adapt.
+ (_Identity::operator()): Add noexcept.
+ (_Select1st::operator()): Likewise.
+ (_Hash_code_base<>): Remove _Hashtable_ebo_helper<0, _ExtractKey> base
+ type.
+ (_Hash_code_base::_M_extract): Remove.
+ * include/bits/hashtable.h (_Hashtable<>): Remove _H1 and _H2 template
+ parameters. Remove _ExtractKey from constructors.
+ (_Hashtable<>::_M_insert_unique_node(const key_type&, size_t,
+ __hash_code, __node_type*, size_t)): Replace by...
+ (_Hashtable<>::_M_insert_unique_node(size_t, __hash_code,
+ __node_type*, size_t)): ...this.
+ (_Hashtable<>::_M_insert_muti_node(__node_type*, const key_type&,
+ __hash_code, __node_type*)): Replace by...
+ (_Hashtable<>::_M_insert_multi_node(__node_type*, __hash_code,
+ __node_type*)): ...this.
+ (_Hashtable<>::__key_extract): Remove.
+ * include/bits/node_handle.h: Adapt.
+
2020-08-25 Jonathan Wakely <jwakely@redhat.com>
* testsuite/21_strings/debug/iterator_self_move_assign_neg.cc: Removed.