summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--gcc/ChangeLog128
-rw-r--r--gcc/DATESTAMP2
-rw-r--r--gcc/ada/ChangeLog73
-rw-r--r--gcc/c-family/ChangeLog6
-rw-r--r--gcc/cp/ChangeLog23
-rw-r--r--gcc/fortran/ChangeLog6
-rw-r--r--gcc/testsuite/ChangeLog69
-rw-r--r--libgfortran/ChangeLog8
-rw-r--r--libstdc++-v3/ChangeLog85
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