Daily bump.
authorGCC Administrator <gccadmin@gcc.gnu.org>
Fri, 20 Nov 2020 00:16:40 +0000 (00:16 +0000)
committerGCC Administrator <gccadmin@gcc.gnu.org>
Fri, 20 Nov 2020 00:16:40 +0000 (00:16 +0000)
gcc/ChangeLog
gcc/DATESTAMP
gcc/ada/ChangeLog
gcc/c/ChangeLog
gcc/cp/ChangeLog
gcc/testsuite/ChangeLog
libcpp/ChangeLog
libstdc++-v3/ChangeLog

index f4e89b8799ff00019722bccc9fa192012335fd2e..f0016e9445c535309c41f19376a93baebe3a10b2 100644 (file)
@@ -1,3 +1,180 @@
+2020-11-19  Jakub Jelinek  <jakub@redhat.com>
+
+       PR tree-optimization/91029
+       * range-op.cc (operator_trunc_mod::op1_range): Don't require signed
+       types, nor require that op2 >= 0.  Implement (a % b) >= x && x > 0
+       implies a >= x and (a % b) <= x && x < 0 implies a <= x.
+       (operator_trunc_mod::op2_range): New method.
+
+2020-11-19  Andrew MacLeod  <amacleod@redhat.com>
+
+       PR tree-optimization/93781
+       * range-op.cc (get_shift_range): Rename from
+       undefined_shift_range_check and now return valid shift ranges.
+       (operator_lshift::fold_range): Use result from get_shift_range.
+       (operator_rshift::fold_range): Ditto.
+
+2020-11-19  Jan Hubicka  <jh@suse.cz>
+
+       * fold-const.c (operand_compare::operand_equal_p): Fix thinko in
+       COMPONENT_REF handling and guard types_same_for_odr by
+       virtual_method_call_p.
+       (operand_compare::hash_operand): Likewise.
+
+2020-11-19  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c/97860
+       * tree.c (array_type_nelts): For complete arrays with zero min
+       and NULL max and zero size return -1.
+
+2020-11-19  Nathan Sidwell  <nathan@acm.org>
+
+       * configure.ac: Add tests for fstatat, sighandler_t, O_CLOEXEC,
+       unix-domain and ipv6 sockets.
+       * config.in: Rebuilt.
+       * configure: Rebuilt.
+
+2020-11-19  Dimitar Dimitrov  <dimitar@dinux.eu>
+
+       * config/pru/alu-zext.md: Add lmbd patterns for zero_extend
+       variants.
+       * config/pru/pru.c (enum pru_builtin): Add HALT and LMBD.
+       (pru_init_builtins): Ditto.
+       (pru_builtin_decl): Ditto.
+       (pru_expand_builtin): Ditto.
+       * config/pru/pru.h (CLZ_DEFINED_VALUE_AT_ZERO): Define PRU
+       value for CLZ with zero value parameter.
+       * config/pru/pru.md: Add halt, lmbd and clz patterns.
+       * doc/extend.texi: Document PRU builtins.
+
+2020-11-19  Richard Sandiford  <richard.sandiford@arm.com>
+
+       * doc/invoke.texi (-fvect-cost-model): Add a very-cheap model.
+       * common.opt (fvect-cost-model=): Add very-cheap as a possible option.
+       (fsimd-cost-model=): Likewise.
+       (vect_cost_model): Add very-cheap.
+       * flag-types.h (vect_cost_model): Add VECT_COST_MODEL_VERY_CHEAP.
+       Put the values in order of increasing aggressiveness.
+       * tree-vect-data-refs.c (vect_enhance_data_refs_alignment): Use
+       range checks when comparing against VECT_COST_MODEL_CHEAP.
+       (vect_prune_runtime_alias_test_list): Do not allow any alias
+       checks for the very-cheap cost model.
+       * tree-vect-loop.c (vect_analyze_loop_costing): Do not allow
+       any peeling for the very-cheap cost model.  Also require one
+       iteration of the vector loop to pay for itself.
+
+2020-11-19  Wilco Dijkstra  <wdijkstr@arm.com>
+
+       * config/aarch64/aarch64.c (neoversen1_tunings): Use new
+       cortexa76_extra_costs.
+       (neoversev1_tunings): Likewise.
+       (neoversen2_tunines): Likewise.
+       * config/arm/aarch-cost-tables.h (cortexa76_extra_costs):
+       add new costs.
+
+2020-11-19  Wilco Dijkstra  <wdijkstr@arm.com>
+
+       * config/aarch64/aarch64.c (aarch64_expand_cpymem): Cleanup code and
+       comments, tweak expansion decisions and improve tail expansion.
+
+2020-11-19  Richard Biener  <rguenther@suse.de>
+
+       * fold-const.c (operand_compare::hash_operand): Fix typo.
+
+2020-11-19  Richard Biener  <rguenther@suse.de>
+
+       * tree-ssa-reassoc.c (get_rank): Refactor to consistently
+       use the cache and dump ranks assigned.
+
+2020-11-19  Jan Hubicka  <jh@suse.cz>
+
+       * fold-const.c (operand_compare::operand_equal_p): More OBJ_TYPE_REF
+       matching to correct place; drop OEP_ADDRESS_OF for TOKEN, OBJECT and
+       class.
+       (operand_compare::hash_operand): Hash ODR type for OBJ_TYPE_REF.
+
+2020-11-19  Joel Hutton  <joel.hutton@arm.com>
+
+       * config/aarch64/aarch64-simd.md: Add vec_widen_lshift_hi/lo<mode>
+       patterns.
+       * tree-vect-stmts.c (vectorizable_conversion): Fix for widen_lshift
+       case.
+
+2020-11-19  Joel Hutton  <joel.hutton@arm.com>
+
+       * doc/generic.texi: Document new widen_plus/minus_lo/hi tree codes.
+       * doc/md.texi: Document new widenening add/subtract hi/lo optabs.
+       * expr.c (expand_expr_real_2): Add widen_add, widen_subtract cases.
+       * optabs-tree.c (optab_for_tree_code): Add case for widening optabs.
+       * optabs.def (OPTAB_D): Define vectorized widen add, subtracts.
+       * tree-cfg.c (verify_gimple_assign_binary): Add case for widening adds,
+       subtracts.
+       * tree-inline.c (estimate_operator_cost): Add case for widening adds,
+       subtracts.
+       * tree-vect-generic.c (expand_vector_operations_1): Add case for
+       widening adds, subtracts
+       * tree-vect-patterns.c (vect_recog_widen_add_pattern): New recog
+       pattern.
+       (vect_recog_widen_sub_pattern): New recog pattern.
+       (vect_recog_average_pattern): Update widened add code.
+       (vect_recog_average_pattern): Update widened add code.
+       * tree-vect-stmts.c (vectorizable_conversion): Add case for widened add,
+       subtract.
+       (supportable_widening_operation): Add case for widened add, subtract.
+       * tree.def
+       (WIDEN_PLUS_EXPR): New tree code.
+       (WIDEN_MINUS_EXPR): New tree code.
+       (VEC_WIDEN_ADD_HI_EXPR): New tree code.
+       (VEC_WIDEN_PLUS_LO_EXPR): New tree code.
+       (VEC_WIDEN_MINUS_HI_EXPR): New tree code.
+       (VEC_WIDEN_MINUS_LO_EXPR): New tree code.
+
+2020-11-19  Joel Hutton  <joel.hutton@arm.com>
+
+       * config/aarch64/aarch64-simd.md: New patterns
+       vec_widen_saddl_lo/hi_<mode>.
+
+2020-11-19  Richard Biener  <rguenther@suse.de>
+
+       PR tree-optimization/97901
+       * tree-ssa-propagate.c (clean_up_loop_closed_phi): Compute
+       dominators and use replace_uses_by.
+
+2020-11-19  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * dwarf2out.h (struct fixed_point_type_info) <scale_factor>: Turn
+       numerator and denominator into a tree.
+       * dwarf2out.c (base_type_die): In the case of a fixed-point type
+       with arbitrary scale factor, call add_scalar_info on numerator and
+       denominator to emit the appropriate attributes.
+
+2020-11-19  Richard Biener  <rguenther@suse.de>
+
+       PR tree-optimization/97897
+       * tree-complex.c (complex_propagate::visit_stmt): Make sure
+       abnormally used SSA names are VARYING.
+       (complex_propagate::visit_phi): Likewise.
+       * tree-ssa.c (verify_phi_args): Verify PHI arguments on abnormal
+       edges are SSA names.
+
+2020-11-19  Uroš Bizjak  <ubizjak@gmail.com>
+
+       * config/i386/i386.md (*<absneg:code><mode>2_i387_1):
+       Disable for TARGET_SSE_MATH modes.
+
+2020-11-19  Jeff Law  <law@redhat.com>
+
+       * config/h8300/constraints.md (R constraint): Add argument to call
+       to h8300_shift_needs_scratch_p.
+       (S and T constraints): Similary.
+       * config/h8300/h8300-protos.h: Update h8300_shift_needs_scratch_p
+       prototype.
+       * config/h8300/h8300.c (expand_a_shift): Emit a different pattern
+       if the shift does not require a scratch register.
+       (h8300_shift_needs_scratch_p): Refine to be more accurate.
+       * config/h8300/shiftrotate.md (shiftqi_noscratch): New pattern.
+       (shifthi_noscratch, shiftsi_noscratch): Similarly.
+
 2020-11-18  Roger Sayle  <roger@nextmovesoftware.com>
 
        PR middle-end/85811
index f5efa497de1dde1b8899f3817d3a5ff78016004d..e732e26b1c70f2d9753ea1601fa30c51982e16c1 100644 (file)
@@ -1 +1 @@
-20201119
+20201120
index 13ea49a61c3b1c53a7c836e9607053ec2dde0359..162ca0716ab2a1d1703b9797d55c756b5a2c1584 100644 (file)
@@ -1,3 +1,18 @@
+2020-11-19  Eric Botcazou  <ebotcazou@adacore.com>
+
+       PR ada/97805
+       * adaint.c: Include climits in C++ and limits.h otherwise.
+
+2020-11-19  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * exp_dbug.adb (Is_Handled_Scale_Factor): Delete.
+       (Get_Encoded_Name): Do not call it.
+       * gcc-interface/decl.c (gnat_to_gnu_entity) <Fixed_Point_Type>:
+       Tidy up and always use a meaningful description for arbitrary
+       scale factors.
+       * gcc-interface/misc.c (gnat_get_fixed_point_type_info): Remove
+       obsolete block and adjust the description of the scale factor.
+
 2020-11-18  Jakub Jelinek  <jakub@redhat.com>
 
        * gcc-interface/Make-lang.in (ada.serial): New goal.
index f5b173c74f01b425613d6abaf9109625659fb6d2..36c863680e100dbb997b78167685c156a6243908 100644 (file)
@@ -1,3 +1,9 @@
+2020-11-19  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c/97860
+       * c-decl.c (get_parm_array_spec): Bail out of nelts is
+       error_operand_p.
+
 2020-11-18  Jakub Jelinek  <jakub@redhat.com>
 
        * Make-lang.in (c.serial): New goal.
index b72904baa8041dcb85b034523593e5a482a3634c..b710170236d0f8398abf753a47e7a19b72c92c26 100644 (file)
@@ -1,3 +1,48 @@
+2020-11-19  Nathan Sidwell  <nathan@acm.org>
+
+       * cp-tree.h (struct spec_entry): Moved from pt.c.
+       (walk_specializations, match_mergeable_specialization)
+       (get_mergeable_specialization_flags)
+       (add_mergeable_specialization): Declare.
+       * pt.c (struct spec_entry): Moved to cp-tree.h.
+       (walk_specializations, match_mergeable_specialization)
+       (get_mergeable_specialization_flags)
+       (add_mergeable_specialization): New.
+
+2020-11-19  Nathan Sidwell  <nathan@acm.org>
+
+       * cp-tree.h (struct constexpr_fundef): Moved from constexpr.c.
+       (maybe_save_constexpr_fundef): Declare.
+       (register_constexpr_fundef): Take constexpr_fundef object, return
+       void.
+       * decl.c (mabe_save_function_definition): Delete, functionality
+       moved to maybe_save_constexpr_fundef.
+       (emit_coro_helper, finish_function): Adjust.
+       * constexpr.c (struct constexpr_fundef): Moved to cp-tree.h.
+       (constexpr_fundef_hasher::equal): Constify.
+       (constexpr_fundef_hasher::hash): Constify.
+       (retrieve_constexpr_fundef): Make non-static.
+       (maybe_save_constexpr_fundef): Break out checking and duplication
+       from ...
+       (register_constexpr_fundef): ... here.  Just register the constexpr.
+
+2020-11-19  Marek Polacek  <polacek@redhat.com>
+
+       PR c++/97523
+       * init.c (build_new): When value-initializing an array new,
+       leave the INIT as an empty vector.
+
+2020-11-19  Marek Polacek  <polacek@redhat.com>
+
+       PR c++/97895
+       * pt.c (do_auto_deduction): Don't crash when the constructor has
+       zero elements.
+
+2020-11-19  Nathan Sidwell  <nathan@acm.org>
+
+       PR c++/97905
+       * decl.c (duplicate_decls): Relax new assert.
+
 2020-11-18  Iain Sandoe  <iain@sandoe.co.uk>
 
        * parser.c (cp_parser_objc_valid_prefix_attributes): Check
index 05ea2a7e5d372b30060a9749bc0781a6a3115ed9..88fd83d68c197614015053a6c21b4f882c4d764f 100644 (file)
@@ -1,3 +1,77 @@
+2020-11-19  Jakub Jelinek  <jakub@redhat.com>
+
+       PR tree-optimization/91029
+       * gcc.dg/tree-ssa/pr91029-1.c: New test.
+       * gcc.dg/tree-ssa/pr91029-2.c: New test.
+
+2020-11-19  Andrew MacLeod  <amacleod@redhat.com>
+
+       * gcc.dg/tree-ssa/pr93781-1.c: New.
+       * gcc.dg/tree-ssa/pr93781-2.c: New.
+       * gcc.dg/tree-ssa/pr93781-3.c: New.
+
+2020-11-19  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c/97860
+       * gcc.dg/pr97860.c: New test.
+
+2020-11-19  Marek Polacek  <polacek@redhat.com>
+
+       PR c++/97523
+       * g++.dg/expr/anew5.C: New test.
+       * g++.dg/expr/anew6.C: New test.
+
+2020-11-19  Marek Polacek  <polacek@redhat.com>
+
+       PR c++/97895
+       * g++.dg/cpp0x/auto54.C: New test.
+
+2020-11-19  Nathan Sidwell  <nathan@acm.org>
+
+       PR c++/97905
+       * g++.dg/lookup/pr97905.C: New.
+
+2020-11-19  Dimitar Dimitrov  <dimitar@dinux.eu>
+
+       * gcc.target/pru/halt.c: New test.
+       * gcc.target/pru/lmbd.c: New test.
+
+2020-11-19  Richard Sandiford  <richard.sandiford@arm.com>
+
+       * gcc.dg/vect/vect-cost-model-1.c: New test.
+       * gcc.dg/vect/vect-cost-model-2.c: Likewise.
+       * gcc.dg/vect/vect-cost-model-3.c: Likewise.
+       * gcc.dg/vect/vect-cost-model-4.c: Likewise.
+       * gcc.dg/vect/vect-cost-model-5.c: Likewise.
+       * gcc.dg/vect/vect-cost-model-6.c: Likewise.
+
+2020-11-19  Richard Biener  <rguenther@suse.de>
+
+       * gcc.dg/pr97897.c: Add dg-options.
+
+2020-11-19  Joel Hutton  <joel.hutton@arm.com>
+
+       * gcc.target/aarch64/vect-widen-lshift.c: New test.
+
+2020-11-19  Joel Hutton  <joel.hutton@arm.com>
+
+       * gcc.target/aarch64/vect-widen-add.c: New test.
+       * gcc.target/aarch64/vect-widen-sub.c: New test.
+
+2020-11-19  Richard Biener  <rguenther@suse.de>
+
+       PR tree-optimization/97901
+       * gcc.dg/torture/pr97901.c: New testcase.
+
+2020-11-19  Richard Biener  <rguenther@suse.de>
+
+       PR tree-optimization/97897
+       * gcc.dg/pr97897.c: New testcase.
+
+2020-11-19  Uroš Bizjak  <ubizjak@gmail.com>
+
+       * gcc.target/i386/pr97887.c: New test.
+
 2020-11-18  Roger Sayle  <roger@nextmovesoftware.com>
 
        PR middle-end/85811
index 8cafaf38707e32fff7d926e2baa7a301a7756d08..144308396fbd2ee6241148438c92f36de7f76074 100644 (file)
@@ -1,3 +1,36 @@
+2020-11-19  Nathan Sidwell  <nathan@acm.org>
+
+       * include/cpplib.h (enum cpp_main_search): New.
+       (struct cpp_options): Add main_search field.
+       (cpp_main_loc): Declare.
+       (cpp_retrofit_as_include): Declare.
+       * internal.h (struct cpp_reader): Add main_loc field.
+       (_cpp_in_main_source_file): Not main if main is a header.
+       * init.c (cpp_read_main_file): Use main_search option to locate
+       main file.  Set main_loc
+       * files.c (cpp_retrofit_as_include): New.
+
+2020-11-19  Nathan Sidwell  <nathan@acm.org>
+
+       * internal.h (cpp_in_system_header): Rename to ...
+       (_cpp_in_system_header): ... here.
+       (cpp_in_primary_file): Rename to ...
+       (_cpp_in_main_source_file): ... here.  Compare main_file equality
+       and check main_search value.
+       * lex.c (maybe_va_opt_error, _cpp_lex_direct): Adjust for rename.
+       * macro.c (_cpp_builtin_macro_text): Likewise.
+       (replace_args): Likewise.
+       * directives.c (do_include_next): Likewise.
+       (do_pragma_once, do_pragma_system_header): Likewise.
+       * files.c (struct _cpp_file): Delete main_file field.
+       (pch_open): Check pfile->main_file equality.
+       (make_cpp_file): Drop cpp_reader parm, don't set main_file.
+       (_cpp_find_file): Adjust.
+       (_cpp_stack_file): Check pfile->main_file equality.
+       (struct report_missing_guard_data): Add cpp_reader field.
+       (report_missing_guard): Check pfile->main_file equality.
+       (_cpp_report_missing_guards): Adjust.
+
 2020-11-18  Nathan Sidwell  <nathan@acm.org>
 
        * include/cpplib.h (struct cpp_options): Add module_directives
index bfb9ae501415fc49bd0d0a687cdb368be1a0903f..53b2d76cd0561ca14b7fb7a1ce6cc98a28487315 100644 (file)
@@ -1,3 +1,53 @@
+2020-11-19  Jonathan Wakely  <jwakely@redhat.com>
+
+       PR libstdc++/95989
+       * config/os/gnu-linux/os_defines.h (_GLIBCXX_NATIVE_THREAD_ID):
+       Define new macro to get reliable thread ID.
+       * include/bits/std_thread.h: (this_thread::get_id): Use new
+       macro if it's defined.
+       * testsuite/30_threads/jthread/95989.cc: New test.
+       * testsuite/30_threads/this_thread/95989.cc: New test.
+
+2020-11-19  Jonathan Wakely  <jwakely@redhat.com>
+
+       * testsuite/30_threads/async/async.cc: Include <thread>.
+       * testsuite/30_threads/future/members/93456.cc: Likewise.
+
+2020-11-19  Jonathan Wakely  <jwakely@redhat.com>
+
+       PR libstdc++/92546
+       * include/Makefile.am: Add new <bits/std_thread.h> header.
+       * include/Makefile.in: Regenerate.
+       * include/std/future: Include new header instead of <thread>.
+       * include/std/stop_token: Include new header instead of
+       <bits/gthr.h>.
+       (stop_token::_S_yield()): Use this_thread::yield().
+       (_Stop_state_t::_M_requester): Change type to std::thread::id.
+       (_Stop_state_t::_M_request_stop()): Use this_thread::get_id().
+       (_Stop_state_t::_M_remove_callback(_Stop_cb*)): Likewise.
+       Use __is_single_threaded() to decide whether to synchronize.
+       * include/std/thread (thread, operator==, this_thread::get_id)
+       (this_thread::yield): Move to new header.
+       (operator<=>, operator!=, operator<, operator<=, operator>)
+       (operator>=, hash<thread::id>, operator<<): Define even when
+       gthreads not available.
+       * src/c++11/thread.cc: Include <memory>.
+       * include/bits/std_thread.h: New file.
+       (thread, operator==, this_thread::get_id, this_thread::yield):
+       Define even when gthreads not available.
+       [!_GLIBCXX_HAS_GTHREADS] (thread::join, thread::detach)
+       (thread::hardware_concurrency): Define inline.
+
+2020-11-19  Jonathan Wakely  <jwakely@redhat.com>
+
+       PR libstdc++/93421
+       PR libstdc++/93456
+       * src/c++11/futex.cc (syscall_time_t): New typedef for
+       the type of the syscall_timespec::tv_sec member.
+       (relative_timespec, _M_futex_wait_until)
+       (_M_futex_wait_until_steady): Use syscall_time_t in overflow
+       checks, not time_t.
+
 2020-11-18  Patrick Palka  <ppalka@redhat.com>
 
        * include/std/ranges (join_view::_Iterator::_M_satisfy): Uglify