https://gcc.gnu.org/g:e7f6a5dc4af7d0e3cf73262534d8676424e960d8
commit r15-2425-ge7f6a5dc4af7d0e3cf73262534d8676424e960d8 Author: GCC Administrator <gccadmin@gcc.gnu.org> Date: Wed Jul 31 00:19:44 2024 +0000 Daily bump. Diff: --- gcc/ChangeLog | 102 ++++++++++++++++++++++++ gcc/DATESTAMP | 2 +- gcc/c-family/ChangeLog | 4 + gcc/cp/ChangeLog | 20 +++++ gcc/testsuite/ChangeLog | 208 ++++++++++++++++++++++++++++++++++++++++++++++++ libbacktrace/ChangeLog | 6 ++ libstdc++-v3/ChangeLog | 68 ++++++++++++++++ 7 files changed, 409 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index cffd5e4b3791..197667960b60 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,105 @@ +2024-07-30 Edwin Lu <e...@rivosinc.com> + + * common/config/riscv/riscv-common.cc (riscv_subset_list::to_string): + Skip b in march string + * config.in: Regenerate. + * configure: Regenerate. + * configure.ac: Add B assembler check + +2024-07-30 Filip Kastl <fka...@suse.cz> + + * tree-switch-conversion.cc (can_log2): New static function to + check if gen_log2 can be used on current target. + (gen_log2): New static function to generate efficient GIMPLE + code for taking an exact base 2 log. + (gen_pow2p): New static function to generate efficient GIMPLE + code for checking if a value is a power of 2. + (switch_conversion::switch_conversion): Track if the + transformation happened. + (switch_conversion::is_exp_index_transform_viable): New function + to decide whether the transformation should be applied. + (switch_conversion::exp_index_transform): New function to + execute the transformation. + (switch_conversion::gen_inbound_check): Don't remove the default + BB if the transformation happened. + (switch_conversion::expand): Execute the transform if it is + viable. Skip the "sufficiently small case range" test if the + transformation is going to be executed. + * tree-switch-conversion.h: Add is_exp_index_transform_viable + and exp_index_transform. + +2024-07-30 Gianluca Guida <gianl...@rivosinc.com> + Patrick O'Neill <patr...@rivosinc.com> + + * common/config/riscv/riscv-common.cc: Add zacas extension. + * config/riscv/arch-canonicalize: Make zacas imply zaamo. + * config/riscv/riscv.opt: Add zacas. + * config/riscv/sync.md (zacas_atomic_cas_value<mode>): New pattern. + (atomic_compare_and_swap<mode>): Use new pattern for compare-and-swap ops. + (zalrsc_atomic_cas_value_strong<mode>): Rename atomic_cas_value_strong. + * doc/sourcebuild.texi: Add Zacas documentation. + +2024-07-30 Patrick O'Neill <patr...@rivosinc.com> + + * common/config/riscv/riscv-common.cc + (riscv_subset_list::to_string): Remove zabha configure check + handling and clarify zaamo/zalrsc comment. + * config.in: Regenerate. + * configure: Regenerate. + * configure.ac: Remove zabha configure check. + +2024-07-30 Jennifer Schmitz <jschm...@nvidia.com> + + * config/aarch64/aarch64-sve-builtins-base.cc (svdiv_impl::fold): + Implement strength reduction. + +2024-07-30 Georg-Johann Lay <a...@gjlay.de> + + * doc/extend.texi (AVR Function Attributes): Propose to use + attribute signal(n) via AVR-LibC's ISR_N from avr/interrupt.h + +2024-07-30 Pan Li <pan2...@intel.com> + + * config/riscv/riscv.cc (riscv_expand_ussub): Promote to Xmode + instead of Pmode. + +2024-07-30 Takayuki 'January June' Suwa <jjsuwa_sys3...@yahoo.co.jp> + + * config/xtensa/xtensa.cc (xtensa_insn_cost): + Add a case statement for TYPE_FARITH. + +2024-07-30 Takayuki 'January June' Suwa <jjsuwa_sys3...@yahoo.co.jp> + + * config/xtensa/xtensa.md (movsf_internal): + Reorder alternative that corresponds to L32R machine instruction, + and prefix alternatives that correspond to LSI/SSI instructions + with the constraint character '^' so that they are disparaged by + reload/LRA. + +2024-07-30 Takayuki 'January June' Suwa <jjsuwa_sys3...@yahoo.co.jp> + + * config/xtensa/xtensa-protos.h (xtensa_expand_call): + Remove the third argument. + * config/xtensa/xtensa.cc (xtensa_expand_call): + Remove the third argument and the code that uses it. + * config/xtensa/xtensa.md (call, call_value, sibcall, sibcall_value): + Remove each Boolean constant specified in the third argument of + xtensa_expand_call. + (sibcall_epilogue): Add emitting '(use A0_REG)' after calling + xtensa_expand_epilogue. + +2024-07-30 liuhongt <hongtao....@intel.com> + + PR target/116043 + * config/i386/constraints.md (Bk): Refine to + define_special_memory_constraint. + +2024-07-30 Haochen Jiang <haochen.ji...@intel.com> + + * config/i386/prfchiintrin.h + (_m_prefetchit0): Add macro for non-optimized option. + (_m_prefetchit1): Ditto. + 2024-07-30 Takayuki 'January June' Suwa <jjsuwa_sys3...@yahoo.co.jp> * config/xtensa/predicates.md diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index d42ae94bcd37..e2dab5541a03 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20240730 +20240731 diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog index daca845240e4..f91f1bb6379c 100644 --- a/gcc/c-family/ChangeLog +++ b/gcc/c-family/ChangeLog @@ -1,3 +1,7 @@ +2024-07-30 Paul-Antoine Arras <par...@baylibre.com> + + * c-format.cc (gcc_gfc_char_table): Add formats for tree objects. + 2024-07-23 Andi Kleen <a...@linux.intel.com> * c-attribs.cc (set_musttail_on_return): New function. diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 1d71bd487426..e05e79d50139 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,23 @@ +2024-07-30 Arsen Arsenović <ar...@aarsen.me> + + PR c++/115906 + * parser.cc (cp_parser_unary_expression): Reject await + expressions if use of local variables is currently forbidden. + (cp_parser_yield_expression): Reject yield expressions if use of + local variables is currently forbidden. + +2024-07-30 Arsen Arsenovic <ar...@aarsen.me> + + PR c++/115906 + * coroutines.cc (register_local_var_uses): Only process + PARM_DECL and VAR_DECLs. + +2024-07-30 Arsen Arsenović <ar...@aarsen.me> + + PR c++/110855 + * cp-gimplify.cc (fold_builtin_source_location): Use the name of + the DECL_RAMP_FN of the current function if present. + 2024-07-29 Patrick Palka <ppa...@redhat.com> PR c++/88313 diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 0080c4127793..5afe9167ef9d 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,211 @@ +2024-07-30 Sam James <s...@gentoo.org> + + PR target/68015 + PR c++/83979 + * c-c++-common/goacc/loop-shape.c: Fix 'dg-compile' typo. + * g++.dg/pr83979.C: Likewise. + * g++.target/aarch64/sve/acle/general-c++/attributes_2.C: Likewise. + * gcc.dg/tree-ssa/builtin-sprintf-7.c: Likewise. + * gcc.dg/tree-ssa/builtin-sprintf-8.c: Likewise. + * gcc.target/riscv/amo/zabha-rvwmo-all-amo-ops-char.c: Likewise. + * gcc.target/riscv/amo/zabha-rvwmo-all-amo-ops-short.c: Likewise. + * gcc.target/s390/20181024-1.c: Likewise. + * gcc.target/s390/addr-constraints-1.c: Likewise. + * gcc.target/s390/arch12/aghsghmgh-1.c: Likewise. + * gcc.target/s390/arch12/mul-1.c: Likewise. + * gcc.target/s390/arch13/bitops-1.c: Likewise. + * gcc.target/s390/arch13/bitops-2.c: Likewise. + * gcc.target/s390/arch13/fp-signedint-convert-1.c: Likewise. + * gcc.target/s390/arch13/fp-unsignedint-convert-1.c: Likewise. + * gcc.target/s390/arch13/popcount-1.c: Likewise. + * gcc.target/s390/pr68015.c: Likewise. + * gcc.target/s390/vector/fp-signedint-convert-1.c: Likewise. + * gcc.target/s390/vector/fp-unsignedint-convert-1.c: Likewise. + * gcc.target/s390/vector/reverse-elements-1.c: Likewise. + * gcc.target/s390/vector/reverse-elements-2.c: Likewise. + * gcc.target/s390/vector/reverse-elements-3.c: Likewise. + * gcc.target/s390/vector/reverse-elements-4.c: Likewise. + * gcc.target/s390/vector/reverse-elements-5.c: Likewise. + * gcc.target/s390/vector/reverse-elements-6.c: Likewise. + * gcc.target/s390/vector/reverse-elements-7.c: Likewise. + * gnat.dg/alignment15.adb: Likewise. + * gnat.dg/debug4.adb: Likewise. + * gnat.dg/inline21.adb: Likewise. + * gnat.dg/inline22.adb: Likewise. + * gnat.dg/opt37.adb: Likewise. + * gnat.dg/warn13.adb: Likewise. + +2024-07-30 Uros Bizjak <ubiz...@gmail.com> + + PR target/51492 + * gcc.target/i386/pr51492.c: New test. + +2024-07-30 Sam James <s...@gentoo.org> + + PR middle-end/54400 + PR target/98161 + * gcc.dg/vect/bb-slp-layout-18.c: Fix whitespace in dg directive. + * gcc.dg/vect/bb-slp-pr54400.c: Likewise. + * gcc.target/i386/pr98161.c: Likewise. + +2024-07-30 Filip Kastl <fka...@suse.cz> + + * gcc.dg/tree-ssa/switch-3.c: Disable switch conversion. + * gcc.target/i386/switch-exp-transform-1.c: New test. + * gcc.target/i386/switch-exp-transform-2.c: New test. + * gcc.target/i386/switch-exp-transform-3.c: New test. + +2024-07-30 Sam James <s...@gentoo.org> + + * gcc.target/aarch64/simd/vmmla.c: Fix whitespace in dg directive. + +2024-07-30 Sam James <s...@gentoo.org> + + PR preprocessor/90581 + * c-c++-common/cpp/fmax-include-depth.c: Fix whitespace in dg directive. + +2024-07-30 Sam James <s...@gentoo.org> + + PR rtl-optimization/48633 + PR tree-optimization/83072 + PR tree-optimization/83073 + PR tree-optimization/96542 + PR tree-optimization/96707 + PR tree-optimization/97567 + PR target/69225 + PR target/89929 + PR target/96562 + * g++.dg/pr48633.C: Fix whitespace in dg directive. + * g++.dg/pr96707.C: Likewise. + * g++.target/i386/mv28.C: Likewise. + * gcc.dg/Warray-bounds-flex-arrays-1.c: Likewise. + * gcc.dg/pr83072-2.c: Likewise. + * gcc.dg/pr83073.c: Likewise. + * gcc.dg/pr96542.c: Likewise. + * gcc.dg/pr97567-2.c: Likewise. + * gcc.target/i386/avx512fp16-11a.c: Likewise. + * gcc.target/i386/avx512fp16-13.c: Likewise. + * gcc.target/i386/avx512fp16-14.c: Likewise. + * gcc.target/i386/avx512fp16-conjugation-1.c: Likewise. + * gcc.target/i386/avx512fp16-neg-1a.c: Likewise. + * gcc.target/i386/avx512fp16-set1-pch-1a.c: Likewise. + * gcc.target/i386/avx512fp16vl-conjugation-1.c: Likewise. + * gcc.target/i386/avx512fp16vl-neg-1a.c: Likewise. + * gcc.target/i386/avx512fp16vl-set1-pch-1a.c: Likewise. + * gcc.target/i386/avx512vlfp16-11a.c: Likewise. + * gcc.target/i386/pr69225-1.c: Likewise. + * gcc.target/i386/pr69225-2.c: Likewise. + * gcc.target/i386/pr69225-3.c: Likewise. + * gcc.target/i386/pr69225-4.c: Likewise. + * gcc.target/i386/pr69225-5.c: Likewise. + * gcc.target/i386/pr69225-6.c: Likewise. + * gcc.target/i386/pr69225-7.c: Likewise. + * gcc.target/i386/pr96562-1.c: Likewise. + * gcc.target/riscv/rv32e_stack.c: Likewise. + * gfortran.dg/c-interop/removed-restrictions-3.f90: Likewise. + * gnat.dg/renaming1.adb: Likewise. + +2024-07-30 Gianluca Guida <gianl...@rivosinc.com> + Patrick O'Neill <patr...@rivosinc.com> + + * lib/target-supports.exp: Add zacas testsuite infra support. + * gcc.target/riscv/amo/zalrsc-rvwmo-compare-exchange-int-acquire-release.c: + Remove zacas to continue to test the lr/sc pairs. + * gcc.target/riscv/amo/zalrsc-rvwmo-compare-exchange-int-acquire.c: Ditto. + * gcc.target/riscv/amo/zalrsc-rvwmo-compare-exchange-int-consume.c: Ditto. + * gcc.target/riscv/amo/zalrsc-rvwmo-compare-exchange-int-relaxed.c: Ditto. + * gcc.target/riscv/amo/zalrsc-rvwmo-compare-exchange-int-release.c: Ditto. + * gcc.target/riscv/amo/zalrsc-rvwmo-compare-exchange-int-seq-cst-relaxed.c: Ditto. + * gcc.target/riscv/amo/zalrsc-rvwmo-compare-exchange-int-seq-cst.c: Ditto. + * gcc.target/riscv/amo/zalrsc-ztso-compare-exchange-int-acquire-release.c: Ditto. + * gcc.target/riscv/amo/zalrsc-ztso-compare-exchange-int-acquire.c: Ditto. + * gcc.target/riscv/amo/zalrsc-ztso-compare-exchange-int-consume.c: Ditto. + * gcc.target/riscv/amo/zalrsc-ztso-compare-exchange-int-relaxed.c: Ditto. + * gcc.target/riscv/amo/zalrsc-ztso-compare-exchange-int-release.c: Ditto. + * gcc.target/riscv/amo/zalrsc-ztso-compare-exchange-int-seq-cst-relaxed.c: Ditto. + * gcc.target/riscv/amo/zalrsc-ztso-compare-exchange-int-seq-cst.c: Ditto. + * gcc.target/riscv/amo/zabha-zacas-preferred-over-zalrsc.c: New test. + * gcc.target/riscv/amo/zacas-char-requires-zabha.c: New test. + * gcc.target/riscv/amo/zacas-char-requires-zacas.c: New test. + * gcc.target/riscv/amo/zacas-preferred-over-zalrsc.c: New test. + * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-char-acq-rel.c: New test. + * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-char-acquire.c: New test. + * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-char-relaxed.c: New test. + * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-char-release.c: New test. + * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-char-seq-cst.c: New test. + * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-compatability-mapping-no-fence.c: + New test. + * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-compatability-mapping.cc: New test. + * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-int-acq-rel.c: New test. + * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-int-acquire.c: New test. + * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-int-relaxed.c: New test. + * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-int-release.c: New test. + * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-int-seq-cst.c: New test. + * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-short-acq-rel.c: New test. + * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-short-acquire.c: New test. + * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-short-relaxed.c: New test. + * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-short-release.c: New test. + * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-short-seq-cst.c: New test. + * gcc.target/riscv/amo/zacas-ztso-compare-exchange-char-seq-cst.c: New test. + * gcc.target/riscv/amo/zacas-ztso-compare-exchange-char.c: New test. + * gcc.target/riscv/amo/zacas-ztso-compare-exchange-compatability-mapping-no-fence.c: + New test. + * gcc.target/riscv/amo/zacas-ztso-compare-exchange-compatability-mapping.cc: New test. + * gcc.target/riscv/amo/zacas-ztso-compare-exchange-int-seq-cst.c: New test. + * gcc.target/riscv/amo/zacas-ztso-compare-exchange-int.c: New test. + * gcc.target/riscv/amo/zacas-ztso-compare-exchange-short-seq-cst.c: New test. + * gcc.target/riscv/amo/zacas-ztso-compare-exchange-short.c: New test. + +2024-07-30 Arsen Arsenović <ar...@aarsen.me> + + PR c++/115906 + * g++.dg/coroutines/pr115906-yield.C: New test. + * g++.dg/coroutines/pr115906.C: New test. + * g++.dg/coroutines/co-await-syntax-02-outside-fn.C: Don't rely + on default arguments. + * g++.dg/coroutines/co-yield-syntax-01-outside-fn.C: Ditto. + +2024-07-30 Arsen Arsenovic <ar...@aarsen.me> + + PR c++/115906 + * g++.dg/coroutines/coro-function-decl.C: New test. + +2024-07-30 Jennifer Schmitz <jschm...@nvidia.com> + + * gcc.target/aarch64/sve/div_const_run.c: New test. + * gcc.target/aarch64/sve/acle/asm/div_s32.c: Likewise. + * gcc.target/aarch64/sve/acle/asm/div_s64.c: Likewise. + * gcc.target/aarch64/sve/acle/asm/div_u32.c: Likewise. + * gcc.target/aarch64/sve/acle/asm/div_u64.c: Likewise. + +2024-07-30 Arsen Arsenović <ar...@aarsen.me> + + PR c++/110855 + * g++.dg/coroutines/pr110855.C: New test. + +2024-07-30 Sam James <s...@gentoo.org> + + PR c/53548 + PR target/101529 + PR tree-optimization/102359 + * c-c++-common/fam-in-union-alone-in-struct-1.c: Fix whitespace in dg directive. + * c-c++-common/fam-in-union-alone-in-struct-2.c: Likewise. + * c-c++-common/torture/builtin-shufflevector-2.c: Likewise. + * g++.dg/pr102359_2.C: Likewise. + * g++.target/i386/mvc1.C: Likewise. + +2024-07-30 Tobias Burnus <tbur...@baylibre.com> + + * gfortran.dg/compiler-directive_2.f: Update dg-error. + +2024-07-30 liuhongt <hongtao....@intel.com> + + * gcc.target/i386/pr116043.c: New test. + +2024-07-30 Haochen Jiang <haochen.ji...@intel.com> + + * gcc.target/i386/prefetchi-1b.c: New test. + 2024-07-29 Sam James <s...@gentoo.org> PR ipa/111613 diff --git a/libbacktrace/ChangeLog b/libbacktrace/ChangeLog index 5aa070d31820..0a559eede03c 100644 --- a/libbacktrace/ChangeLog +++ b/libbacktrace/ChangeLog @@ -1,3 +1,9 @@ +2024-07-30 Ian Lance Taylor <i...@golang.org> + + * pecoff.c (LDR_DLL_NOTIFICATION): Put function modifier + inside parentheses. + (LDR_REGISTER_FUNCTION): Likewise. + 2024-07-18 Ian Lance Taylor <i...@golang.org> * internal.h: Use __has_attribute to check for fallthrough diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 66bb4d99db37..acfc04d83843 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,71 @@ +2024-07-30 Jonathan Wakely <jwak...@redhat.com> + + * include/bits/chrono_io.h (__local_time_fmt_for): New alias + template. + (formatter<zoned_time<D, P>>): Use __local_time_fmt_for. + * testsuite/std/time/zoned_time/io.cc: Check zoned_time<minutes> + can be formatted. + +2024-07-30 Jonathan Wakely <jwak...@redhat.com> + + * include/bits/chrono_io.h (__local_fmt_t): Remove unused + declaration. + (__formatter_chrono::_M_format_to_ostream): Add explicit + handling for specializations of __local_time_fmt, including the + time zone abbreviation in the output if __is_neg is true. + (formatter<chrono::tai_time<D>>::format): Add comment. + (formatter<chrono::gps_time<D>>::format): Likewise. + (formatter<chrono::__detail::__local_time_fmt::format): Call + _M_format with true for the __is_neg flag. + * testsuite/std/time/clock/gps/io.cc: Remove unused variable. + * testsuite/std/time/clock/local/io.cc: Fix test error that + checked tai_time instead of local_time. Add tests for + local-time-format-t formatting. + * testsuite/std/time/clock/system/io.cc: Check empty + chrono-specs. + * testsuite/std/time/clock/tai/io.cc: Likewise. + * testsuite/std/time/zoned_time/io.cc: Likewise. + +2024-07-30 Jonathan Wakely <jwak...@redhat.com> + + * include/std/expected (expected(U&&), operator=(U&&)) + (value_or): Use remove_cv_t on default template argument, as per + LWG 3886. + * include/std/optional (optional(U&&), operator=(U&&)) + (value_or): Likewise. + * testsuite/20_util/expected/lwg3886.cc: New test. + * testsuite/20_util/optional/cons/lwg3886.cc: New test. + +2024-07-30 Jonathan Wakely <jwak...@redhat.com> + + * src/c++17/fs_ops.cc: Fix file name in comment. + +2024-07-30 Jonathan Wakely <jwak...@redhat.com> + + * src/c++17/fs_ops.cc (auto_win_file_handle): Change constructor + parameter from const path& to const wchar_t*. + (fs::equiv_files): New function. + (fs::equivalent): Use equiv_files. + * src/filesystem/ops-common.h (fs::equiv_files): Declare. + (do_copy_file): Use equiv_files. + * src/filesystem/ops.cc (fs::equiv_files): Define. + (fs::copy, fs::equivalent): Use equiv_files. + * testsuite/27_io/filesystem/operations/copy.cc: Test + overwriting directory contents recursively. + * testsuite/27_io/filesystem/operations/copy_file.cc: Test + overwriting existing files. + +2024-07-30 Lennox Shou Hao Ho <lennox...@gmail.com> + + PR libstdc++/113663 + * src/c++17/fs_ops.cc (fs::equivalent): Moved helper class + auto_handle to anonymous namespace as auto_win_file_handle. + (fs::hard_link_count): Changed Windows implementation to use + information provided by GetFileInformationByHandle which is more + reliable. + * testsuite/27_io/filesystem/operations/hard_link_count.cc: New + test. + 2024-07-29 Thomas Schwinge <tschwi...@baylibre.com> * testsuite/lib/libstdc++.exp (file-io-diff): Polish.