From 391b23e02bf29a103422f54ed034650afa99152b Mon Sep 17 00:00:00 2001 From: GCC Administrator Date: Fri, 24 Sep 2021 00:16:23 +0000 Subject: [PATCH] Daily bump. --- gcc/ChangeLog | 169 ++++++++++++++++++++++++++++++++++++++++ gcc/DATESTAMP | 2 +- gcc/ada/ChangeLog | 140 +++++++++++++++++++++++++++++++++ gcc/cp/ChangeLog | 26 +++++++ gcc/fortran/ChangeLog | 13 ++++ gcc/testsuite/ChangeLog | 66 ++++++++++++++++ libiberty/ChangeLog | 10 +++ libstdc++-v3/ChangeLog | 39 ++++++++++ 8 files changed, 464 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index a35c5b711521..318d889ed823 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,172 @@ +2021-09-23 Andrew MacLeod + + PR tree-optimization/102463 + * gimple-range-fold.cc (fold_using_range::relation_fold_and_or): If + there is no range-ops handler, don't look for a relation. + +2021-09-23 Andrew MacLeod + + * gimple-range-cache.cc (ranger_cache::ranger_cache): Take + non-executable_edge flag as parameter. + * gimple-range-cache.h (ranger_cache): Adjust prototype. + * gimple-range-gori.cc (gori_compute::gori_compute): Take + non-executable_edge flag as parameter. + (gori_compute::outgoing_edge_range_p): Check new flag. + * gimple-range-gori.h (gori_compute): Adjust prototype. + * gimple-range.cc (gimple_ranger::gimple_ranger): Create new flag. + (gimple_ranger::range_on_edge): Check new flag. + * gimple-range.h (gimple_ranger::non_executable_edge_flag): New. + * gimple-ssa-evrp.c (rvrp_folder): Pass ranger flag to simplifer. + (hybrid_folder::hybrid_folder): Set ranger non-executable flag value. + (hybrid_folder::fold_stmt): Set flag value in the simplifer. + * vr-values.c (simplify_using_ranges::set_and_propagate_unexecutable): + Use not_executable flag if provided inmstead of EDGE_EXECUTABLE. + (simplify_using_ranges::simplify_switch_using_ranges): Clear + EDGE_EXECUTABLE like it originally did. + (simplify_using_ranges::cleanup_edges_and_switches): Clear any + NON_EXECUTABLE flags. + (simplify_using_ranges::simplify_using_ranges): Adjust. + * vr-values.h (class simplify_using_ranges): Adjust. + (simplify_using_ranges::set_range_query): Add non-executable flag param. + +2021-09-23 Bill Schmidt + + PR target/102024 + * config/rs6000/rs6000-call.c (rs6000_aggregate_candidate): Detect + zero-width bit fields and return indicator. + (rs6000_discover_homogeneous_aggregate): Diagnose when the + presence of a zero-width bit field changes parameter passing in + GCC 12. + +2021-09-23 Aldy Hernandez + + * gimple-range-fold.cc (fold_using_range::range_of_phi): + Remove dominator check. + +2021-09-23 Aldy Hernandez + + * gimple-range-path.cc (path_range_query::precompute_relations): + Hoist edge calculations before using EDGE_SUCC. + +2021-09-23 Jonathan Wakely + + * configure.ac: Fix --with-multilib-list description. + * configure: Regenerate. + +2021-09-23 Richard Biener + + PR tree-optimization/102448 + * tree-vect-data-refs.c (vect_duplicate_ssa_name_ptr_info): + Clear alignment info copied from DR_PTR_INFO. + +2021-09-23 Hongyu Wang + + * config/i386/i386-expand.c (ix86_use_mask_cmp_p): Enable + HFmode mask_cmp. + * config/i386/sse.md (sseintvecmodelower): Add HF vector modes. + (_store_mask): Extend to support HF vector modes. + (vec_cmp): Likewise. + (vcond_mask_): Likewise. + (vcond): New expander. + (vcond): Likewise. + (vcond): Likewise. + (vcondu): Likewise. + +2021-09-23 Hongyu Wang + + * config/i386/sse.md (extend2): + New expander. + (extendv4hf2): Likewise. + (extendv2hfv2df2): Likewise. + (trunc2): Likewise. + (avx512fp16_vcvt2ph_): Rename to ... + (truncv4hf2): ... this, and drop constraints. + (avx512fp16_vcvtpd2ph_v2df): Rename to ... + (truncv2dfv2hf2): ... this, and likewise. + +2021-09-23 Hongyu Wang + + * config/i386/sse.md (float2): + New expander. + (avx512fp16_vcvt2ph_): + Rename to ... + (floatv4hf2): ... this, and drop constraints. + (avx512fp16_vcvtqq2ph_v2di): Rename to ... + (floatv2div2hf2): ... this, and likewise. + +2021-09-23 Hongyu Wang + + * config/i386/i386.md (fix_trunchf2): New expander. + (fixuns_trunchfhi2): Likewise. + (*fixuns_trunchfsi2zext): New define_insn. + * config/i386/sse.md (ssePHmodelower): New mode_attr. + (fix_trunc2): + New expander for same element vector fix_truncate. + (fix_trunc2): + Likewise for V4HF to V4SI/V4DI fix_truncate. + (fix_truncv2hfv2di2): + Likeise for V2HF to V2DI fix_truncate. + +2021-09-23 Hongyu Wang + + * config/i386/i386.md (hf3): New expander. + +2021-09-23 liuhongt + + * config/i386/sse.md (FMAMODEM): extend to handle FP16. + (VFH_SF_AVX512VL): Extend to handle HFmode. + (VF_SF_AVX512VL): Deleted. + +2021-09-23 liuhongt + + * config/i386/i386.md (rinthf2): New expander. + (nearbyinthf2): New expander. + +2021-09-23 Aldy Hernandez + + * tree-ssa-dom.c (class dom_jump_threader_simplifier): Rename... + (class dom_jt_state): ...this and provide virtual overrides. + (dom_jt_state::register_equiv): New. + (class dom_jt_simplifier): Rename from + dom_jump_threader_simplifier. + (dom_jump_threader_simplifier::simplify): Rename... + (dom_jt_simplifier::simplify): ...to this. + (pass_dominator::execute): Use dom_jt_simplifier and + dom_jt_state. + * tree-ssa-threadedge.c (jump_threader::jump_threader): + Clean-up. + (jt_state::register_equivs_stmt): Abstract out... + (jump_threader::record_temporary_equivalences_from_stmts_at_dest): + ...from here. + (jump_threader::thread_around_empty_blocks): Update state. + (jump_threader::thread_through_normal_block): Same. + (jt_state::jt_state): Remove. + (jt_state::push): Remove pass specific bits. Keep block vector + updated. + (jt_state::append_path): New. + (jt_state::pop): Remove pass specific bits. + (jt_state::register_equiv): Same. + (jt_state::record_ranges_from_stmt): Same. + (jt_state::register_equivs_on_edge): Same. Rename... + (jt_state::register_equivs_edge): ...to this. + (jt_state::dump): New. + (jt_state::debug): New. + (jump_threader_simplifier::simplify): Remove. + (jt_state::get_path): New. + * tree-ssa-threadedge.h (class jt_simplifier): Make into a base + class. Expose common functionality as virtual methods. + (class jump_threader_simplifier): Same. Rename... + (class jt_simplifier): ...to this. + * tree-vrp.c (class vrp_jump_threader_simplifier): Rename... + (class vrp_jt_simplifier): ...to this. Provide pass specific + overrides. + (class vrp_jt_state): New. + (vrp_jump_threader_simplifier::simplify): Rename... + (vrp_jt_simplifier::simplify): ...to this. Inline code from + what used to be the base class. + (vrp_jump_threader::vrp_jump_threader): Use vrp_jt_state and + vrp_jt_simplifier. + 2021-09-22 Tobias Burnus PR fortran/55534 diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index d6fc0609448e..6ac89e9d80a0 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20210923 +20210924 diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 4d44d799baec..9074908a613e 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,143 @@ +2021-09-23 Eric Botcazou + + * gcc-interface/decl.c (gnat_to_gnu_entity): Fix comment. + +2021-09-23 Richard Kenner + + * gen_il-gen-gen_entities.adb (Subprogram_Body_Or_Type): Add. + * gen_il-types.ads (Subprogram_Body_Or_Type): Likewise. + +2021-09-23 Richard Kenner + + * einfo-utils.adb (Next_Index): Verify input and output are + N_Is_Index. + * gen_il-gen-gen_nodes.adb (N_Has_Bounds, N_Is_Index): Add. + * gen_il-types.ads (N_Has_Bounds, N_Is_Index): Likewise. + * sem_ch3.adb (Array_Type_Declaration): Use Next, not + Next_Index. + * sem_ch12.adb (Formal_Dimensions): Likewise. + * sem_util.adb (Is_Valid_Renaming): Likewise. + +2021-09-23 Eric Botcazou + + * doc/gnat_ugn/gnat_utility_programs.rst (gnatsymbolize): + Document new --load option and -g1 as minimal compilation + requirement. + +2021-09-23 Piotr Trojanek + + * sem_aggr.adb (Resolve_Array_Aggregate): Only keep the bounds + for internally generated attributes; otherwise, compute them + anew. + +2021-09-23 Javier Miranda + + * sem_ch3.adb (Build_Access_Subprogram_Wrapper): Decorate the + wrapper with attribute Is_Wrapper, and move its declaration to + the freezing actions of its type declaration; done to facilitate + identifying it at later stages to avoid handling it as a + primitive operation of a tagged type; otherwise it may be + handled as a dispatching operation and erroneously registered in + a dispatch table. + (Make_Index): Add missing decoration of field Parent. + * sem_disp.adb (Check_Dispatching_Operation): Complete + decoration of late-overriding dispatching primitives. + (Is_Access_To_Subprogram_Wrapper): New subprogram. + (Inherited_Subprograms): Prevent cascaded errors; adding missing + support for private types. + * sem_type.adb (Add_One_Interp): Add missing support for the + first interpretation of a primitive of an inmediate ancestor + interface. + * sem_util.adb (Check_Result_And_Post_State_In_Pragma): Do not + report missing reference in postcondition placed in internally + built wrappers. + * exp_disp.adb (Expand_Dispatching_Call): Adding assertion. + +2021-09-23 Ed Schonberg + + * sem_aggr.adb (Resolve_Array_Aggregate): Check the validity of + an array aggregate all of whose components are iterated + component associations. + * exp_aggr.adb (Expand_Array_Aggregate, + Two_Pass_Aggregate_Expansion): implement two-pass algorithm and + replace original aggregate with resulting temporary, to ensure + that a proper length check is performed if context is + constrained. Use attributes Pos and Val to handle index types of + any discrete type. + +2021-09-23 Bob Duff + + * gen_il-gen.adb: Set the number of concrete nodes that have the + Homonym field to a higher number than any other field. This + isn't true, but it forces Homonym's offset to be chosen first, + so it will be at offset zero and hence slot zero. + +2021-09-23 Richard Kenner + + * atree.adb (Relocate_Node): If relocating a subprgram call and + we're doing unnesting, make a new Parameter_Associations, if + any. + +2021-09-23 Piotr Trojanek + + * libgnat/a-strbou.ads (Generic_Bounded_Length): Remove explicit + Initializes contract. + +2021-09-23 Bob Duff + + * gen_il-gen.adb: Generate getters and setters with much of the + code inlined. Generate code for storing a few fields in the node + header, to avoid the extra level of indirection for those + fields. We generate the header type, so we don't have to + duplicate hand-written Ada and C code to depend on the number of + header fields. Declare constants for slot size. Use short names + because these are used all over. Remove + Put_Low_Level_Accessor_Instantiations, Put_Low_Level_C_Getter, + which are no longer needed. Rename + Put_High_Level_C_Getter-->Put_C_Getter. + * atree.ads, atree.adb: Take into account the header slots. + Take into account the single Node_Or_Entity_Field type. Remove + "pragma Assertion_Policy (Ignore);", because the routines in + this package are no longer efficiency critical. + * atree.h: Remove low-level getters, which are no longer used by + sinfo.h and einfo.h. + * einfo-utils.adb: Avoid crash in Known_Alignment. + * live.adb, sem_eval.adb: Remove code that prevents Node_Id from + having a predicate. We don't actually add a predicate to + Node_Id, but we want to be able to for temporary debugging. + * sinfo-utils.adb: Remove code that prevents Node_Id from having + a predicate. Take into account the single Node_Or_Entity_Field + type. + * sinfo-utils.ads: Minor. + * table.ads (Table_Type): Make the components aliased, because + low-level setters in Atree need to take 'Access. + * treepr.adb: Take into account the single Node_Or_Entity_Field + type. Make some code more robust, so we can print out + half-baked nodes. + * types.ads: Move types here for visibility purposes. + * gcc-interface/gigi.h, gcc-interface/trans.c: Take into account + the Node_Header change in the GNAT front end. + * gcc-interface/cuintp.c, gcc-interface/targtyps.c: Add because + gigi.h now refers to type Node_Header, which is in sinfo.h. + +2021-09-23 Yannick Moy + + * libgnat/a-strfix.adb (Delete, Insert, Overwrite, + Replace_Slice): Remove SPARK_Mode Off. + * libgnat/a-strfix.ads (Insert, Overwrite, Replace_Slice): + Strengthen precondition. + +2021-09-23 Piotr Trojanek + + * libgnat/a-strbou.ads (Generic_Bounded_Length): Remove non-null + Global contracts. + +2021-09-23 Steve Baird + + * doc/gnat_rm/implementation_defined_characteristics.rst: Update + this section to reflect the current version of Ada RM M.2. + * gnat_rm.texi: Regenerate. + 2021-09-22 Yannick Moy * libgnat/a-strfix.ads (Trim): Simplify contracts. diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 794472644e9f..6918bf9c041a 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,29 @@ +2021-09-23 Michel Morin + + * parser.c (cp_keyword_starts_decl_specifier_p): Do not + handle RID_ATTRIBUTE. + (cp_parser_constructor_declarator_p): Remove now-redundant + checks. + (cp_parser_lambda_declarator_opt): Likewise. + +2021-09-23 Michel Morin + + PR c++/77565 + * parser.c (cp_keyword_starts_decl_specifier_p): Handle more + decl-specifiers (typedef/inline/cv/explicit/virtual/friend). + +2021-09-23 Patrick Palka + + * ptree.c (cxx_print_decl): Dump the DECL_TEMPLATE_RESULT of + a TEMPLATE_DECL. Dump the DECL_TEMPLATE_INFO rather than just + printing its pointer value. + +2021-09-23 Jakub Jelinek + + PR c++/102413 + * parser.c (cp_parser_omp_directive_args): Diagnose if omp::directive + is not followed by a balanced token sequence starting with open paren. + 2021-09-22 Patrick Palka DR 2446 diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index f96198d5e5da..42c3cbe25484 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,16 @@ +2021-09-23 Sandra Loosemore + + PR fortran/101320 + * decl.c (gfc_verify_c_interop_param): Handle F2018 C1557, + aka TS29113 C516. + +2021-09-23 Harald Anlauf + Tobias Burnus + + PR fortran/93834 + * trans-intrinsic.c (gfc_conv_allocated): Cleanup. Handle + coindexed scalar coarrays. + 2021-09-23 Sandra Loosemore PR fortran/101319 diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 0605e9fd7704..8198aee5839d 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,69 @@ +2021-09-23 Sandra Loosemore + + PR fortran/101320 + * gfortran.dg/c-interop/c516.f90: Remove xfails. Add more + tests. + +2021-09-23 Michel Morin + + PR c++/77565 + * g++.dg/spellcheck-pr77565.C: New test. + +2021-09-23 Andrew MacLeod + + * gcc.dg/pr102463.c: New. + +2021-09-23 Harald Anlauf + Tobias Burnus + + PR fortran/93834 + * gfortran.dg/coarray/coarray_allocated.f90: New test. + +2021-09-23 Bill Schmidt + + PR target/102024 + * g++.target/powerpc/pr102024.C: New. + +2021-09-23 Hongyu Wang + + * g++.target/i386/avx512fp16-vcondmn-vec.C: New test. + * g++.target/i386/avx512fp16-vcondmn-minmax.C: Ditto. + * gcc.target/i386/avx512fp16-vcondmn-loop-1.c: Ditto. + * gcc.target/i386/avx512fp16-vcondmn-loop-2.c: Ditto. + * gcc.target/i386/avx512fp16-vec_cmpmn.c: Ditto. + +2021-09-23 Hongyu Wang + + * gcc.target/i386/avx512fp16-trunc-extendvnhf.c: New test. + +2021-09-23 Hongyu Wang + + * gcc.target/i386/avx512fp16-floatvnhf.c: New test. + +2021-09-23 Hongyu Wang + + * gcc.target/i386/avx512fp16-trunchf.c: New test. + * gcc.target/i386/avx512fp16-truncvnhf.c: Ditto. + +2021-09-23 Hongyu Wang + + * gcc.target/i386/avx512fp16-builtin-minmax-1.c: New test. + +2021-09-23 liuhongt + + * gcc.target/i386/avx512fp16-fma-1.c: New test. + * gcc.target/i386/avx512fp16vl-fma-1.c: New test. + * gcc.target/i386/avx512fp16vl-fma-vectorize-1.c: New test. + +2021-09-23 liuhongt + + * gcc.target/i386/avx512fp16-builtin-round-1.c: Add new testcase. + +2021-09-23 Jakub Jelinek + + PR c++/102413 + * g++.dg/gomp/attrs-14.C: New test. + 2021-09-23 Sandra Loosemore PR fortran/101319 diff --git a/libiberty/ChangeLog b/libiberty/ChangeLog index 7c337c221e39..6988ffd59c47 100644 --- a/libiberty/ChangeLog +++ b/libiberty/ChangeLog @@ -1,3 +1,13 @@ +2021-09-23 Luís Ferreira + + * d-demangle.c (dlang_Type): Validate MANGLED is nonnull. + * testsuite/d-demangle-expected: New test. + +2021-09-23 Luís Ferreira + + * d-demangle.c (dlang_symbol_backref): Ensure strlen of + string is less than length computed by dlang_number. + 2021-09-01 Iain Sandoe * configure: Regenerate. diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 22f78a38f8a5..10368ffdf971 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,42 @@ +2021-09-23 Jonathan Wakely + + * testsuite/20_util/specialized_algorithms/memory_management_tools/destroy_neg.cc: + Remove dg-error lines for C++20-only errors. + +2021-09-23 Jonathan Wakely + + * testsuite/19_diagnostics/headers/system_error/93151.cc: + Disable PCH. + +2021-09-23 Jonathan Wakely + + * src/c++11/system_error.cc (system_error_category) [_WIN32]: + Map Windows error codes to generic POSIX error numbers. Use + FormatMessage instead of strerror. + * testsuite/19_diagnostics/error_category/system_category.cc: + Adjust for new behaviour on Windows. + +2021-09-23 Jonathan Wakely + + * src/c++11/system_error.cc (generic_error_category): Define + class and virtual functions as 'final'. + (generic_error_category::equivalent(int, const error_condition&)): + Override. + (system_error_category): Define class and virtual functions as + 'final'. + (system_error_category::equivalent(int, const error_condition&)): + Override. + (generic_category_instance, system_category_instance): Use + constinit union to make the objects immortal. + +2021-09-23 Jonathan Wakely + + PR libstdc++/102425 + * src/c++11/system_error.cc + (system_error_category::default_error_condition): Add 0 to + switch. + * testsuite/19_diagnostics/error_category/102425.cc: New test. + 2021-09-17 Jonathan Wakely * include/bits/fs_path.h (path::iterator): Add noexcept to all -- 2.39.2