diff options
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | gcc/ChangeLog | 128 | ||||
-rw-r--r-- | gcc/DATESTAMP | 2 | ||||
-rw-r--r-- | gcc/ada/ChangeLog | 73 | ||||
-rw-r--r-- | gcc/c-family/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/cp/ChangeLog | 23 | ||||
-rw-r--r-- | gcc/fortran/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 69 | ||||
-rw-r--r-- | libgfortran/ChangeLog | 8 | ||||
-rw-r--r-- | libstdc++-v3/ChangeLog | 85 |
10 files changed, 403 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog index 20aa719b826..b375cedf373 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2022-01-10 Martin Liska <mliska@suse.cz> + + * MAINTAINERS: Fix obvious issues with sorting. + 2022-01-07 liuhongt <hongtao.liu@intel.com> * build.log: New file. diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 9f906e9da0f..21ad9afa6f1 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,131 @@ +2022-01-10 Uroš Bizjak <ubizjak@gmail.com> + + PR target/103861 + * config/i386/i386-expand.c (ix86_expand_int_sse_cmp): + Handle V2QImode. + * config/i386/mmx.md (<sat_plusminus:insn><mode>3): + Use VI1_16_32 mode iterator. + (*eq<mode>3): Ditto. + (*gt<mode>3): Ditto. + (*xop_maskcmp<mode>3): Ditto. + (*xop_maskcmp_uns<mode>3): Ditto. + (vec_cmp<mode><mode>): Ditto. + (vec_cmpu<mode><mode>): Ditto. + +2022-01-10 Richard Biener <rguenther@suse.de> + + PR tree-optimization/103948 + * tree-vect-generic.c (expand_vector_condition): Return true if + all ones vector is returned for true, all zeros vector for false + and the target defines corresponding vec_cmp{,u}MN named RTX pattern. + +2022-01-10 Paul A. Clarke <pc@us.ibm.com> + + * config/rs6000/smmintrin.h (_mm_blendv_epi8): Use vec_blendv + when _ARCH_PWR10. Use signed types. + (_mm_blendv_ps): Use vec_blendv when _ARCH_PWR10. + (_mm_blendv_pd): Likewise. + +2022-01-10 Andre Vieira <andre.simoesdiasvieira@arm.com> + + * tree-vectorizer.c (better_epilogue_loop_than_p): Round factors up for + epilogue costing. + * tree-vect-loop.c (vect_analyze_loop): Re-analyze all modes for + epilogues, unless we are guaranteed that we can't have partial vectors. + * genopinit.c: (partial_vectors_supported): Generate new function. + +2022-01-10 Jakub Jelinek <jakub@redhat.com> + + PR target/102024 + * config/i386/i386.c (classify_argument): Add zero_width_bitfields + argument, when seeing DECL_FIELD_CXX_ZERO_WIDTH_BIT_FIELD bitfields, + always ignore them, when seeing other zero sized bitfields, either + set zero_width_bitfields to 1 and ignore it or if equal to 2 process + it. Pass it to recursive calls. Add wrapper + with old arguments and diagnose ABI differences for C structures + with zero width bitfields. Formatting fixes. + +2022-01-10 Richard Sandiford <richard.sandiford@arm.com> + + PR rtl-optimization/98782 + * ira-int.h (ira_soft_conflict): Declare. + * ira-color.c (max_soft_conflict_loop_depth): New constant. + (ira_soft_conflict): New function. + (spill_soft_conflicts): Likewise. + (assign_hard_reg): Use them to handle the case described by + the comment above ira_soft_conflict. + (improve_allocation): Likewise. + * ira.c (check_allocation): Allow allocnos with "soft" conflicts + to share the same register. + +2022-01-10 Richard Sandiford <richard.sandiford@arm.com> + + PR rtl-optimization/98782 + * ira-int.h (ira_caller_save_cost): New function. + (ira_caller_save_loop_spill_p): Likewise. + * ira-build.c (ira_propagate_hard_reg_costs): Test whether it is + cheaper to spill a call-clobbered register throughout a loop rather + than spill it around each individual call. If so, treat all + call-clobbered registers as conflicts and... + (propagate_allocno_info): ...do not propagate call information + from the child to the parent. + * ira-color.c (move_spill_restore): Update accordingly. + * ira-costs.c (ira_tune_allocno_costs): Use ira_caller_save_cost. + +2022-01-10 Richard Sandiford <richard.sandiford@arm.com> + + PR rtl-optimization/98782 + * ira-int.h (ira_allocno::might_conflict_with_parent_p): New field. + (ALLOCNO_MIGHT_CONFLICT_WITH_PARENT_P): New macro. + (ira_single_region_allocno_p): New function. + (ira_total_conflict_hard_regs): Likewise. + * ira-build.c (ira_create_allocno): Initialize + ALLOCNO_MIGHT_CONFLICT_WITH_PARENT_P. + (ira_propagate_hard_reg_costs): New function. + (propagate_allocno_info): Use it. Try to avoid propagating + hard register conflicts to parent allocnos if we can handle + the conflicts by spilling instead. Limit the propagated + register costs to the cost of spilling throughout the child loop. + * ira-color.c (color_pass): Use ira_single_region_allocno_p to + test whether a child and parent allocno can share the same + register. + (move_spill_restore): Adjust for the new behavior of + propagate_allocno_info. + +2022-01-10 Richard Sandiford <richard.sandiford@arm.com> + + PR rtl-optimization/98782 + * ira-int.h (ira_subloop_allocnos_can_differ_p): New function, + extracted from... + * ira-color.c (color_pass): ...here. + +2022-01-10 Richard Sandiford <richard.sandiford@arm.com> + + PR rtl-optimization/98782 + * ira-color.c (color_pass): Add comments to describe the spill costs. + (move_spill_restore): Likewise. Fix reversed calculation. + +2022-01-10 Richard Sandiford <richard.sandiford@arm.com> + + PR rtl-optimization/98782 + * ira-int.h (ira_loop_border_costs): New class. + * ira-color.c (ira_loop_border_costs::ira_loop_border_costs): + New constructor. + (calculate_allocno_spill_cost): Use ira_loop_border_costs. + (color_pass): Likewise. + (move_spill_restore): Likewise. + +2022-01-10 Eric Botcazou <ebotcazou@adacore.com> + + PR target/103465 + * coretypes.h (unwind_info_type): Swap UI_SEH and UI_TARGET. + +2022-01-10 Richard Biener <rguenther@suse.de> + + PR tree-optimization/100359 + * tree-ssa-loop-ivcanon.c (try_unroll_loop_completely): + Allow non-growing peeling with !allow_peel and UL_ALL. + 2022-01-08 Roger Sayle <roger@nextmovesoftware.com> * config/i386/i386-expand.c (ix86_expand_vector_move): Add diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index 20bfd103a66..9de7ada22f1 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20220110 +20220111 diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 6a7b5004d7e..60abcb77a0a 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,76 @@ +2022-01-10 Eric Botcazou <ebotcazou@adacore.com> + + * gcc-interface/trans.c (Identifier_to_gnu): Use correct subtype. + (elaborate_profile): New function. + (Call_to_gnu): Call it on the formals and the result type before + retrieving the translated result type from the subprogram type. + +2022-01-10 Eric Botcazou <ebotcazou@adacore.com> + + * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: Fix + computation of boolean result in the unchecked union case. + (components_to_record): Rename MAYBE_UNUSED parameter to IN_VARIANT + and remove local variable of the same name. Pass NULL recursively + as P_GNU_REP_LIST for nested variants in the unchecked union case. + +2022-01-10 Eric Botcazou <ebotcazou@adacore.com> + + * gcc-interface/trans.c (lvalue_required_p) <N_Pragma>: New case. + <N_Pragma_Argument_Association>: Likewise. + (Pragma_to_gnu) <Pragma_Inspection_Point>: Fetch the corresponding + variable of a constant before marking it as addressable. + +2022-01-10 Arnaud Charlet <charlet@adacore.com> + + * gcc-interface/Make-lang.in (ADA_GENERATED_FILES): Remove + s-casuti.ad?, s-crtl.ad?, s-os_lib.ad?. Update list of object + files accordingly. + +2022-01-10 Piotr Trojanek <trojanek@adacore.com> + + * libgnat/s-atopri.ads (Atomic_Compare_Exchange): Replaces + deprecated Sync_Compare_And_Swap. + * libgnat/s-atopri.adb (Lock_Free_Try_Write): Switch from __sync + to __atomic builtins. + +2022-01-10 Piotr Trojanek <trojanek@adacore.com> + + * libgnat/s-exponn.adb, libgnat/s-expont.adb, + libgnat/s-exponu.adb, libgnat/s-widthi.adb, + libgnat/s-widthu.adb: Remove CodePeer annotations for pragma + Loop_Variant. + +2022-01-10 Piotr Trojanek <trojanek@adacore.com> + + * exp_prag.adb (Expand_Pragma_Loop_Variant): Disable expansion + in CodePeer mode. + +2022-01-10 Piotr Trojanek <trojanek@adacore.com> + + * sem_util.adb (Is_Child_Or_Sibling): Fix typo in comment. + +2022-01-10 Eric Botcazou <ebotcazou@adacore.com> + + * exp_pakd.adb (Install_PAT): If the PAT is a scalar type, apply + the canonical adjustment to its alignment. + +2022-01-10 Piotr Trojanek <trojanek@adacore.com> + + * libgnat/s-atocou__builtin.adb (Decrement, Increment): Switch + from __sync to __atomic builtins; use 'Address to be consistent + with System.Atomic_Primitives. + +2022-01-10 Eric Botcazou <ebotcazou@adacore.com> + + * exp_pakd.adb (Install_PAT): Do not reset the alignment here. + * layout.adb (Layout_Type): Call Adjust_Esize_Alignment after having + copied the RM_Size onto the Esize when the latter is too small. + +2022-01-10 Justin Squirek <squirek@adacore.com> + + * sem_warn.adb (Check_References): Handle arrays of tasks + similar to task objects. + 2022-01-07 Patrick Bernardi <bernardi@adacore.com> * libgnat/a-direct.adb (Search_Data): Remove type. diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog index 112acab8316..86d5762c65c 100644 --- a/gcc/c-family/ChangeLog +++ b/gcc/c-family/ChangeLog @@ -1,3 +1,9 @@ +2022-01-10 Richard Biener <rguenther@suse.de> + + PR middle-end/101530 + * c-common.c (c_build_shufflevector): Wrap the BIT_FIELD_REF + in a TARGET_EXPR to force a temporary. + 2022-01-06 Marek Polacek <polacek@redhat.com> PR c++/103758 diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index cfbec59d1ac..d762ddf7b26 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,26 @@ +2022-01-10 Patrick Palka <ppalka@redhat.com> + + PR c++/103879 + * constexpr.c (cxx_fold_indirect_ref): Split out object/offset + canonicalization step into a local lambda. Strengthen it to + absorb more components at position 0. Use it before both calls + to cxx_fold_indirect_ref_1. + +2022-01-10 Patrick Palka <ppalka@redhat.com> + + PR c++/103783 + * call.c (cand_parms_match): Skip over 'this' when given one + static and one non-static member function. + +2022-01-10 Jakub Jelinek <jakub@redhat.com> + + PR c++/103912 + * semantics.c (expand_or_defer_fn): For immediate functions, set + node->body_removed to true and clear analyzed, definition and + force_output. + * decl2.c (c_parse_final_cleanups): Ignore immediate functions for + expand_or_defer_fn. + 2022-01-08 Jakub Jelinek <jakub@redhat.com> PR c++/89074 diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 111705a4c72..7a7cb7e96fc 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,9 @@ +2022-01-10 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/103366 + * trans-expr.c (gfc_conv_gfc_desc_to_cfi_desc): Allow unlimited + polymorphic actual argument passed to assumed type formal. + 2022-01-09 Harald Anlauf <anlauf@gmx.de> PR fortran/103777 diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 79b719a4f65..8ce0c255f41 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,72 @@ +2022-01-10 Uroš Bizjak <ubizjak@gmail.com> + + PR target/103861 + * gcc.target/i386/pr103861-2.c: New test. + +2022-01-10 Patrick Palka <ppalka@redhat.com> + + PR c++/103879 + * g++.dg/cpp1y/constexpr-base2.C: New test. + * g++.dg/cpp1y/constexpr-base2a.C: New test. + +2022-01-10 Patrick Palka <ppalka@redhat.com> + + PR c++/103783 + * g++.dg/cpp2a/concepts-memfun2.C: New test. + +2022-01-10 Jakub Jelinek <jakub@redhat.com> + + PR c++/103912 + * g++.dg/cpp2a/consteval26.C: New test. + +2022-01-10 Paul A. Clarke <pc@us.ibm.com> + + * gcc.target/powerpc/sse4_1-blendvps.c: Copy from gcc.target/i386, + adjust dg directives to suit. + +2022-01-10 Andre Vieira <andre.simoesdiasvieira@arm.com> + + * gcc.target/aarch64/masked_epilogue.c: New test. + +2022-01-10 Paul Thomas <pault@gcc.gnu.org> + + PR fortran/103366 + * gfortran.dg/pr103366.f90: New test. + +2022-01-10 Jakub Jelinek <jakub@redhat.com> + + PR target/102024 + * gcc.target/i386/pr102024.c: New test. + * g++.target/i386/pr102024.C: New test. + +2022-01-10 Richard Sandiford <richard.sandiford@arm.com> + + * gcc.target/aarch64/reg-alloc-4.c: New test. + +2022-01-10 Richard Sandiford <richard.sandiford@arm.com> + + * gcc.target/aarch64/reg-alloc-3.c: New test. + +2022-01-10 Richard Sandiford <richard.sandiford@arm.com> + + * gcc.target/aarch64/reg-alloc-2.c: New test. + +2022-01-10 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org> + + PR fortran/82207 + * gfortran.dg/ieee/signaling_1.f90: New test. + * gfortran.dg/ieee/signaling_1_c.c: New file. + +2022-01-10 Richard Biener <rguenther@suse.de> + + PR middle-end/101530 + * c-c++-common/builtin-shufflevector-3.c: New testcase. + +2022-01-10 Richard Biener <rguenther@suse.de> + + PR tree-optimization/100359 + * gcc.dg/tree-ssa/pr100359.c: New testcase. + 2022-01-09 Harald Anlauf <anlauf@gmx.de> PR fortran/103777 diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog index 3a4f03c28af..78085c54fd2 100644 --- a/libgfortran/ChangeLog +++ b/libgfortran/ChangeLog @@ -1,3 +1,11 @@ +2022-01-10 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org> + + PR fortran/82207 + * Makefile.am: Pass -fsignaling-nans for IEEE files. + * Makefile.in: Regenerate. + * ieee/ieee_helper.c: Use issignaling macro to recognized + signaling NaNs. + Copyright (C) 2022 Free Software Foundation, Inc. diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 23514c7d570..e0458cd6181 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,88 @@ +2022-01-10 Jakub Jelinek <jakub@redhat.com> + + PR libstdc++/77760 + * include/bits/locale_facets_nonio.h (__time_get_state): New struct. + (time_get::_M_extract_via_format): Declare new method with + __time_get_state& as an extra argument. + * include/bits/locale_facets_nonio.tcc (_M_extract_via_format): Add + __state argument, set various fields in it while parsing. Handle %j, + %U, %w and %W, fix up handling of %y, %Y and %C, don't adjust tm_hour + for %p immediately. Add a wrapper around the method without the + __state argument for backwards compatibility. + (_M_extract_num): Remove all __len == 4 special cases. + (time_get::do_get_time, time_get::do_get_date, time_get::do_get): Zero + initialize __state, pass it to _M_extract_via_format and finalize it + at the end. + (do_get_year): For 1-2 digit parsed years, map 0-68 to 2000-2068, + 69-99 to 1969-1999. For 3-4 digit parsed years use that as year. + (get): If do_get isn't overloaded from the locale_facets_nonio.tcc + version, don't call do_get but call _M_extract_via_format instead to + pass around state. + * config/abi/pre/gnu.ver (GLIBCXX_3.4.30): Export _M_extract_via_format + with extra __time_get_state and __time_get_state::_M_finalize_state. + * src/c++98/locale_facets.cc (is_leap, day_of_the_week, + day_of_the_year): New functions in anon namespace. + (mon_yday): New var in anon namespace. + (__time_get_state::_M_finalize_state): Define. + * testsuite/22_locale/time_get/get/char/4.cc: New test. + * testsuite/22_locale/time_get/get/wchar_t/4.cc: New test. + * testsuite/22_locale/time_get/get_year/char/1.cc (test01): Parse 197 + as year 197AD instead of error. + * testsuite/22_locale/time_get/get_year/char/5.cc (test01): Parse 1 as + year 2001 instead of error. + * testsuite/22_locale/time_get/get_year/char/6.cc: New test. + * testsuite/22_locale/time_get/get_year/wchar_t/1.cc (test01): Parse + 197 as year 197AD instead of error. + * testsuite/22_locale/time_get/get_year/wchar_t/5.cc (test01): Parse + 1 as year 2001 instead of error. + * testsuite/22_locale/time_get/get_year/wchar_t/6.cc: New test. + +2022-01-10 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/103866 + * acinclude.m4 (GLIBCXX_COMPUTE_STDIO_INTEGER_CONSTANTS): Do + nothing for freestanding builds. + (GLIBCXX_ENABLE_HOSTED): Define FREESTANDING_FLAGS. + * configure.ac: Do not use AC_LIBTOOL_DLOPEN when configured + with --without-headers. Do not use GCC_HEADER_STDINT for + freestanding builds. + * libsupc++/Makefile.am (HOSTED_CXXFLAGS): Use -ffreestanding + for freestanding builds. + * configure: Regenerate. + * Makefile.in: Regenerate. + * doc/Makefile.in: Regenerate. + * include/Makefile.in: Regenerate. + * libsupc++/Makefile.in: Regenerate. + * po/Makefile.in: Regenerate. + * python/Makefile.in: Regenerate. + * src/Makefile.in: Regenerate. + * src/c++11/Makefile.in: Regenerate. + * src/c++17/Makefile.in: Regenerate. + * src/c++20/Makefile.in: Regenerate. + * src/c++98/Makefile.in: Regenerate. + * src/filesystem/Makefile.in: Regenerate. + * testsuite/Makefile.in: Regenerate. + +2022-01-10 Jonathan Wakely <jwakely@redhat.com> + + * testsuite/28_regex/algorithms/regex_replace/char/103664.cc: + Add dg-timeout-factor directive. + * testsuite/28_regex/basic_regex/84110.cc: Likewise. + * testsuite/28_regex/basic_regex/ctors/char/other.cc: Likewise. + * testsuite/28_regex/match_results/102667.cc: Likewise. + +2022-01-10 Jonathan Wakely <jwakely@redhat.com> + + * doc/xml/manual/using.xml: Update documentation around default + -std option. + * doc/html/*: Regenerate. + +2022-01-10 Jonathan Wakely <jwakely@redhat.com> + + PR libstdc++/100017 + * src/c++17/Makefile.am (AM_CXXFLAGS): Add -nostdinc++. + * src/c++17/Makefile.in: Regenerate. + 2022-01-09 Sandra Loosemore <sandra@codesourcery.com> * testsuite/18_support/type_info/constexpr.cc: Add explicit |