From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 2168) id BF9303858C62; Fri, 2 Sep 2022 00:17:12 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org BF9303858C62 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1662077832; bh=s9kn6Ikoqhksdysye4yo+PqIEmukZ3IKYihVJ2Fj7H8=; h=From:To:Subject:Date:From; b=JOf0yv4wMMNpMx/UeLU4pJ3aQdCnkaDQMhcZJ7PbjNlOipLr/kPqpjpcUUM4CJgMw yV0/siknqbyh7fgdw4l0EEAxd8PV/ljvciJNYKirTOKp32oPgk+E2Z3JQKZ5EWJb0J r3KX87XSwtfptRkeu3zDJXDmwOb4FXQEUkk7H79g= MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="utf-8" From: GCC Administrator To: gcc-cvs@gcc.gnu.org, libstdc++-cvs@gcc.gnu.org Subject: [gcc r13-2359] Daily bump. X-Act-Checkin: gcc X-Git-Author: GCC Administrator X-Git-Refname: refs/heads/master X-Git-Oldrev: 6761d362c3efe5f4ca3b0c66e6854015acf162a1 X-Git-Newrev: bb0a1556df79d02cf570f5eb17a1b02a509f0be4 Message-Id: <20220902001712.BF9303858C62@sourceware.org> Date: Fri, 2 Sep 2022 00:17:12 +0000 (GMT) List-Id: https://gcc.gnu.org/g:bb0a1556df79d02cf570f5eb17a1b02a509f0be4 commit r13-2359-gbb0a1556df79d02cf570f5eb17a1b02a509f0be4 Author: GCC Administrator Date: Fri Sep 2 00:16:33 2022 +0000 Daily bump. Diff: --- gcc/ChangeLog | 170 ++++++++++++++++++++++++++++++++++++++++++++++++ gcc/DATESTAMP | 2 +- gcc/c-family/ChangeLog | 16 +++++ gcc/c/ChangeLog | 5 ++ gcc/cp/ChangeLog | 4 ++ gcc/testsuite/ChangeLog | 66 +++++++++++++++++++ libcpp/ChangeLog | 19 ++++++ libstdc++-v3/ChangeLog | 99 ++++++++++++++++++++++++++++ 8 files changed, 380 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 03f1073ccfa..3377aa1b97f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,173 @@ +2022-09-01 Tamar Christina + + PR other/106782 + * config/aarch64/aarch64.cc + (aarch64_vector_costs::prefer_unrolled_loop): Replace %u with + HOST_WIDE_INT_PRINT_UNSIGNED. + +2022-09-01 Richard Sandiford + + * tree-vect-slp.cc (vect_build_slp_tree_2): When building a + VEC_PERM_EXPR of an existing vector, set the SLP_TREE_LANES + to the number of vector elements, if that's a known constant. + (vect_optimize_slp_pass::is_compatible_layout): Remove associated + comment about zero SLP_TREE_LANES. + (vect_optimize_slp_pass::start_choosing_layouts): Iterate over + all partition members when looking for potential layouts. + Handle existing permutes of fixed-length vectors. + +2022-09-01 Uroš Bizjak + + PR target/106707 + * config/i386/i386.md (moves to/from AX_REG into xchg peephole2): + Do not convert a move pattern where both operands are AX_REG. + +2022-09-01 Aldy Hernandez + + * range-op-float.cc (build_le): Convert to dconst*inf. + (build_ge): Same. + * value-range.cc (frange::set_signbit): Same. + (frange::normalize_kind): Same. + (range_tests_floats): Same. + * value-range.h (vrp_val_max): Same. + (vrp_val_min): Same. + (frange::set_varying): Same. + +2022-09-01 Aldy Hernandez + + * emit-rtl.cc (init_emit_once): Initialize dconstinf and + dconstninf. + * real.h: Add dconstinf and dconstninf. + +2022-09-01 Richard Biener + + * gimple-predicate-analysis.cc (compute_control_dep_chain): + Remove cycle detection, instead avoid walking backedges. + +2022-09-01 Richard Biener + + * gimple-predicate-analysis.cc (compute_control_dep_chain): + New wrapping overload. + (uninit_analysis::init_use_preds): Simplify. + (uninit_analysis::init_from_phi_def): Likewise. + +2022-09-01 Aldy Hernandez + + * gimple-range-fold.cc + (fold_using_range::range_of_builtin_int_call): Add case for + CFN_BUILT_IN_SIGNBIT. + +2022-09-01 Aldy Hernandez + + * range-op-float.cc (foperator_equal::op1_range): Do not copy sign + bit. + (foperator_not_equal::op1_range): Same. + * value-query.cc (range_query::get_tree_range): Set sign bit. + * value-range-pretty-print.cc (vrange_printer::visit): Dump sign bit. + * value-range.cc (frange::set_signbit): New. + (frange::set): Adjust for sign bit. + (frange::normalize_kind): Same. + (frange::union_): Remove useless comment. + (frange::intersect): Same. + (frange::contains_p): Adjust for sign bit. + (frange::singleton_p): Same. + (frange::verify_range): Same. + (range_tests_signbit): New tests. + (range_tests_floats): Call range_tests_signbit. + * value-range.h (class frange_props): Add signbit + (class frange): Same. + +2022-09-01 Jakub Jelinek + + PR other/106782 + * dumpfile.h (dump_printf_loc): Use ATTRIBUTE_GCC_DUMP_PRINTF (3, 4) + instead of ATTRIBUTE_GCC_DUMP_PRINTF (3, 0). + * tree-parloops.cc (parloops_is_slp_reduction): Cast pointers to + derived types of gimple to gimple * to avoid -Wformat warnings. + * tree-vect-loop-manip.cc (vect_set_loop_condition, + vect_update_ivs_after_vectorizer): Likewise. + * tree-vect-stmts.cc (vectorizable_load): Likewise. + * tree-vect-patterns.cc (vect_split_statement, + vect_recog_mulhs_pattern, vect_recog_average_pattern, + vect_determine_precisions_from_range, + vect_determine_precisions_from_users): Likewise. + * gimple-loop-versioning.cc + (loop_versioning::analyze_term_using_scevs): Likewise. + * tree-vect-slp.cc (vect_build_slp_tree_1): Likewise. + (vect_build_slp_tree): Cast slp_tree to void * to avoid + -Wformat warnings. + (optimize_load_redistribution_1, vect_match_slp_patterns, + vect_build_slp_instance, vect_optimize_slp_pass::materialize, + vect_optimize_slp_pass::dump, vect_slp_convert_to_external, + vect_slp_analyze_node_operations, vect_bb_partition_graph): Likewise. + (vect_print_slp_tree): Likewise. Also use + HOST_WIDE_INT_PRINT_UNSIGNED instead of %u. + * tree-vect-loop.cc (vect_determine_vectorization_factor, + vect_analyze_scalar_cycles_1, vect_analyze_loop_operations, + vectorizable_induction, vect_transform_loop): Cast pointers to derived + types of gimple to gimple * to avoid -Wformat warnings. + (vect_analyze_loop_2): Cast slp_tree to void * to avoid + -Wformat warnings. + (vect_estimate_min_profitable_iters): Use HOST_WIDE_INT_PRINT_UNSIGNED + instead of %d. + * tree-vect-slp-patterns.cc (vect_pattern_validate_optab): Use %G + instead of %T and STMT_VINFO_STMT (SLP_TREE_REPRESENTATIVE (node)) + instead of SLP_TREE_DEF_TYPE (node). + +2022-09-01 Jakub Jelinek + + PR c++/106655 + * doc/invoke.texi (-Winvalid-utf8): Document it. + +2022-09-01 Aldy Hernandez + + PR tree-optimization/106785 + * value-range.cc (range_tests_nan): Adjust tests for !HONOR_NANS. + (range_tests_floats): Same. + +2022-09-01 konglin1 + + * tree-if-conv.cc (is_cond_scalar_reduction): Add MULT_EXPR + recognition. + +2022-09-01 Peter Bergner + + PR target/101322 + * config/rs6000/rs6000-builtin.cc (rs6000_gimple_fold_mma_builtin): + Enforce the use of a valid MMA pointer type. + +2022-09-01 zhongjuzhe + + * config/riscv/riscv.cc (riscv_conditional_register_usage): Add vector + registers. + +2022-09-01 zhongjuzhe + + * config/riscv/riscv.cc (riscv_const_insns): Add cost of poly_int. + (riscv_output_move): Add csrr vlenb assembly. + * config/riscv/riscv.md (move_type): Add csrr vlenb type. + (ext): New attribute. + (ext_enabled): Ditto. + (enabled): Ditto. + +2022-09-01 zhongjuzhe + + * config/riscv/constraints.md (TARGET_VECTOR ? V_REGS : NO_REGS): Add + "vr" constraint. + (TARGET_VECTOR ? VD_REGS : NO_REGS): Add "vd" constraint. + (TARGET_VECTOR ? VM_REGS : NO_REGS): Add "vm" constraint. + (vp): Add poly constraint. + +2022-09-01 zhongjuzhe + + * config/riscv/riscv.h (enum reg_class): Change vype to vtype. + +2022-09-01 zhongjuzhe + + * config/riscv/riscv.cc (riscv_convert_vector_bits): Change + configuration according to TARGET_MIN_VLEN. + * config/riscv/riscv.h (UNITS_PER_FP_REG): Fix comment. + 2022-08-31 Martin Liska * config.build: Remove deprecated ports. diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index 9ba0bbef705..9dafb9722d0 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20220901 +20220902 diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog index b3ebec0f5dc..e03e3a0272d 100644 --- a/gcc/c-family/ChangeLog +++ b/gcc/c-family/ChangeLog @@ -1,3 +1,19 @@ +2022-09-01 Jason Merrill + + * c-common.cc (c_common_nodes_and_builtins): Set TREE_STRING_FLAG on + char8_t. + (braced_list_to_string): Check for char-sized elements. + +2022-09-01 Jakub Jelinek + + PR c++/106655 + * c.opt (-Winvalid-utf8): New warning. + * c-opts.cc (c_common_handle_option) : + Set cpp_opts->cpp_input_charset_explicit. + (c_common_post_options): If -finput-charset=UTF-8 is explicit + in C++23, enable -Winvalid-utf8 by default and if -pedantic + or -pedantic-errors, make it a pedwarn. + 2022-08-31 Joseph Myers * c-attribs.cc (handle_deprecated_attribute): Check and pedwarn diff --git a/gcc/c/ChangeLog b/gcc/c/ChangeLog index 2dea2b71366..61b9c669342 100644 --- a/gcc/c/ChangeLog +++ b/gcc/c/ChangeLog @@ -1,3 +1,8 @@ +2022-09-01 Joseph Myers + + * c-decl.cc (grokparms): Handle () in a function declaration the + same as (void) for C2X. + 2022-08-31 Joseph Myers * c-parser.cc (c_parser_label): Pass attributes to do_case. diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 79285de9f8a..c9b87bad027 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,7 @@ +2022-09-01 Marek Polacek + + * cp-tree.h (maybe_strip_ref_conversion): Remove. + 2022-08-30 Ulrich Drepper * Make-lang.in: Add rule to rebuild std-name-hint.h from diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 2c36038743a..d8a1999a40a 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,69 @@ +2022-09-01 H.J. Lu + + PR target/106707 + * gcc.target/i386/pr106707.c (foo): Replace long with long long. + +2022-09-01 Joseph Myers + + * gcc.dg/c11-unproto-3.c, gcc.dg/c2x-unproto-3.c, + gcc.dg/c2x-unproto-4.c: New tests. + * gcc.dg/c2x-old-style-definition-6.c, gcc.dg/c2x-unproto-1.c, + gcc.dg/c2x-unproto-2.c: Update for removal of unprototyped + functions. + +2022-09-01 Richard Sandiford + + * gcc.dg/vect/bb-slp-pr54400.c: Extend to aarch64. + * gcc.dg/vect/bb-slp-layout-18.c: New test. + +2022-09-01 Uroš Bizjak + + PR target/106707 + * gcc.target/i386/pr106707.c: New test. + +2022-09-01 Aldy Hernandez + + * gcc.dg/tree-ssa/vrp-float-signbit-1.c: New test. + +2022-09-01 Jakub Jelinek + + PR c++/106655 + * c-c++-common/cpp/Winvalid-utf8-1.c: New test. + * c-c++-common/cpp/Winvalid-utf8-2.c: New test. + * c-c++-common/cpp/Winvalid-utf8-3.c: New test. + * g++.dg/cpp23/Winvalid-utf8-1.C: New test. + * g++.dg/cpp23/Winvalid-utf8-2.C: New test. + * g++.dg/cpp23/Winvalid-utf8-3.C: New test. + * g++.dg/cpp23/Winvalid-utf8-4.C: New test. + * g++.dg/cpp23/Winvalid-utf8-5.C: New test. + * g++.dg/cpp23/Winvalid-utf8-6.C: New test. + * g++.dg/cpp23/Winvalid-utf8-7.C: New test. + * g++.dg/cpp23/Winvalid-utf8-8.C: New test. + * g++.dg/cpp23/Winvalid-utf8-9.C: New test. + * g++.dg/cpp23/Winvalid-utf8-10.C: New test. + * g++.dg/cpp23/Winvalid-utf8-11.C: New test. + * g++.dg/cpp23/Winvalid-utf8-12.C: New test. + +2022-09-01 Aldy Hernandez + + PR tree-optimization/106785 + * gcc.dg/tree-ssa/vrp-float-nan-1.c: New test. + +2022-09-01 konglin1 + + * gcc.dg/tree-ssa/gen-vect-34.c: New test. + * gcc.dg/vect/vect-ifcvt-18.c: New test. + +2022-09-01 Kewen Lin + + PR testsuite/106682 + * gcc.target/powerpc/pr86731-fwrapv-longlong.c: Fix typo. + +2022-09-01 Peter Bergner + + PR target/101322 + * g++.target/powerpc/pr101322.C: New test. + 2022-08-31 Joseph Myers * gcc.dg/c2x-attr-deprecated-2.c, gcc.dg/c2x-attr-fallthrough-2.c, diff --git a/libcpp/ChangeLog b/libcpp/ChangeLog index 9d18b23ba0b..defaa945629 100644 --- a/libcpp/ChangeLog +++ b/libcpp/ChangeLog @@ -1,3 +1,22 @@ +2022-09-01 Jakub Jelinek + + PR c++/106655 + * include/cpplib.h (struct cpp_options): Implement C++23 + P2295R6 - Support for UTF-8 as a portable source file encoding. + Add cpp_warn_invalid_utf8 and cpp_input_charset_explicit fields. + (enum cpp_warning_reason): Add CPP_W_INVALID_UTF8 enumerator. + * init.cc (cpp_create_reader): Initialize cpp_warn_invalid_utf8 + and cpp_input_charset_explicit. + * charset.cc (_cpp_valid_utf8): Adjust function comment. + * lex.cc (UCS_LIMIT): Define. + (utf8_continuation): New const variable. + (utf8_signifier): Move earlier in the file. + (_cpp_warn_invalid_utf8, _cpp_handle_multibyte_utf8): New functions. + (_cpp_skip_block_comment): Handle -Winvalid-utf8 warning. + (skip_line_comment): Likewise. + (lex_raw_string, lex_string): Likewise. + (_cpp_lex_direct): Likewise. + 2022-08-31 Jakub Jelinek PR preprocessor/106778 diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 712ce1740b3..2547cd68ca1 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,102 @@ +2022-09-01 Jonathan Wakely + + * include/std/ranges (adjacent_transform_view::_Iterator): Add + typename keyword before dependent qualified-id. + +2022-09-01 Jonathan Wakely + + * include/std/type_traits (__is_referenceable): Remove. + (__add_lvalue_reference_helper, __add_rvalue_reference_helper): + Use __void_t instead of __is_referenceable. + (__add_pointer_helper): Likewise. + (add_pointer): Add partial specializations for reference types. + +2022-09-01 Jonathan Wakely + + * include/std/type_traits (__is_constructible_impl): Replace + class template with alias template. + (is_default_constructible, is_nothrow_constructible) + (is_nothrow_constructible): Simplify base-specifier. + (__is_copy_constructible_impl, __is_move_constructible_impl) + (__is_nothrow_copy_constructible_impl) + (__is_nothrow_move_constructible_impl): Remove class templates. + (is_copy_constructible, is_move_constructible) + (is_nothrow_constructible, is_nothrow_default_constructible) + (is_nothrow_copy_constructible, is_nothrow_move_constructible): + Adjust base-specifiers to use __is_constructible_impl. + (__is_copy_assignable_impl, __is_move_assignable_impl) + (__is_nt_copy_assignable_impl, __is_nt_move_assignable_impl): + Remove class templates. + (__is_assignable_impl): New alias template. + (is_assignable, is_copy_assignable, is_move_assignable): + Adjust base-specifiers to use new alias template. + (is_nothrow_copy_assignable, is_nothrow_move_assignable): + Adjust base-specifiers to use existing alias template. + (__is_trivially_constructible_impl): New alias template. + (is_trivially_constructible, is_trivially_default_constructible) + (is_trivially_copy_constructible) + (is_trivially_move_constructible): Adjust base-specifiers to use + new alias template. + (__is_trivially_assignable_impl): New alias template. + (is_trivially_assignable, is_trivially_copy_assignable) + (is_trivially_move_assignable): Adjust base-specifier to use + new alias template. + (__add_lval_ref_t, __add_rval_ref_t): New alias templates. + (add_lvalue_reference, add_rvalue_reference): Use new alias + templates. + +2022-09-01 Jonathan Wakely + + * include/std/type_traits (__decay_selector): Add partial + specializations for array types. Only check for function types + when not dealing with an array. + (decay): Add partial specializations for reference types. + +2022-09-01 Jonathan Wakely + + * include/std/type_traits (is_lvalue_reference_v) + (is_rvalue_reference_v, is_reference_v, is_const_v) + (is_volatile_v): Define using partial specializations instead + of instantiating class templates. + +2022-09-01 Jonathan Wakely + + * include/std/type_traits (is_enum_v, is_class_v, is_union_v) + (is_empty_v, is_polymoprhic_v, is_abstract_v, is_final_v) + (is_base_of_v, is_aggregate_v): Use built-in directly instead of + instantiating class template. + +2022-09-01 Jonathan Wakely + + * include/std/type_traits (is_scoped_enum): Remove workaround. + +2022-09-01 Patrick Palka + + * include/std/ranges (__detail::__unarize): Define. + (adjacent_view::_Iterator): Befriend adjacent_transform_view. + (adjacent_transform_view): Define. + (adjacent_transform_view::_Iterator): Define. + (adjacent_transform_view::_Sentinel): Define. + (views::__detail::__can_adjacent_transform_view): Define. + (views::_AdjacentTransform): Define. + (views::adjacent_transform): Define. + (views::pairwise_transform): Define. + * testsuite/std/ranges/adaptors/adjacent_transform/1.cc: New test. + +2022-09-01 Jonathan Wakely + + * include/std/type_traits (__is_array_known_bounds): Add partial + specialization instead of using std::extent. + (__is_array_unknown_bounds): Likewise. + (extent): Add partial specializations to stop recursion after + the result is found. + (is_array_v): Add partial specializations instead of + instantiating the class template. + (rank_v, extent_v): Likewise. + (is_bounded_array_v, is_unbounded_array_v): Likewise. + (is_bounded_array, is_unbounded_array): Define in terms of the + variable templates. + 2022-08-31 Patrick Palka * include/bits/ranges_base.h (__advance_fn::operator()): Add