From 80909529c9a2fc0aa0ccc285da2c9cc233c04aa7 Mon Sep 17 00:00:00 2001 From: GCC Administrator Date: Thu, 17 Nov 2022 00:16:52 +0000 Subject: [PATCH] Daily bump. --- gcc/ChangeLog | 118 ++++++++++++++++++++++++++++++++++++++ gcc/DATESTAMP | 2 +- gcc/analyzer/ChangeLog | 55 ++++++++++++++++++ gcc/c-family/ChangeLog | 17 ++++++ gcc/cp/ChangeLog | 63 +++++++++++++++++++++ gcc/fortran/ChangeLog | 18 ++++++ gcc/testsuite/ChangeLog | 147 ++++++++++++++++++++++++++++++++++++++++++++++++ libatomic/ChangeLog | 4 ++ libgomp/ChangeLog | 6 ++ libstdc++-v3/ChangeLog | 78 +++++++++++++++++++++++++ 10 files changed, 507 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 06d4dad..fdc9d75 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,121 @@ +2022-11-16 Marek Polacek + + PR c++/106649 + * doc/invoke.texi: Document -Winvalid-constexpr. + +2022-11-16 Philipp Tomsich + + * config/riscv/bitmanip.md: Add split covering + "(a & (1 << BIT_NO)) ? 0 : 1". + +2022-11-16 Philipp Tomsich + + * config/riscv/bitmanip.md (*bext): Add an additional + pattern that allows the 3rd argument to zero_extract to be + an Xmode register operand. + +2022-11-16 Richard Biener + + PR tree-optimization/107686 + * tree-ssa-forwprop.cc (optimize_vector_load): Restrict + VEC_UNPACK support to integral typed bitfield refs. + +2022-11-16 Richard Biener + + PR middle-end/107679 + * tree-into-ssa.cc (maybe_register_def): Use new temporary if + we require an uninitialized value for a parameter decl. + +2022-11-16 Alexander Monakov + + PR target/107676 + * doc/invoke.texi (-mrelax-cmpxchg-loop): Reword description. + +2022-11-16 Alexander Monakov + + PR target/87832 + * config/i386/znver.md: (znver1_fp_op_mul): Correct cycles in + the reservation. + (znver1_fp_op_mul_load): Ditto. + (znver1_mmx_mul): Ditto. + (znver1_mmx_load): Ditto. + (znver1_ssemul_ss_ps): Ditto. + (znver1_ssemul_ss_ps_load): Ditto. + (znver1_ssemul_avx256_ps): Ditto. + (znver1_ssemul_avx256_ps_load): Ditto. + (znver1_ssemul_sd_pd): Ditto. + (znver1_ssemul_sd_pd_load): Ditto. + (znver2_ssemul_sd_pd): Ditto. + (znver2_ssemul_sd_pd_load): Ditto. + (znver1_ssemul_avx256_pd): Ditto. + (znver1_ssemul_avx256_pd_load): Ditto. + (znver1_sseimul): Ditto. + (znver1_sseimul_avx256): Ditto. + (znver1_sseimul_load): Ditto. + (znver1_sseimul_avx256_load): Ditto. + (znver1_sseimul_di): Ditto. + (znver1_sseimul_load_di): Ditto. + +2022-11-16 Alexander Monakov + + PR target/87832 + * config/i386/znver.md (znver1_fdiv): New automaton. + (znver1-fdiv): New unit. + (znver1_fp_op_div): Correct unit and cycles in the reservation. + (znver1_fp_op_div_load): Ditto. + (znver1_fp_op_idiv_load): Ditto. + (znver2_fp_op_idiv_load): Ditto. + (znver1_ssediv_ss_ps): Ditto. + (znver1_ssediv_ss_ps_load): Ditto. + (znver1_ssediv_sd_pd): Ditto. + (znver1_ssediv_sd_pd_load): Ditto. + (znver1_ssediv_avx256_ps): Ditto. + (znver1_ssediv_avx256_ps_load): Ditto. + (znver1_ssediv_avx256_pd): Ditto. + (znver1_ssediv_avx256_pd_load): Ditto. + +2022-11-16 Tobias Burnus + Andrew Stubbs + + * config/gcn/gcn-builtins.def (KERNARG_PTR): Add. + * config/gcn/gcn.cc (gcn_init_builtin_types): Change siptr_type_node, + sfptr_type_node and voidptr_type_node from FLAT to ADDR_SPACE_DEFAULT. + (gcn_expand_builtin_1): Handle GCN_BUILTIN_KERNARG_PTR. + (gcn_oacc_dim_size): Return in ADDR_SPACE_FLAT. + +2022-11-16 David Malcolm + + * Makefile.in (ANALYZER_OBJS): Add analyzer/checker-event.o. + +2022-11-16 Max Filippov + + PR target/107645 + * config/m68k/predicates.md (symbolic_operand): Return false + when UNSPEC is under the CONST node. + +2022-11-16 Christoph Müllner + + * doc/invoke.texi: Fix PRU/RISC-V option list formatting. + +2022-11-16 Tobias Burnus + + * config/nvptx/mkoffload.cc (process): Recognize '$nohost$...' + besides tailing '$nohost' as being for reverse offload. + +2022-11-16 Jakub Jelinek + + PR tree-optimization/107668 + * range-op-float.cc (float_binary_op_range_finish): Set VARYING + also when r is UNDEFINED. + +2022-11-16 Kewen Lin + + PR rtl-optimization/90259 + * function.cc (rest_of_handle_thread_prologue_and_epilogue): Add + parameter fun, and call function purge_all_dead_edges. + (pass_thread_prologue_and_epilogue::execute): Name unamed parameter + as fun, and use it for rest_of_handle_thread_prologue_and_epilogue. + 2022-11-15 Philipp Tomsich * config/riscv/riscv-builtins.cc (struct riscv_builtin_description): diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index c559bd9..3204c3c 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20221116 +20221117 diff --git a/gcc/analyzer/ChangeLog b/gcc/analyzer/ChangeLog index a8b4312..1fab4d0 100644 --- a/gcc/analyzer/ChangeLog +++ b/gcc/analyzer/ChangeLog @@ -1,3 +1,58 @@ +2022-11-16 David Malcolm + + PR analyzer/107711 + * analyzer-language.cc: Include "diagnostic.h". + (maybe_stash_named_constant): Add logger param and use it to log + the name being looked up, and the result. + (stash_named_constants): New, splitting out from... + (on_finish_translation_unit): ...this function. Call + get_or_create_logfile and use the result to create a logger + instance, passing it to stash_named_constants. + * analyzer.h (get_or_create_any_logfile): New decl. + * engine.cc (dump_fout, owns_dump_fout): New globals, split out + from run_checkers. + (get_or_create_any_logfile): New function, split out from... + (run_checkers): ...here, so that the logfile can be opened by + on_finish_translation_unit. Clear the globals when closing the + dump file. + +2022-11-16 David Malcolm + + * analyzer.h (known_function::matches_call_types_p): New vfunc. + (known_function::impl_call_pre): Provide base implementation. + (known_function::impl_call_post): New vfunc. + (register_known_functions): New. + * engine.cc (impl_run_checkers): Call register_known_functions. + * region-model-impl-calls.cc (region_model::impl_call_accept): + Convert to... + (class known_function_accept): ...this. + (region_model::impl_call_bind): Convert to... + (class known_function_bind): ...this. + (region_model::impl_call_connect): Convert to... + (class known_function_connect): ...this. + (region_model::impl_call_listen): Convert to... + (class known_function_listen): ...this. + (region_model::impl_call_socket): Convert to... + (class known_function_socket): ...this. + (register_known_functions): New. + * region-model.cc (region_model::on_call_pre): Remove special + case for "bind" in favor of the known_function-handling dispatch. + Add call to known_function::matches_call_types_p to latter. + (region_model::on_call_post): Remove special cases for "accept", + "bind", "connect", "listen", and "socket" in favor of dispatch + to known_function::impl_call_post. + * region-model.h (region_model::impl_call_accept): Delete decl. + (region_model::impl_call_bind): Delete decl. + (region_model::impl_call_connect): Delete decl. + (region_model::impl_call_listen): Delete decl. + (region_model::impl_call_socket): Delete decl. + * sm-fd.cc: Update comments. + +2022-11-16 David Malcolm + + * checker-event.cc: New file, split out from... + * checker-path.cc: ...this file. + 2022-11-15 David Malcolm PR analyzer/106140 diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog index 76ca2aa..69695c6 100644 --- a/gcc/c-family/ChangeLog +++ b/gcc/c-family/ChangeLog @@ -1,3 +1,20 @@ +2022-11-16 Marek Polacek + + PR c++/106649 + * c-cppbuiltin.cc (c_cpp_builtins): Update value of __cpp_constexpr for + C++23. + * c-opts.cc (c_common_post_options): Set warn_invalid_constexpr + depending on cxx_dialect. + * c.opt (Winvalid-constexpr): New option. + +2022-11-16 Jakub Jelinek + + * c-common.def (CONCEPT_DECL): New tree, moved here from + cp-tree.def. + * c-common.cc (c_common_init_ts): Handle CONCEPT_DECL. + * c-attribs.cc (handle_deprecated_attribute): Allow deprecated + attribute on CONCEPT_DECL. + 2022-11-15 Lewis Hyatt * c-opts.cc (c_finish_options): Use special_fname_builtin () rather diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 70aac60..faf4c21f 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,66 @@ +2022-11-16 Marek Polacek + + PR c++/106649 + * constexpr.cc (constexpr_error): New function. + (is_valid_constexpr_fn): Use constexpr_error. + (maybe_save_constexpr_fundef): Call + require_potential_rvalue_constant_expression_fncheck rather than + require_potential_rvalue_constant_expression. Register the + function if -Wno-invalid-constexpr was specified. + (explain_invalid_constexpr_fn): Don't return early if a function marked + 'constexpr' that isn't actually a constant expression was called. + (non_const_var_error): Add a bool parameter. Use constexpr_error. + (inline_asm_in_constexpr_error): Likewise. + (cxx_eval_constant_expression): Adjust calls to non_const_var_error + and inline_asm_in_constexpr_error. + (potential_constant_expression_1): Add a bool parameter. Use + constexpr_error. + (require_potential_rvalue_constant_expression_fncheck): New function. + * cp-tree.h (require_potential_rvalue_constant_expression_fncheck): + Declare. + * method.cc (struct comp_info): Call + require_potential_rvalue_constant_expression_fncheck rather than + require_potential_rvalue_constant_expression. + +2022-11-16 Jakub Jelinek + + * typeck.cc (next_common_initial_sequence): Return false members have + different DECL_ALIGN. + (layout_compatible_type_p): Don't test TYPE_ALIGN of ENUMERAL_TYPE + or CLASS_TYPE_P. + +2022-11-16 Jakub Jelinek + + PR c++/107624 + * call.cc (keep_unused_object_arg): New function. + (build_op_call): Use it. + (build_op_subscript): Likewise. + (build_new_op): Similarly for ARRAY_REF. + (build_new_method_call): Use it. + * decl.cc (grok_op_properties): For C++20 and earlier, if operator[] + is static member function, require exactly one parameter rather than + exactly two parameters. + +2022-11-16 Jakub Jelinek + + * typeck.cc (cp_build_modify_expr): Implement CWG 2654 + - Un-deprecation of compound volatile assignments. Remove + -Wvolatile warning about compound volatile assignments. + +2022-11-16 Jakub Jelinek + + * cp-tree.def (CONCEPT_DECL): Move to c-common.def. + * cp-objcp-common.cc (cp_common_init_ts): Don't handle CONCEPT_DECL + here. + * cp-tree.h (finish_concept_definition): Add ATTRS parameter. + * parser.cc (cp_parser_concept_definition): Parse attributes in + between identifier and =. Adjust finish_concept_definition + caller. + * pt.cc (finish_concept_definition): Add ATTRS parameter. Call + cplus_decl_attributes. + * constraint.cc (build_standard_check): If CONCEPT_DECL is + TREE_DEPRECATED, emit -Wdeprecated-declaration warnings. + 2022-11-15 Marek Polacek PR c++/107492 diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index d8bf128..6c3ace1 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,21 @@ +2022-11-16 Steve Kargl + + PR fortran/107707 + * interface.cc (gfc_compare_actual_formal): Check that we actually + have integer values before asking gmp_* to use them. + +2022-11-16 Harald Anlauf + + PR fortran/107681 + * resolve.cc (resolve_fl_var_and_proc): Prevent NULL pointer + dereference with reference to bad CLASS variable. + +2022-11-16 Harald Anlauf + + PR fortran/107680 + * arith.cc (arith_power): Check that operands are properly converted + before attempting to simplify. + 2022-11-15 Lewis Hyatt * cpp.cc (gfc_cpp_init): Use special_fname_builtin () rather than a diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 41fdbc4..fd48834 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,150 @@ +2022-11-16 David Malcolm + + * gcc.dg/analyzer/named-constants-via-command-line.c: New test. + * gcc.dg/analyzer/named-constants-via-macros-3.c: New test. + * gcc.dg/analyzer/named-constants-via-macros-4.c: New test. + * gcc.dg/analyzer/named-constants-via-macros-empty.c: New test. + * gcc.dg/analyzer/named-constants-via-macros-gc.c: New test. + * gcc.dg/analyzer/named-constants-via-macros-traditional.c: New test. + * gcc.dg/analyzer/named-constants-via-macros-undef.c: New test. + +2022-11-16 David Malcolm + + PR analyzer/107711 + * gcc.dg/analyzer/fdump-analyzer-1.c: New test. + +2022-11-16 Steve Kargl + + PR fortran/107707 + * gfortran.dg/pr107707.f90: New test. + +2022-11-16 Marek Polacek + + PR c++/106649 + * g++.dg/cpp0x/constexpr-ctor2.C: Expect an error in c++20_down only. + * g++.dg/cpp0x/constexpr-default-ctor.C: Likewise. + * g++.dg/cpp0x/constexpr-diag3.C: Likewise. + * g++.dg/cpp0x/constexpr-ex1.C: Likewise. + * g++.dg/cpp0x/constexpr-friend.C: Likewise. + * g++.dg/cpp0x/constexpr-generated1.C: Likewise. + * g++.dg/cpp0x/constexpr-ice5.C: Likewise. + * g++.dg/cpp0x/constexpr-ice6.C: Likewise. + * g++.dg/cpp0x/constexpr-memfn1.C: Likewise. + * g++.dg/cpp0x/constexpr-neg2.C: Likewise. + * g++.dg/cpp0x/constexpr-non-const-arg.C: Likewise. + * g++.dg/cpp0x/constexpr-reinterpret1.C: Likewise. + * g++.dg/cpp0x/pr65327.C: Likewise. + * g++.dg/cpp1y/constexpr-105050.C: Likewise. + * g++.dg/cpp1y/constexpr-89285-2.C: Likewise. + * g++.dg/cpp1y/constexpr-89285.C: Likewise. + * g++.dg/cpp1y/constexpr-89785-2.C: Likewise. + * g++.dg/cpp1y/constexpr-neg1.C: Likewise. + * g++.dg/cpp1y/constexpr-nsdmi7b.C: Likewise. + * g++.dg/cpp1y/constexpr-throw.C: Likewise. + * g++.dg/cpp23/constexpr-nonlit3.C: Remove dg-error. + * g++.dg/cpp23/constexpr-nonlit6.C: Call the test functions. + * g++.dg/cpp23/feat-cxx2b.C: Adjust the expected value of + __cpp_constexpr. + * g++.dg/cpp2a/consteval3.C: Remove dg-error. + * g++.dg/cpp2a/constexpr-new7.C: Expect an error in c++20_down only. + * g++.dg/cpp2a/constexpr-try5.C: Remove dg-error. + * g++.dg/cpp2a/spaceship-constexpr1.C: Expect an error in c++20_down + only. + * g++.dg/cpp2a/spaceship-eq3.C: Likewise. + * g++.dg/diagnostic/constexpr1.C: Remove dg-error. + * g++.dg/gomp/pr79664.C: Use -Winvalid-constexpr -pedantic-errors. + * g++.dg/ubsan/vptr-4.C: Likewise. + * g++.dg/cpp23/constexpr-nonlit10.C: New test. + * g++.dg/cpp23/constexpr-nonlit11.C: New test. + * g++.dg/cpp23/constexpr-nonlit12.C: New test. + * g++.dg/cpp23/constexpr-nonlit13.C: New test. + * g++.dg/cpp23/constexpr-nonlit14.C: New test. + * g++.dg/cpp23/constexpr-nonlit15.C: New test. + * g++.dg/cpp23/constexpr-nonlit16.C: New test. + * g++.dg/cpp23/constexpr-nonlit8.C: New test. + * g++.dg/cpp23/constexpr-nonlit9.C: New test. + +2022-11-16 Harald Anlauf + + PR fortran/107681 + * gfortran.dg/pr107681.f90: New test. + +2022-11-16 Harald Anlauf + + PR fortran/107680 + * gfortran.dg/pr107680.f90: New test. + +2022-11-16 Philipp Tomsich + + * gcc.target/riscv/zbs-bext.c: Add testcases. + * gcc.target/riscv/zbs-bexti.c: Add testcases. + +2022-11-16 Philipp Tomsich + + * gcc.target/riscv/zbs-bext.c: Add testcases. + * gcc.target/riscv/zbs-bexti.c: Add testcases. + +2022-11-16 Hans-Peter Nilsson + + * lib/gcc-dg.exp (gcc-transform-out-of-tree): New proc. + * g++.dg/gcov/gcov.exp, gcc.misc-tests/gcov.exp: Call + gcc-transform-out-of-tree instead of transform. + +2022-11-16 Richard Biener + + PR tree-optimization/107686 + * gcc.dg/pr107686.c: New testcase. + +2022-11-16 Richard Biener + + PR middle-end/107679 + * gfortran.dg/pr107679.f90: New testcase. + +2022-11-16 Jakub Jelinek + + * g++.dg/cpp2a/is-layout-compatible3.C: Expect enums with different + alignas to be layout compatible, while classes with different + alignas on members layout incompatible. + * g++.dg/DRs/dr2583.C: New test. + +2022-11-16 Jakub Jelinek + + PR c++/107624 + * g++.dg/cpp23/static-operator-call4.C: New test. + * g++.dg/cpp23/subscript10.C: New test. + * g++.dg/cpp23/subscript11.C: New test. + +2022-11-16 David Malcolm + + * gcc.dg/plugin/analyzer_kernel_plugin.c + (copy_across_boundary_fn::matches_call_types_p): New. + * gcc.dg/plugin/analyzer_known_fns_plugin.c + (known_function_returns_42::matches_call_types_p): New. + (known_function_attempt_to_copy::matches_call_types_p): New. + +2022-11-16 Jakub Jelinek + + * g++.dg/cpp2a/volatile1.C (fn2, fn3, racoon): Adjust expected + diagnostics. + * g++.dg/cpp2a/volatile3.C (fn2, fn3, racoon): Likewise. + * g++.dg/cpp2a/volatile5.C (f): Likewise. + * g++.dg/ext/vector25.C (foo): Don't expect a warning. + * g++.dg/cpp1y/new1.C (test_unused): Likewise. + +2022-11-16 Jakub Jelinek + + * g++.dg/cpp2a/concepts-dr2428.C: New test. + +2022-11-16 Jakub Jelinek + + PR tree-optimization/107668 + * gcc.dg/ubsan/pr107668.c: New test. + +2022-11-16 Kewen Lin + + PR rtl-optimization/90259 + * g++.target/powerpc/pr90259.C: New. + 2022-11-15 Marek Polacek PR c++/107492 diff --git a/libatomic/ChangeLog b/libatomic/ChangeLog index ceefbd3..7daea0d 100644 --- a/libatomic/ChangeLog +++ b/libatomic/ChangeLog @@ -1,3 +1,7 @@ +2022-11-16 Martin Liska + + * Makefile.in: Re-generate. + 2022-11-15 Wilco Dijkstra * Makefile.in: Regenerated with automake 1.15.1. diff --git a/libgomp/ChangeLog b/libgomp/ChangeLog index 3d388a5..78ed9e1 100644 --- a/libgomp/ChangeLog +++ b/libgomp/ChangeLog @@ -1,3 +1,9 @@ +2022-11-16 Tobias Burnus + Andrew Stubbs + + * config/gcn/team.c (gomp_gcn_enter_kernel): Use + __builtin_gcn_kernarg_ptr instead of asm ("s8"). + 2022-11-14 Martin Liska Revert: diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 5fa0cea..08c5bc3 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,81 @@ +2022-11-16 Jonathan Wakely + + PR libstdc++/107720 + * include/std/format (__format::_Arg_t): Fix typo in enumerator + name. + (_Arg_value::_S_get): Fix missing semi-colons. + +2022-11-16 Jonathan Wakely + + * include/std/chrono (get_leap_second_info): Optimize. + +2022-11-16 Jonathan Wakely + + PR libstdc++/107712 + * include/std/format (__format::__formatter_int::format): Use + std::toupper when __builtin_toupper isn't available. + (basic_format_arg::handle): Add 'typename'. + * include/std/complex (complex): Add 'typename'. + +2022-11-16 Jonathan Wakely + + * include/std/format [__FLT128_DIG__] (_GLIBCXX_FORMAT_F128): + Only support formatting _Float128 when glibc provides the + functionality needed for accurate std::to_chars. + +2022-11-16 Jonathan Wakely + + * testsuite/std/time/clock/utc/1.cc: Check handling across leap + second insertion. + +2022-11-16 Patrick Palka + + PR libstdc++/107701 + * include/std/iostream (__ioinit): Adjust comment. + * src/c++98/globals_io.cc: Include "io_base_init.h" here + instead of ... + * src/c++98/ios_init.cc: ... here. + * src/c++98/ios_base_init.h (__ioinit): More comments. + * testsuite/17_intro/static.cc: dg-do run instead of just link. + +2022-11-16 Jakub Jelinek + Jonathan Wakely + + PR libstdc++/107649 + * include/std/complex (__complex_abs, __complex_arg, __complex_cos, + __complex_cosh, __complex_exp, __complex_log, __complex_sin, + __complex_sinh, __complex_sqrt, __complex_tan, __complex_tanh, + __complex_pow): Move __complex__ _Float{16,32,64,128} and + __complex__ decltype(0.0bf16) overloads earlier in the file. + (complex): Fix up requires on the partial specialization for extended + float types. + (__complex_acos, __complex_asin, __complex_atan, __complex_acosh, + __complex_asinh, __complex_atanh): Move + __complex__ _Float{16,32,64,128} and __complex__ decltype(0.0bf16) + overloads earlier in the file. + +2022-11-16 Jonathan Wakely + + * python/libstdcxx/v6/printers.py (StdExpAnyPrinter): Make + expansion of std::string in manager name more robust. + +2022-11-16 Jonathan Wakely + + * python/libstdcxx/v6/printers.py (is_specialization_of): Fix + incorrect terminology in docstring and describe arguments. + (FilteringTypePrinter): Add default argument for new parameter, + enhance docstring. + +2022-11-16 François Dumont + + * python/libstdcxx/v6/printers.py (FilteringTypePrinter): Rename 'match' field + 'template'. Add self.targ1 to specify the first template parameter of the instantiation + to match. + (add_one_type_printer): Add targ1 optional parameter, default to None. + Use gdb.types.get_basic_type to compare the type to recognize and the type + returned from the typedef lookup. + (register_type_printers): Adapt calls to add_one_type_printers. + 2022-11-15 Jonathan Wakely * testsuite/std/format/functions/format.cc: Do not use -- 2.7.4