From aa69f0a8203095b5a689fae48d5ca8006ecfca61 Mon Sep 17 00:00:00 2001 From: GCC Administrator Date: Thu, 28 Jan 2021 00:16:56 +0000 Subject: [PATCH] Daily bump. --- gcc/ChangeLog | 134 ++++++++++++++++++++++++++++++++++ gcc/DATESTAMP | 2 +- gcc/cp/ChangeLog | 8 +++ gcc/fortran/ChangeLog | 17 +++++ gcc/testsuite/ChangeLog | 66 +++++++++++++++++ libcpp/ChangeLog | 5 ++ libgcc/ChangeLog | 9 +++ libgfortran/ChangeLog | 5 ++ libstdc++-v3/ChangeLog | 187 ++++++++++++++++++++++++++++++++++++++++++++++++ 9 files changed, 432 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 8f444d9..70b8f0a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,137 @@ +2021-01-27 Vladimir N. Makarov + + PR rtl-optimization/97684 + * ira.c (ira): Call ira_set_pseudo_classes before + update_equiv_regs when it is necessary. + +2021-01-27 Jakub Jelinek + + PR target/98853 + * config/aarch64/aarch64.md (*aarch64_bfxilsi_uxtw): Use + %w0, %w1 and %2 instead of %0, %1 and %2. + +2021-01-27 Aaron Sawdey + + * config/rs6000/genfusion.pl: New script to generate + define_insn_and_split patterns so combine can arrange fused + instructions next to each other. + * config/rs6000/fusion.md: New file, generated fused instruction + patterns for combine. + * config/rs6000/predicates.md (const_m1_to_1_operand): New predicate. + (non_update_memory_operand): New predicate. + * config/rs6000/rs6000-cpus.def: Add OPTION_MASK_P10_FUSION and + OPTION_MASK_P10_FUSION_LD_CMPI to ISA_3_1_MASKS_SERVER and + POWERPC_MASKS. + * config/rs6000/rs6000-protos.h (address_is_non_pfx_d_or_x): Add + prototype. + * config/rs6000/rs6000.c (rs6000_option_override_internal): + Automatically set OPTION_MASK_P10_FUSION and + OPTION_MASK_P10_FUSION_LD_CMPI if target is power10. + (rs600_opt_masks): Allow -mpower10-fusion + in function attributes. + (address_is_non_pfx_d_or_x): New function. + * config/rs6000/rs6000.h: Add MASK_P10_FUSION. + * config/rs6000/rs6000.md: Include fusion.md. + * config/rs6000/rs6000.opt: Add -mpower10-fusion + and -mpower10-fusion-ld-cmpi. + * config/rs6000/t-rs6000: Add dependencies involving fusion.md. + +2021-01-27 Jonathan Wright + + * config/aarch64/aarch64-simd-builtins.def: Add [su]mlal + builtin generator macros. + * config/aarch64/aarch64-simd.md (*aarch64_mlal): + Rename to... + (aarch64_mlal): This. + * config/aarch64/arm_neon.h (vmlal_s8): Use RTL builtin + instead of inline asm. + (vmlal_s16): Likewise. + (vmlal_s32): Likewise. + (vmlal_u8): Likewise. + (vmlal_u16): Likewise. + (vmlal_u32): Likewise. + +2021-01-27 Richard Biener + + PR tree-optimization/98854 + * tree-vect-slp.c (vect_build_slp_tree_2): Also build + PHIs from scalars when the number of CTORs matches the + number of children. + +2021-01-27 Jonathan Wright + + * config/aarch64/aarch64-simd-builtins.def: Add mls_n builtin + generator macro. + * config/aarch64/aarch64-simd.md (*aarch64_mls_elt_merge): + Rename to... + (aarch64_mls_n): This. + * config/aarch64/arm_neon.h (vmls_n_s16): Use RTL builtin + instead of asm. + (vmls_n_s32): Likewise. + (vmls_n_u16): Likewise. + (vmls_n_u32): Likewise. + (vmlsq_n_s16): Likewise. + (vmlsq_n_s32): Likewise. + (vmlsq_n_u16): Likewise. + (vmlsq_n_u32): Likewise. + +2021-01-27 Jonathan Wright + + * config/aarch64/aarch64-simd-builtins.def: Add mls builtin + generator macro. + * config/aarch64/arm_neon.h (vmls_s8): Use RTL builtin rather + than asm. + (vmls_s16): Likewise. + (vmls_s32): Likewise. + (vmls_u8): Likewise. + (vmls_u16): Likewise. + (vmls_u32): Likewise. + (vmlsq_s8): Likewise. + (vmlsq_s16): Likewise. + (vmlsq_s32): Likewise. + (vmlsq_u8): Likewise. + (vmlsq_u16): Likewise. + (vmlsq_u32): Likewise. + +2021-01-27 Jonathan Wright + + * config/aarch64/aarch64-simd-builtins.def: Add mla_n builtin + generator macro. + * config/aarch64/aarch64-simd.md (*aarch64_mla_elt_merge): + Rename to... + (aarch64_mla_n): This. + * config/aarch64/arm_neon.h (vmla_n_s16): Use RTL builtin + instead of asm. + (vmla_n_s32): Likewise. + (vmla_n_u16): Likewise. + (vmla_n_u32): Likewise. + (vmlaq_n_s16): Likewise. + (vmlaq_n_s32): Likewise. + (vmlaq_n_u16): Likewise. + (vmlaq_n_u32): Likewise. + +2021-01-27 liuhongt + + PR target/98833 + * config/i386/sse.md (sse2_gt3): Drop !TARGET_XOP in condition. + (*sse2_eq3): Ditto. + +2021-01-27 Jakub Jelinek + + * tree-pass.h (PROP_trees): Rename to ... + (PROP_gimple): ... this. + * cfgexpand.c (pass_data_expand): Replace PROP_trees with PROP_gimple. + * passes.c (execute_function_dump, execute_function_todo, + execute_one_ipa_transform_pass, execute_one_pass): Likewise. + * varpool.c (ctor_for_folding): Likewise. + +2021-01-27 Jakub Jelinek + + PR tree-optimization/97260 + * varpool.c: Include tree-pass.h. + (ctor_for_folding): In GENERIC return DECL_INITIAL for TREE_READONLY + non-TREE_SIDE_EFFECTS automatic variables. + 2021-01-26 Paul Fee * doc/cpp.texi (__cplusplus): Document value for -std=c++23 diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index 05d39df..6f2e936 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20210127 +20210128 diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index bad0bc2..252bda6 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,11 @@ +2021-01-27 Jason Merrill + + PR c++/97874 + * name-lookup.c (lookup_using_decl): Clean up handling + of dependency and inherited constructors. + (finish_nonmember_using_decl): Handle DECL_DEPENDENT_P. + * pt.c (tsubst_expr): Handle DECL_DEPENDENT_P. + 2021-01-26 Jason Merrill PR c++/97474 diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 83112d5..ec26cea 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,20 @@ +2021-01-27 Paul Thomas + + PR fortran/93924 + PR fortran/93925 + * trans-expr.c (gfc_conv_procedure_call): Suppress the call to + gfc_conv_intrinsic_to_class for unlimited polymorphic procedure + pointers. + (gfc_trans_assignment_1): Similarly suppress class assignment + for class valued procedure pointers. + +2021-01-27 Paul Thomas + + PR fortran/98472 + * trans-array.c (gfc_conv_expr_descriptor): Include elemental + procedure pointers in the assert under the comment 'elemental + function' and eliminate the second, spurious assert. + 2021-01-25 Harald Anlauf PR fortran/70070 diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index b99ef3a..c985d48 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,69 @@ +2021-01-27 Harris Snyder + + * gfortran.dg/ISO_Fortran_binding_18.c: New test. + * gfortran.dg/ISO_Fortran_binding_18.f90: New test. + +2021-01-27 Vladimir N. Makarov + + PR rtl-optimization/97684 + * gcc.target/i386/pr97684.c: New. + +2021-01-27 Jason Merrill + + PR c++/97874 + * g++.dg/lookup/using4.C: No error in C++20. + * g++.dg/cpp0x/decltype37.C: Adjust message. + * g++.dg/template/crash75.C: Adjust message. + * g++.dg/template/crash76.C: Adjust message. + * g++.dg/cpp0x/inh-ctor36.C: New test. + * g++.dg/cpp1z/inh-ctor39.C: New test. + * g++.dg/cpp2a/using-enum-7.C: New test. + +2021-01-27 Jakub Jelinek + + PR target/98853 + * gcc.c-torture/execute/pr98853-1.c: New test. + * gcc.c-torture/execute/pr98853-2.c: New test. + +2021-01-27 Richard Biener + + PR tree-optimization/98854 + * gcc.dg/vect/bb-slp-pr98854.c: New testcase. + +2021-01-27 Paul Thomas + + PR fortran/93924 + PR fortran/93925 + * gfortran.dg/proc_ptr_52.f90 : New test. + +2021-01-27 liuhongt + + PR target/98833 + * gcc.target/i386/pr98833.c: New test. + +2021-01-27 Jakub Jelinek + + * gcc.target/i386/m128-check.h (CHECK_EXP): Remove + optimize ("no-strict-aliasing") attribute. + * gcc.target/i386/sse-andnps-1.c (TEST): Copy e into float[4] + array to avoid violating TBAA. + * gcc.target/i386/sse2-andpd-1.c (TEST): Copy e.d into double[2] + array to avoid violating TBAA. + * gcc.target/i386/sse-andps-1.c (TEST): Copy e.f into float[4] + array to avoid violating TBAA. + * gcc.target/i386/sse2-andnpd-1.c (TEST): Copy e into double[2] + array to avoid violating TBAA. + +2021-01-27 Paul Thomas + + PR fortran/98472 + * gfortran.dg/elemental_function_5.f90 : New test. + +2021-01-27 Jakub Jelinek + + PR tree-optimization/97260 + * gcc.dg/tree-ssa/pr97260.c: New test. + 2021-01-26 Paul Fee * lib/target-supports.exp (check_effective_target_c++2a): diff --git a/libcpp/ChangeLog b/libcpp/ChangeLog index b47e793..99d5593 100644 --- a/libcpp/ChangeLog +++ b/libcpp/ChangeLog @@ -1,3 +1,8 @@ +2021-01-27 liuhongt + + PR target/98833 + * lex.c (search_line_sse2): Replace builtins with == operator. + 2021-01-26 Paul Fee * include/cpplib.h (c_lang): Add CXX23 and GNUCXX23. diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog index 94e6f4f..90bea1b 100644 --- a/libgcc/ChangeLog +++ b/libgcc/ChangeLog @@ -1,3 +1,12 @@ +2021-01-27 Jakub Jelinek + + * config/i386/savms64.h: Add .note.GNU-stack section on Linux. + * config/i386/savms64f.h: Likewise. + * config/i386/resms64.h: Likewise. + * config/i386/resms64f.h: Likewise. + * config/i386/resms64x.h: Likewise. + * config/i386/resms64fx.h: Likewise. + 2021-01-26 Martin Liska PR gcov-profile/98739 diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog index bdb2aec..8f48bec 100644 --- a/libgfortran/ChangeLog +++ b/libgfortran/ChangeLog @@ -1,3 +1,8 @@ +2021-01-27 Harris Snyder + + * runtime/ISO_Fortran_binding.c (CFI_establish): fixed + strides for rank >2 arrays. + 2021-01-15 Harris Snyder * runtime/ISO_Fortran_binding.c (CFI_establish): Fixed signed diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 090c7ae..1d976fa 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,190 @@ +2021-01-27 Jonathan Wakely + + * doc/xml/manual/status_cxx2017.xml: Replace invalid entity. + * doc/html/*: Regenerate. + +2021-01-27 Jonathan Wakely + + * testsuite/experimental/simd/generate_makefile.sh: Use printf + instead of echo when printing escape characters. + +2021-01-27 Matthias Kretz + + * scripts/check_simd: New file. This script is called from the + the check-simd target. It determines a set of compiler flags and + simulator setups for calling generate_makefile.sh and passes the + information back to the check-simd target, which recurses to the + generated Makefiles. + * scripts/create_testsuite_files: Remove files below simd/tests/ + from testsuite_files and place them in testsuite_files_simd. + * testsuite/Makefile.am: Add testsuite_files_simd. Add + check-simd target. + * testsuite/Makefile.in: Regenerate. + * testsuite/experimental/simd/driver.sh: New file. This script + compiles and runs a given simd test, logging its output and + status. It uses the timeout command to implement compile and + test timeouts. + * testsuite/experimental/simd/generate_makefile.sh: New file. + This script generates a Makefile which uses driver.sh to compile + and run the tests and collect the logs into a single log file. + * testsuite/experimental/simd/tests/abs.cc: New file. Tests + abs(simd). + * testsuite/experimental/simd/tests/algorithms.cc: New file. + Tests min/max(simd, simd). + * testsuite/experimental/simd/tests/bits/conversions.h: New + file. Contains functions to support tests involving conversions. + * testsuite/experimental/simd/tests/bits/make_vec.h: New file. + Support functions make_mask and make_vec. + * testsuite/experimental/simd/tests/bits/mathreference.h: New + file. Support functions to supply precomputed math function + reference data. + * testsuite/experimental/simd/tests/bits/metahelpers.h: New + file. Support code for SFINAE testing. + * testsuite/experimental/simd/tests/bits/simd_view.h: New file. + * testsuite/experimental/simd/tests/bits/test_values.h: New + file. Test functions to easily drive a test with simd objects + initialized from a given list of values and a range of random + values. + * testsuite/experimental/simd/tests/bits/ulp.h: New file. + Support code to determine the ULP distance of simd objects. + * testsuite/experimental/simd/tests/bits/verify.h: New file. + Test framework for COMPARE'ing simd objects and instantiating + the test templates with value_type and ABI tag. + * testsuite/experimental/simd/tests/broadcast.cc: New file. Test + simd broadcasts. + * testsuite/experimental/simd/tests/casts.cc: New file. Test + simd casts. + * testsuite/experimental/simd/tests/fpclassify.cc: New file. + Test floating-point classification functions. + * testsuite/experimental/simd/tests/frexp.cc: New file. Test + frexp(simd). + * testsuite/experimental/simd/tests/generator.cc: New file. Test + simd generator constructor. + * testsuite/experimental/simd/tests/hypot3_fma.cc: New file. + Test 3-arg hypot(simd,simd,simd) and fma(simd,simd,sim). + * testsuite/experimental/simd/tests/integer_operators.cc: New + file. Test integer operators. + * testsuite/experimental/simd/tests/ldexp_scalbn_scalbln_modf.cc: + New file. Test ldexp(simd), scalbn(simd), scalbln(simd), and + modf(simd). + * testsuite/experimental/simd/tests/loadstore.cc: New file. Test + (converting) simd loads and stores. + * testsuite/experimental/simd/tests/logarithm.cc: New file. Test + log*(simd). + * testsuite/experimental/simd/tests/mask_broadcast.cc: New file. + Test simd_mask broadcasts. + * testsuite/experimental/simd/tests/mask_conversions.cc: New + file. Test simd_mask conversions. + * testsuite/experimental/simd/tests/mask_implicit_cvt.cc: New + file. Test simd_mask implicit conversions. + * testsuite/experimental/simd/tests/mask_loadstore.cc: New file. + Test simd_mask loads and stores. + * testsuite/experimental/simd/tests/mask_operator_cvt.cc: New + file. Test simd_mask operators convert as specified. + * testsuite/experimental/simd/tests/mask_operators.cc: New file. + Test simd_mask compares, subscripts, and negation. + * testsuite/experimental/simd/tests/mask_reductions.cc: New + file. Test simd_mask reductions. + * testsuite/experimental/simd/tests/math_1arg.cc: New file. Test + 1-arg math functions on simd. + * testsuite/experimental/simd/tests/math_2arg.cc: New file. Test + 2-arg math functions on simd. + * testsuite/experimental/simd/tests/operator_cvt.cc: New file. + Test implicit conversions on simd binary operators behave as + specified. + * testsuite/experimental/simd/tests/operators.cc: New file. Test + simd compares, subscripts, not, unary minus, plus, minus, + multiplies, divides, increment, and decrement. + * testsuite/experimental/simd/tests/reductions.cc: New file. + Test reduce(simd). + * testsuite/experimental/simd/tests/remqo.cc: New file. Test + remqo(simd). + * testsuite/experimental/simd/tests/simd.cc: New file. Basic + sanity checks of simd types. + * testsuite/experimental/simd/tests/sincos.cc: New file. Test + sin(simd) and cos(simd). + * testsuite/experimental/simd/tests/split_concat.cc: New file. + Test split(simd) and concat(simd, simd). + * testsuite/experimental/simd/tests/splits.cc: New file. Test + split(simd_mask). + * testsuite/experimental/simd/tests/trigonometric.cc: New file. + Test remaining trigonometric functions on simd. + * testsuite/experimental/simd/tests/trunc_ceil_floor.cc: New + file. Test trunc(simd), ceil(simd), and floor(simd). + * testsuite/experimental/simd/tests/where.cc: New file. Test + masked operations using where. + +2021-01-27 Matthias Kretz + + * doc/xml/manual/status_cxx2017.xml: Add implementation status + of the Parallelism TS 2. Document implementation-defined types + and behavior. + * include/Makefile.am: Add new headers. + * include/Makefile.in: Regenerate. + * include/experimental/simd: New file. New header for + Parallelism TS 2. + * include/experimental/bits/numeric_traits.h: New file. + Implementation of P1841R1 using internal naming. Addition of + missing IEC559 functionality query. + * include/experimental/bits/simd.h: New file. Definition of the + public simd interfaces and general implementation helpers. + * include/experimental/bits/simd_builtin.h: New file. + Implementation of the _VecBuiltin simd_abi. + * include/experimental/bits/simd_converter.h: New file. Generic + simd conversions. + * include/experimental/bits/simd_detail.h: New file. Internal + macros for the simd implementation. + * include/experimental/bits/simd_fixed_size.h: New file. Simd + fixed_size ABI specific implementations. + * include/experimental/bits/simd_math.h: New file. Math + overloads for simd. + * include/experimental/bits/simd_neon.h: New file. Simd NEON + specific implementations. + * include/experimental/bits/simd_ppc.h: New file. Implement bit + shifts to avoid invalid results for integral types smaller than + int. + * include/experimental/bits/simd_scalar.h: New file. Simd scalar + ABI specific implementations. + * include/experimental/bits/simd_x86.h: New file. Simd x86 + specific implementations. + * include/experimental/bits/simd_x86_conversions.h: New file. + x86 specific conversion optimizations. The conversion patterns + work around missing conversion patterns in the compiler and + should be removed as soon as PR85048 is resolved. + * testsuite/experimental/simd/standard_abi_usable.cc: New file. + Test that all (not all fixed_size, though) standard simd and + simd_mask types are usable. + * testsuite/experimental/simd/standard_abi_usable_2.cc: New + file. As above but with -ffast-math. + * testsuite/libstdc++-dg/conformance.exp: Don't build simd tests + from the standard test loop. Instead use + check_vect_support_and_set_flags to build simd tests with the + relevant machine flags. + +2021-01-27 Jonathan Wakely + + PR libstdc++/66414 + * include/bits/string_view.tcc + (basic_string_view::find(const CharT*, size_type, size_type)): + Optimize. + +2021-01-27 Paul Fee + + * include/bits/basic_string.h (basic_string::contains): New + member functions. + * include/std/string_view (basic_string_view::contains): + Likewise. + * include/std/version (__cpp_lib_string_contains): Define. + * testsuite/21_strings/basic_string/operations/starts_with/char/1.cc: + Remove trailing whitespace. + * testsuite/21_strings/basic_string/operations/starts_with/wchar_t/1.cc: + Likewise. + * testsuite/21_strings/basic_string/operations/contains/char/1.cc: New test. + * testsuite/21_strings/basic_string/operations/contains/wchar_t/1.cc: New test. + * testsuite/21_strings/basic_string_view/operations/contains/char/1.cc: New test. + * testsuite/21_strings/basic_string_view/operations/contains/char/2.cc: New test. + * testsuite/21_strings/basic_string_view/operations/contains/wchar_t/1.cc: New test. + 2021-01-21 Jonathan Wakely * src/c++17/Makefile.in: Regenerate. -- 2.7.4