https://gcc.gnu.org/g:57ea089421a3cfce936f91f3c0c92bf95ac71da1 commit 57ea089421a3cfce936f91f3c0c92bf95ac71da1 Author: GCC Administrator Date: Thu Aug 27 00:16:27 2020 +0000 Daily bump. Diff: --- ChangeLog | 4 ++ contrib/ChangeLog | 5 ++ gcc/ChangeLog | 133 ++++++++++++++++++++++++++++++++++++++++++++++++ gcc/DATESTAMP | 2 +- gcc/analyzer/ChangeLog | 27 ++++++++++ gcc/cp/ChangeLog | 12 +++++ gcc/d/ChangeLog | 60 ++++++++++++++++++++++ gcc/fortran/ChangeLog | 15 ++++++ gcc/testsuite/ChangeLog | 110 +++++++++++++++++++++++++++++++++++++++ libgcc/ChangeLog | 6 +++ libiberty/ChangeLog | 7 +++ libstdc++-v3/ChangeLog | 77 ++++++++++++++++++++++++++++ 12 files changed, 457 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 9caafc53d32..b0239316868 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2020-08-26 Tobias Burnus + + * MAINTAINERS (Various Maintainers): Add myself as OpenACC maintainer. + 2020-08-20 Tobias Burnus PR bootstrap/96612 diff --git a/contrib/ChangeLog b/contrib/ChangeLog index 754174b457f..c906cb45b51 100644 --- a/contrib/ChangeLog +++ b/contrib/ChangeLog @@ -1,3 +1,8 @@ +2020-08-26 Iain Buclaw + + * config-list.mk (LIST): Add OPT-enable-obsolete to tilegx-linux-gnu, + tilegxbe-linux-gnu, and tilepro-linux-gnu. + 2020-07-29 Martin Liska * git-backport.py: fix how are ChangeLog paths combined. diff --git a/gcc/ChangeLog b/gcc/ChangeLog index f6605eae08c..9db853dcd44 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,136 @@ +2020-08-26 Göran Uddeborg + + 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 + + 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 + + * 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. + (3): New define_expand. + (hi3_430): New define_insn. + (si3_const): Likewise. + (ashl3_430x): Likewise. + (ashr3_430x): Likewise. + (lshr3_430x): Likewise. + (*bitbranch4_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 + + * 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 + + 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 + + * cgraphunit.c (process_symver_attribute): Match only symver + TREE_PURPOSE. + +2020-08-26 Richard Biener + + 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 + + * doc/invoke.texi: Document how are pie and pic options merged. + +2020-08-26 Zhiheng Xie + + * config/aarch64/aarch64-simd-builtins.def: Add proper FLAG + for add/sub arithmetic intrinsics. + +2020-08-26 Jakub Jelinek + + 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 + + * config/tilepro/gen-mul-tables.cc (main): Define IN_TARGET_CODE to 1 + in the target file. + +2020-08-26 Martin Liska + + * cgraphunit.c (process_symver_attribute): Allow multiple + symver attributes for one symbol. + * doc/extend.texi: Document the change. + 2020-08-25 H.J. Lu PR target/95863 diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index 1aa5e58d9a2..c7ea9e023ae 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20200826 +20200827 diff --git a/gcc/analyzer/ChangeLog b/gcc/analyzer/ChangeLog index 1b59ff38cbb..d0be7b339b0 100644 --- a/gcc/analyzer/ChangeLog +++ b/gcc/analyzer/ChangeLog @@ -1,3 +1,30 @@ +2020-08-26 David Malcolm + + 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 + + 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 PR analyzer/94851 diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index ddc5f1b7301..294e2885ec0 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,15 @@ +2020-08-26 Nathan Sidwell + + * 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 PR c/96678 diff --git a/gcc/d/ChangeLog b/gcc/d/ChangeLog index 04696769385..00507aca582 100644 --- a/gcc/d/ChangeLog +++ b/gcc/d/ChangeLog @@ -1,3 +1,63 @@ +2020-08-26 Iain Buclaw + + * dmd/MERGE: Merge upstream dmd e49192807 + +2020-08-26 Iain Buclaw + + 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 + + * dmd/MERGE: Merge upstream dmd cb4a96fae + +2020-08-26 Iain Buclaw + + * 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 + + 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 + + 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 + + * 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 + + * 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 * dmd/MERGE: Merge upstream dmd 1b5a53d01. diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 783ac7102eb..9b989bdb475 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,18 @@ +2020-08-26 Tobias Burnus + + * 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 PR fortran/96737 diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 4b1082ee25a..5c1a4571667 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,113 @@ +2020-08-26 Jeff Law + + * 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 + + PR target/96802 + * gcc.target/i386/pr96802-1.c: New test. + * gcc.target/i386/pr96802-2.c: Likewise. + +2020-08-26 Jozef Lawrynowicz + + * 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 + + PR tree-optimization/96698 + * gcc.dg/vect/pr96698.c: New testcase. + +2020-08-26 Richard Biener + + PR tree-optimization/96783 + * gcc.dg/vect/pr96783-1.c: New testcase. + * gcc.dg/vect/pr96783-2.c: Likewise. + +2020-08-26 Nathan Sidwell + + * g++.dg/lookup/operator-1.C: New. + * g++.dg/lookup/operator-2.C: New. + +2020-08-26 Qian Jianhua + + * gcc.target/aarch64/insv_1.c: Add '#' in scan-assembler + +2020-08-26 Iain Buclaw + + PR d/96156 + * gdc.dg/pr96156.d: New test. + +2020-08-26 Iain Buclaw + + PR d/96153 + * gdc.dg/pr96153.d: Add new tests. + +2020-08-26 Iain Buclaw + + PR d/96157 + * gdc.dg/pr96157a.d: New test. + * gdc.dg/pr96157b.d: New test. + +2020-08-26 Iain Buclaw + + * 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 + + * 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 + + * gfortran.dg/gomp/declare-target-4.f90: New test. + * gfortran.dg/gomp/declare-target-5.f90: New test. + +2020-08-26 liuhongt + + 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 + + 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 + + PR analyzer/96777 + * gcc.dg/analyzer/pr96777.c: New test. + 2020-08-25 H.J. Lu PR target/95863 diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog index 588b6f44051..ccfd6f6a840 100644 --- a/libgcc/ChangeLog +++ b/libgcc/ChangeLog @@ -1,3 +1,9 @@ +2020-08-26 Jozef Lawrynowicz + + * 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 * config/nvptx/atomic.c: New. diff --git a/libiberty/ChangeLog b/libiberty/ChangeLog index 5d22410b8d7..62f5f1bb2ed 100644 --- a/libiberty/ChangeLog +++ b/libiberty/ChangeLog @@ -1,3 +1,10 @@ +2020-08-26 Iain Buclaw + + * 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 PR lto/96385 diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index c70bd66c5df..61c6e03d211 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,80 @@ +2020-08-26 Jonathan Wakely + + * include/std/tuple (_Tuple_impl): Whitespaces changes for + consistent indentation. Also use __enable_if_t alias template. + +2020-08-26 Jonathan Wakely + + PR libstdc++/96803 + * include/std/tuple + (_Tuple_impl(allocator_arg_t, Alloc, const _Tuple_impl&)): + 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 + + * 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 + + * 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 + + 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 + + * 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 * testsuite/21_strings/debug/iterator_self_move_assign_neg.cc: Removed.