Daily bump.
authorGCC Administrator <gccadmin@gcc.gnu.org>
Tue, 13 Oct 2020 00:16:26 +0000 (00:16 +0000)
committerGCC Administrator <gccadmin@gcc.gnu.org>
Tue, 13 Oct 2020 00:16:26 +0000 (00:16 +0000)
gcc/ChangeLog
gcc/DATESTAMP
gcc/ada/ChangeLog
gcc/analyzer/ChangeLog
gcc/cp/ChangeLog
gcc/d/ChangeLog
gcc/fortran/ChangeLog
gcc/testsuite/ChangeLog
libphobos/ChangeLog
libstdc++-v3/ChangeLog

index a5dadb9c37c5c2e722dc1b914d62b7e59f982d37..27cbf29206b47e8baf6266389ba3baff148ffd0f 100644 (file)
@@ -1,3 +1,225 @@
+2020-10-12  Alexandre Oliva  <oliva@adacore.com>
+
+       * builtins.c (mathfn_built_in_type): Use CFN_ enumerators.
+
+2020-10-12  Andrew MacLeod  <amacleod@redhat.com>
+
+       PR tree-optimization/97381
+       * gimple-range-gori.cc (gori_compute::compute_operand2_range): If a range cannot be
+       calculated through operand 2, return false.
+
+2020-10-12  Aldy Hernandez  <aldyh@redhat.com>
+
+       PR tree-optimization/97378
+       * range-op.cc (operator_trunc_mod::wi_fold): Return VARYING for mod by zero.
+
+2020-10-12  David Malcolm  <dmalcolm@redhat.com>
+
+       * doc/invoke.texi: Document -Wanalyzer-write-to-const and
+       -Wanalyzer-write-to-string-literal.
+
+2020-10-12  Martin Sebor  <msebor@redhat.com>
+
+       PR middle-end/97342
+       PR middle-end/97023
+       PR middle-end/96384
+       * builtins.c (access_ref::access_ref): Initialize new member.  Use
+       new enum.
+       (access_ref::size_remaining): Define new member function.
+       (inform_access): Handle expressions referencing objects.
+       (gimple_call_alloc_size): Call get_size_range instead of get_range.
+       (gimple_call_return_array): New function.
+       (get_range): Rename...
+       (get_offset_range): ...to this.  Improve detection of ranges from
+       types of expressions.
+       (gimple_call_return_array): Adjust calls to get_range per above.
+       (compute_objsize): Same.  Set maximum size or offset instead of
+       failing for unknown objects and handle more kinds of expressions.
+       (compute_objsize): Call access_ref::size_remaining.
+       (compute_objsize): Have transitional wrapper fail for pointers
+       into unknown objects.
+       (expand_builtin_strncmp): Call access_ref::size_remaining and
+       handle new cases.
+       * builtins.h (access_ref::size_remaining): Declare new member function.
+       (access_ref::set_max_size_range): Define new member function.
+       (access_ref::add_ofset, access_ref::add_max_ofset): Same.
+       (access_ref::add_base0): New data member.
+       * calls.c (get_size_range): Change argument type.  Handle new
+       condition.
+       * calls.h (get_size_range): Adjust signature.
+       (enum size_range_flags): Define new type.
+       * gimple-ssa-warn-restrict.c (builtin_memref::builtin_memref): Correct
+       argument to get_size_range.
+       * tree-ssa-strlen.c (get_range): Handle anti-ranges.
+       (maybe_warn_overflow): Check DECL_P before assuming it's one.
+
+2020-10-12  Martin Sebor  <msebor@redhat.com>
+
+       PR c++/96511
+       PR middle-end/96384
+       * builtins.c (get_range): Return full range of type when neither
+       value nor its range is available.  Fail for ranges inverted due
+       to the signedness of offsets.
+       (compute_objsize): Handle more special array members.  Handle
+       POINTER_PLUS_EXPR and VIEW_CONVERT_EXPR that come up in front end
+       code.
+       (access_ref::offset_bounded): Define new member function.
+       * builtins.h (access_ref::eval): New data member.
+       (access_ref::offset_bounded): New member function.
+       (access_ref::offset_zero): New member function.
+       (compute_objsize): Declare a new overload.
+       * gimple-array-bounds.cc (array_bounds_checker::check_array_ref): Use
+       enum special_array_member.
+       * tree.c (component_ref_size): Use special_array_member.
+       * tree.h (special_array_member): Define a new type.
+       (component_ref_size): Change signature.
+
+2020-10-12  Jan Hubicka  <hubicka@ucw.cz>
+
+       * ipa-modref.c (modref_summaries): Remove field IPA.
+       (class modref_summary_lto): New global variable.
+       (class modref_summaries_lto): New.
+       (modref_summary::modref_summary): Remove loads_lto and stores_lto.
+       (modref_summary::~modref_summary): Remove loads_lto and stores_lto.
+       (modref_summary::useful_p): Do not use lto_useful.
+       (modref_records_lto): New typedef.
+       (struct modref_summary_lto): New type.
+       (modref_summary_lto::modref_summary_lto): New member function.
+       (modref_summary_lto::~modref_summary_lto): New member function.
+       (modref_summary_lto::useful_p): New member function.
+       (modref_summary::dump): Do not handle lto.
+       (modref_summary_lto::dump): New member function.
+       (get_modref_function_summary): Use optimization_summary.
+       (merge_call_side_effects): Use optimization_summary.
+       (analyze_call): Use optimization_summary.
+       (struct summary_ptrs): New struture.
+       (analyze_load): Update to handle separate lto and non-lto summaries.
+       (analyze_store): Likewise.
+       (analyze_stmt): Likewise.
+       (remove_summary): Break out from ...
+       (analyze_function): ... here; update to handle seprated summaries.
+       (modref_summaries::insert): Do not handle lto summary.
+       (modref_summaries_lto::insert): New member function.
+       (modref_summaries::duplicate): Do not handle lto summary.
+       (modref_summaries_lto::duplicate): New member function.
+       (read_modref_records): Expect nolto_ret or lto_ret to be NULL>
+       (modref_write): Write lto summary.
+       (read_section): Handle separated summaries.
+       (modref_read): Initialize separated summaries.
+       (modref_transform): Handle separated summaries.
+       (pass_modref::execute): Turn summary to optimization_summary; handle
+       separate summaries.
+       (ignore_edge): Handle separate summaries.
+       (ipa_merge_modref_summary_after_inlining): Likewise.
+       (collapse_loads): Likewise.
+       (modref_propagate_in_scc): Likewise.
+       (pass_ipa_modref::execute): Likewise.
+       (ipa_modref_c_finalize): Likewise.
+       * ipa-modref.h (modref_records_lto): Remove typedef.
+       (struct modref_summary): Remove stores_lto, loads_lto and finished
+       fields; remove lto_useful_p member function.
+
+2020-10-12  Richard Biener  <rguenther@suse.de>
+
+       * tree-vect-data-refs.c (vect_slp_analyze_instance_dependence):
+       Use SLP_TREE_REPRESENTATIVE.
+       * tree-vectorizer.h (_slp_tree::vertex): New member used
+       for graphds interfacing.
+       * tree-vect-slp.c (vect_build_slp_tree_2): Allocate space
+       for PHI SLP children.
+       (vect_analyze_slp_backedges): New function filling in SLP
+       node children for PHIs that correspond to backedge values.
+       (vect_analyze_slp): Call vect_analyze_slp_backedges for the
+       graph.
+       (vect_slp_analyze_node_operations): Deal with a cyclic graph.
+       (vect_schedule_slp_instance): Likewise.
+       (vect_schedule_slp): Likewise.
+       (slp_copy_subtree): Remove.
+       (vect_slp_rearrange_stmts): Likewise.
+       (vect_attempt_slp_rearrange_stmts): Likewise.
+       (vect_slp_build_vertices): New functions.
+       (vect_slp_permute): Likewise.
+       (vect_slp_perms_eq): Likewise.
+       (vect_optimize_slp): Remove special code to elide
+       permutations with SLP reductions.  Implement generic
+       permute optimization.
+
+2020-10-12  Christophe Lyon  <christophe.lyon@linaro.org>
+
+       * config/arm/arm.c (arm_preferred_simd_mode): Use E_FOOmode
+       instead of FOOmode.
+
+2020-10-12  Martin Liska  <mliska@suse.cz>
+
+       PR tree-optimization/97079
+       * internal-fn.c (internal_fn_stored_value_index): Handle also
+       .MASK_STORE_LANES.
+       * tree-vect-patterns.c (vect_recog_over_widening_pattern): Bail
+       out for unsupported TREE_TYPE.
+
+2020-10-12  Richard Biener  <rguenther@suse.de>
+
+       * tree-vect-slp.c (vect_bb_partition_graph_r): Use visited
+       hash-map.
+       (vect_bb_partition_graph): Likewise.
+
+2020-10-12  Duan bo  <duanbo3@huawei.com>
+
+       PR target/96757
+       * tree-vect-patterns.c (vect_recog_mask_conversion_pattern): Add
+       the identification and handling of the dropped situation in the
+       cond expression processing phase.
+
+2020-10-12  Tobias Burnus  <tobias@codesourcery.com>
+
+       * doc/invoke.texi (nvptx's -misa): Update default to sm_35.
+
+2020-10-12  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
+
+       PR target/97349
+       * config/aarch64/arm_neon.h (vdupq_n_p8, vdupq_n_p16,
+       vdupq_n_p64, vdupq_n_s8, vdupq_n_s16, vdupq_n_u8, vdupq_n_u16):
+       Fix argument type.
+
+2020-10-12  Ilya Leoshkevich  <iii@linux.ibm.com>
+
+       * config/s390/s390-protos.h (s390_build_signbit_mask): New
+       function.
+       * config/s390/s390.c (s390_contiguous_bitmask_vector_p):
+       Bitcast the argument to an integral mode.
+       (s390_expand_vec_init): Do not call
+       s390_contiguous_bitmask_vector_p with a scalar argument.
+       (s390_build_signbit_mask): New function.
+       * config/s390/vector.md (copysign<mode>3): Use bitwise
+       operations.
+
+2020-10-12  Aldy Hernandez  <aldyh@redhat.com>
+
+       PR tree-optimization/97371
+       * range-op.cc (operator_rshift::op1_range): Ignore shifts larger than
+       or equal to type precision.
+
+2020-10-12  Martin Liska  <mliska@suse.cz>
+
+       * ipa-modref.c (merge_call_side_effects): Clear modref_parm_map
+       fields in the vector.
+
+2020-10-12  Richard Biener  <rguenther@suse.de>
+
+       * tree-vect-slp.c (vect_analyze_slp_instance): Set matches to true
+       after successful discovery but forced split.
+
+2020-10-12  Tom de Vries  <tdevries@suse.de>
+
+       * config/nvptx/nvptx.opt (-msoft-stack-reserve-local): Rename to ...
+       (-msoft-stack-reserve-local=): ... this.
+
+2020-10-12  Richard Biener  <rguenther@suse.de>
+
+       PR tree-optimization/97357
+       * tree-ssa-loop-split.c (ssa_semi_invariant_p): Abnormal
+       SSA names are not semi invariant.
+
 2020-10-11  Iain Sandoe  <iain@sandoe.co.uk>
 
        * config/darwin.c (darwin_globalize_label): Make a subset of
index 02373369eab52090658584934b73652d79aab446..4d019bc967267264f9dfb78bfc013e596d5aea1a 100644 (file)
@@ -1 +1 @@
-20201012
+20201013
index 98e0f4555257d898af4aeaf6b373e6a119d5563a..b8c8470903f06715d204bcd50e79c35e3ae8ff56 100644 (file)
@@ -1,3 +1,8 @@
+2020-10-12  Alexandre Oliva  <oliva@adacore.com>
+
+       * libgnat/a-ngelfu.ads (Sin, Cos): Make the single-argument
+       functions inline.
+
 2020-10-11  Alexandre Oliva  <oliva@adacore.com>
 
        * libgnat/a-numaux.ads: Make all imports Intrinsic.
index d8453cb44591a05704e1888724af52b573576e76..5930954dfcc72a2e0155c08fc17b2172848baee6 100644 (file)
@@ -1,3 +1,58 @@
+2020-10-12  David Malcolm  <dmalcolm@redhat.com>
+
+       PR analyzer/97258
+       * engine.cc (impl_region_model_context::on_escaped_function): New
+       vfunc.
+       (exploded_graph::add_function_entry): Use m_functions_with_enodes
+       to implement idempotency.
+       (add_any_callbacks): New.
+       (exploded_graph::build_initial_worklist): Use the above to find
+       callbacks that are reachable from global initializers.
+       (exploded_graph::on_escaped_function): New.
+       * exploded-graph.h
+       (impl_region_model_context::on_escaped_function): New decl.
+       (exploded_graph::on_escaped_function): New decl.
+       (exploded_graph::m_functions_with_enodes): New field.
+       * region-model-reachability.cc
+       (reachable_regions::reachable_regions): Replace "store" param with
+       "model" param; use it to initialize m_model.
+       (reachable_regions::add): When getting the svalue for the region,
+       call get_store_value on the model rather than using an initial
+       value.
+       (reachable_regions::mark_escaped_clusters): Add ctxt param and
+       use it to call on_escaped_function when a function_region escapes.
+       * region-model-reachability.h
+       (reachable_regions::reachable_regions): Replace "store" param with
+       "model" param.
+       (reachable_regions::mark_escaped_clusters): Add ctxt param.
+       (reachable_regions::m_model): New field.
+       * region-model.cc (region_model::handle_unrecognized_call): Update
+       for change in reachable_regions ctor.
+       (region_model::handle_unrecognized_call): Pass ctxt to
+       mark_escaped_clusters.
+       (region_model::get_reachable_svalues): Update for change in
+       reachable_regions ctor.
+       (region_model::get_initial_value_for_global): Read-only variables
+       keep their initial values.
+       * region-model.h (region_model_context::on_escaped_function): New
+       vfunc.
+       (noop_region_model_context::on_escaped_function): New.
+
+2020-10-12  David Malcolm  <dmalcolm@redhat.com>
+
+       * analyzer.opt (Wanalyzer-write-to-const): New.
+       (Wanalyzer-write-to-string-literal): New.
+       * region-model-impl-calls.cc (region_model::impl_call_memcpy):
+       Call check_for_writable_region.
+       (region_model::impl_call_memset): Likewise.
+       (region_model::impl_call_strcpy): Likewise.
+       * region-model.cc (class write_to_const_diagnostic): New.
+       (class write_to_string_literal_diagnostic): New.
+       (region_model::check_for_writable_region): New.
+       (region_model::set_value): Call check_for_writable_region.
+       * region-model.h (region_model::check_for_writable_region): New
+       decl.
+
 2020-10-07  David Malcolm  <dmalcolm@redhat.com>
 
        PR analyzer/97116
index c28ae8c90cbc275da5626d51ad565836b15bba6f..0fb4795f70b51ae45763fa5efc7c830c0728746e 100644 (file)
@@ -1,3 +1,16 @@
+2020-10-12  Martin Sebor  <msebor@redhat.com>
+
+       PR c++/97201
+       * error.c (dump_type_suffix): Handle both the C and C++ forms of
+       zero-length arrays.
+
+2020-10-12  Martin Sebor  <msebor@redhat.com>
+
+       PR c++/96511
+       PR middle-end/96384
+       * init.c (warn_placement_new_too_small): Call builtin_objsize instead
+       of duplicating what it does.
+
 2020-10-08  Jason Merrill  <jason@redhat.com>
 
        PR c++/96805
index 1ae51991fb1220599dfc3b58579b29b2d501f57b..58a732f26b54375db3e703899c846aa1851971c6 100644 (file)
@@ -1,3 +1,13 @@
+2020-10-12  Iain Buclaw  <ibuclaw@gdcproject.org>
+
+       * dmd/MERGE: Merge upstream dmd 70aabfb51
+
+2020-10-12  Iain Buclaw  <ibuclaw@gdcproject.org>
+
+       * dmd/MERGE: Merge upstream dmd 3a9790525
+       * d-target.cc (Target::isVectorTypeSupported): Adjust return codes for
+       invalid size and invalid base type.
+
 2020-09-12  Iain Buclaw  <ibuclaw@gdcproject.org>
 
        PR d/97002
index 8de4b38746d6fd8a662ff397c1c6f90e656fb318..18985fed4f02312bfe5846499ad4285a158b2d6a 100644 (file)
@@ -1,3 +1,9 @@
+2020-10-12  Mark Eggleston  <markeggleston@gcc.gnu.org>
+
+       PR fortran/96099
+       * decl.c (gfc_match_implicit): Check for numeric and logical
+       types.
+
 2020-10-07  Paul Thomas  <pault@gcc.gnu.org>
 
        PR fortran/47469
index 12c7d8fe384ed171cf31aef71312536676c7f2c1..51108e501814dc80dfcd3a1d23dc5051c969f050 100644 (file)
@@ -1,3 +1,112 @@
+2020-10-12  David Malcolm  <dmalcolm@redhat.com>
+
+       PR analyzer/97258
+       * gcc.dg/analyzer/callbacks-1.c: New test.
+       * gcc.dg/analyzer/callbacks-2.c: New test.
+       * gcc.dg/analyzer/callbacks-3.c: New test.
+
+2020-10-12  Andrew MacLeod  <amacleod@redhat.com>
+
+       * gcc.dg/pr97381.c: New test.
+
+2020-10-12  Aldy Hernandez  <aldyh@redhat.com>
+
+       * gcc.dg/pr97378.c: New test.
+
+2020-10-12  David Malcolm  <dmalcolm@redhat.com>
+
+       PR c/83347
+       PR middle-end/90404
+       PR analyzer/95007
+       * gcc.dg/analyzer/write-to-const-1.c: New test.
+       * gcc.dg/analyzer/write-to-string-literal-1.c: New test.
+
+2020-10-12  Martin Sebor  <msebor@redhat.com>
+
+       PR c++/97201
+       * g++.dg/warn/Wplacement-new-size-8.C: Adjust expected message.
+       * g++.dg/warn/Warray-bounds-10.C: New test.
+       * g++.dg/warn/Warray-bounds-11.C: New test.
+       * g++.dg/warn/Warray-bounds-12.C: New test.
+       * g++.dg/warn/Warray-bounds-13.C: New test.
+
+2020-10-12  Martin Sebor  <msebor@redhat.com>
+
+       PR middle-end/97342
+       PR middle-end/97023
+       PR middle-end/96384
+       * c-c++-common/Wrestrict.c: Adjust comment.
+       * gcc.dg/Wstringop-overflow-34.c: Remove xfail.
+       * gcc.dg/Wstringop-overflow-43.c: Remove xfails.  Adjust regex patterns.
+       * gcc.dg/pr51683.c: Prune out expected warning.
+       * gcc.target/i386/pr60693.c: Same.
+       * g++.dg/warn/Wplacement-new-size-8.C: New test.
+       * gcc.dg/Wstringop-overflow-41.c: New test.
+       * gcc.dg/Wstringop-overflow-44.s: New test.
+       * gcc.dg/Wstringop-overflow-45.c: New test.
+       * gcc.dg/Wstringop-overflow-46.c: New test.
+       * gcc.dg/Wstringop-overflow-47.c: New test.
+       * gcc.dg/Wstringop-overflow-49.c: New test.
+       * gcc.dg/Wstringop-overflow-50.c: New test.
+       * gcc.dg/Wstringop-overflow-51.c: New test.
+       * gcc.dg/Wstringop-overflow-52.c: New test.
+       * gcc.dg/Wstringop-overflow-53.c: New test.
+       * gcc.dg/Wstringop-overflow-54.c: New test.
+       * gcc.dg/Wstringop-overflow-55.c: New test.
+       * gcc.dg/Wstringop-overread-5.c: New test.
+
+2020-10-12  Martin Sebor  <msebor@redhat.com>
+
+       PR c++/96511
+       PR middle-end/96384
+       * g++.dg/init/strlen.C: Add expected warning.
+       * g++.dg/warn/Wplacement-new-size-1.C: Relax warnings.
+       * g++.dg/warn/Wplacement-new-size-2.C: Same.
+       * g++.dg/warn/Wplacement-new-size-6.C: Same.
+       * gcc.dg/Warray-bounds-58.c: Adjust
+       * gcc.dg/Wstringop-overflow-37.c: Same.
+       * g++.dg/warn/Wplacement-new-size-7.C: New test.
+
+2020-10-12  Christophe Lyon  <christophe.lyon@linaro.org>
+
+       PR tree-optimization/97357
+       * gcc.dg/pr97357.c: Call setjmp instead of _setjmp.
+
+2020-10-12  Richard Biener  <rguenther@suse.de>
+
+       * gcc.dg/vect/bb-slp-50.c: New testcase.
+       * gcc.dg/vect/bb-slp-51.c: Likewise.
+
+2020-10-12  Martin Liska  <mliska@suse.cz>
+
+       PR tree-optimization/97079
+       * gcc.target/aarch64/sve/pr97079.c: New test.
+
+2020-10-12  Duan bo  <duanbo3@huawei.com>
+
+       PR target/96757
+       * gcc.target/aarch64/pr96757.c: New test.
+
+2020-10-12  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
+
+       PR target/97349
+       * gcc.target/aarch64/simd/pr97349.c: New test.
+
+2020-10-12  Aldy Hernandez  <aldyh@redhat.com>
+
+       * gcc.dg/pr97371.c: New test.
+
+2020-10-12  Richard Biener  <rguenther@suse.de>
+
+       PR tree-optimization/97357
+       * gcc.dg/pr97357.c: New testcase.
+
+2020-10-12  Mark Eggleston  <markeggleston@gcc.gnu.org>
+
+       PR fortran/96099
+       * gfortran.dg/pr96099_1.f90: New test.
+       * gfortran.dg/pr96099_2.f90: New test.
+
 2020-10-11  Iain Sandoe  <iain@sandoe.co.uk>
 
        * obj-c++.dg/plugin/diagnostic-test-expressions-1.mm:
index d8c9914e0b5950f99de83ac915e279d894515750..c736041bfde83a03e7d76899c22783c87f3ff620 100644 (file)
@@ -1,3 +1,13 @@
+2020-10-12  Maciej W. Rozycki  <macro@linux-mips.org>
+
+       * libdruntime/config/mips/switchcontext.S [__mips_hard_float]:
+       Use L.D and S.D generic assembly instructions rather than LDC1
+       and SDC1 MIPS II hardware instructions.
+
+2020-10-12  Iain Buclaw  <ibuclaw@gdcproject.org>
+
+       * testsuite/lib/libphobos.exp: Define tool_timeout, set to 600.
+
 2020-09-10  Iain Buclaw  <ibuclaw@gdcproject.org>
 
        PR d/95680
index 199f4f7be97fb7fd06d997ebc7923eefcefafa7f..5cd339384bd5005ad2cf30687b1e36045a0fff25 100644 (file)
@@ -1,3 +1,42 @@
+2020-10-12  Patrick Palka  <ppalka@redhat.com>
+
+       * include/std/ranges (take_while_view::begin): Constrain the
+       const overload further as per LWG 3450.
+       (take_while_view::end): Likewise.
+       * testsuite/std/ranges/adaptors/take_while.cc: Add test for LWG
+       3450.
+
+2020-10-12  Patrick Palka  <ppalka@redhat.com>
+
+       PR libstdc++/95322
+       * include/std/ranges (take_view::_CI): Define this alias
+       template as per LWG 3449 and remove ...
+       (take_view::_Sentinel::_CI): ... this type alias.
+       (take_view::_Sentinel::operator==): Adjust use of _CI
+       accordingly.  Define a second overload that accepts an iterator
+       of the opposite constness as per LWG 3449.
+       (take_while_view::_Sentinel::operator==): Likewise.
+       * testsuite/std/ranges/adaptors/95322.cc: Add tests for LWG 3449.
+
+2020-10-12  Jonathan Wakely  <jwakely@redhat.com>
+
+       * doc/doxygen/user.cfg.in: Update to Doxygen 1.8.20 format.
+
+2020-10-12  Jonathan Wakely  <jwakely@redhat.com>
+
+       * doc/doxygen/user.cfg.in (PREDEFINED): Use __cplusplus=201703L
+       so that C++17 features are documented.
+
+2020-10-12  Jonathan Wakely  <jwakely@redhat.com>
+
+       * include/bits/stl_algobase.h (copy, move, copy_backward)
+       (move_backward): Fix documentation for returned iterator.
+
+2020-10-12  Martin Sebor  <msebor@redhat.com>
+
+       PR c++/97201
+       * libsupc++/new (operator new): Add attribute alloc_size and malloc.
+
 2020-10-11  Clement Chigot  <clement.chigot@atos.net>
 
        * config/os/aix/t-aix: Add complementary mode object file to