https://gcc.gnu.org/g:c8cc686377f63f39c188661d6283637188046b48
commit r15-7298-gc8cc686377f63f39c188661d6283637188046b48 Author: GCC Administrator <gccadmin@gcc.gnu.org> Date: Fri Jan 31 00:17:28 2025 +0000 Daily bump. Diff: --- gcc/ChangeLog | 69 ++++++++++++++++++++++++++++++++++ gcc/DATESTAMP | 2 +- gcc/c/ChangeLog | 5 +++ gcc/cp/ChangeLog | 20 ++++++++++ gcc/fortran/ChangeLog | 99 +++++++++++++++++++++++++++++++++++++++++++++++++ gcc/testsuite/ChangeLog | 99 +++++++++++++++++++++++++++++++++++++++++++++++++ libbacktrace/ChangeLog | 8 ++++ libgcc/ChangeLog | 5 +++ libgomp/ChangeLog | 30 +++++++++++++++ libstdc++-v3/ChangeLog | 14 +++++++ 10 files changed, 350 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 76cad2c57889..6dd0da7cad69 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,72 @@ +2025-01-30 Georg-Johann Lay <a...@gjlay.de> + + * config/avr/builtins.def (STRLEN_FLASH, STRLEN_FLASHX) + (STRLEN_MEMX): New DEF_BUILTIN's. + * config/avr/avr.cc (avr_ftype_strlen): New static function. + (avr_builtin_supported_p): New built-ins are not for AVR_TINY. + (avr_init_builtins) <strlen_flash_node, strlen_flashx_node, + strlen_memx_node>: Provide new fntypes. + (avr_fold_builtin) [AVR_BUILTIN_STRLEN_FLASH] + [AVR_BUILTIN_STRLEN_FLASHX, AVR_BUILTIN_STRLEN_MEMX]: Fold if + possible. + * doc/extend.texi (AVR Built-in Functions): Document + __builtin_avr_strlen_flash, __builtin_avr_strlen_flashx, + __builtin_avr_strlen_memx. + +2025-01-30 Georg-Johann Lay <a...@gjlay.de> + + * config/avr/builtins.def (AVR_FIRST_C_ONLY_BUILTIN_ID): New macro. + * config/avr/avr-protos.h (avr_builtin_supported_p): New. + * config/avr/avr.cc (avr_builtin_supported_p): New function. + (avr_init_builtins): Only provide a built-in when it is supported. + * config/avr/avr-c.cc (avr_cpu_cpp_builtins): Only define the + __BUILTIN_AVR_<NAME> build-in defines when the associated built-in + function is supported. + * doc/extend.texi (AVR Built-in Functions): Add a note that + following built-ins are supported for only for GNU-C. + +2025-01-30 Jakub Jelinek <ja...@redhat.com> + Stefan Schulze Frielinghaus <stefa...@gcc.gnu.org> + + PR target/118696 + * config/s390/vector.md (*vec_cmpgt<mode><mode>_nocc_emu, + *vec_cmpgtu<mode><mode>_nocc_emu): Duplicate the first rather than + second V2DImode element. + +2025-01-30 Richard Biener <rguent...@suse.de> + + PR middle-end/118695 + * expr.cc (expand_expr_real_1): When expanding a MEM_REF + to a non-MEM by committing it to a stack temporary make + sure to handle misaligned accesses correctly. + +2025-01-30 Tobias Burnus <tbur...@baylibre.com> + + * gimplify.cc (gimplify_call_expr): For OpenMP's append_args clause + processed by 'omp dispatch', update for internal-representation + changes; fix handling of hidden arguments, add some comments and + handle Fortran's value dummy and optional/pointer/allocatable actual + args. + +2025-01-30 Richard Biener <rguent...@suse.de> + + PR middle-end/118692 + * expr.cc (expand_expr_real_1): When expanding a MEM_REF + as BIT_FIELD_REF avoid large offsets for accesses not + overlapping the base object. + +2025-01-30 Richard Biener <rguent...@suse.de> + + PR tree-optimization/114052 + * tree-ssa-loop-niter.cc (maybe_lower_iteration_bound): Check + for infinite subloops we might not exit. + +2025-01-30 Richard Sandiford <richard.sandif...@arm.com> + + PR rtl-optimization/118320 + * pair-fusion.cc (pair_fusion_bb_info::fuse_pair): Commonize + the merge of input_uses and return early if it fails. + 2025-01-29 Gaius Mulley <gaiusm...@gmail.com> PR modula2/118010 diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index 850652b6bce0..d42c41347a33 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20250130 +20250131 diff --git a/gcc/c/ChangeLog b/gcc/c/ChangeLog index e6ffd7eeec31..4374f96a5783 100644 --- a/gcc/c/ChangeLog +++ b/gcc/c/ChangeLog @@ -1,3 +1,8 @@ +2025-01-30 Tobias Burnus <tbur...@baylibre.com> + + * c-parser.cc (c_finish_omp_declare_variant): Modify how + append_args is saved internally. + 2025-01-28 Jakub Jelinek <ja...@redhat.com> PR c/116357 diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 39b935e7b5e2..328a942543d4 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,23 @@ +2025-01-30 Patrick Palka <ppa...@redhat.com> + + * cp-tree.h (LAMBDA_EXPR_CAPTURES_THIS_P): Remove. + +2025-01-30 Iain Sandoe <i...@sandoe.co.uk> + + PR c++/118673 + * tree.cc (lvalue_kind): Mark CONST_DECLs as mergable + when they are also TREE_STATIC. + +2025-01-30 Tobias Burnus <tbur...@baylibre.com> + + * parser.cc (cp_finish_omp_declare_variant): Modify how append_args + is saved internally. + * pt.cc (tsubst_attribute): Likewise. + (tsubst_omp_clauses): Remove C_ORT_OMP_DECLARE_SIMD from interop + handling as no longer called for it. + * decl.cc (omp_declare_variant_finalize_one): Update append_args + changes; fixes for ADL input. + 2025-01-29 Jakub Jelinek <ja...@redhat.com> PR c++/118655 diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 9c03a59263d0..325248cf66c8 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,102 @@ +2025-01-30 Sandra Loosemore <sloosem...@baylibre.com> + Kwok Cheung Yeung <k...@codesourcery.com> + Sandra Loosemore <san...@codesourcery.com> + Tobias Burnus <tob...@codesourcery.com> + Paul-Antoine Arras <p...@codesourcery.com> + + PR middle-end/112779 + PR middle-end/113904 + * decl.cc (gfc_match_end): Handle COMP_OMP_BEGIN_METADIRECTIVE and + COMP_OMP_METADIRECTIVE. + * dump-parse-tree.cc (show_omp_node): Handle EXEC_OMP_METADIRECTIVE. + (show_code_node): Likewise. + * gfortran.h (enum gfc_statement): Add ST_OMP_METADIRECTIVE, + ST_OMP_BEGIN_METADIRECTIVE, and ST_OMP_END_METADIRECTIVE. + (struct gfc_omp_clauses): Rename target_first_st_is_teams to + target_first_st_is_teams_or_meta. + (struct gfc_omp_variant): New. + (gfc_get_omp_variant): New. + (struct gfc_st_label): Add omp_region field. + (enum gfc_exec_op): Add EXEC_OMP_METADIRECTIVE. + (struct gfc_code): Add omp_variants fields. + (gfc_free_omp_variants): Declare. + (match_omp_directive): Declare. + (is_omp_declarative_stmt): Declare. + * io.cc (format_asterisk): Adjust initializer. + * match.h (gfc_match_omp_begin_metadirective): Declare. + (gfc_match_omp_metadirective): Declare. + * openmp.cc (gfc_omp_directives): Uncomment metadirective. + (gfc_match_omp_eos): Adjust to match context selectors. + (gfc_free_omp_variants): New. + (gfc_match_omp_clauses): Remove context_selector parameter and adjust + to use gfc_match_omp_eos instead. + (match_omp): Adjust call to gfc_match_omp_clauses. + (gfc_match_omp_context_selector): Add metadirective_p parameter and + adjust error-checking. Adjust matching of simd clauses. + (gfc_match_omp_context_selector_specification): Adjust parameters + so it can be used for metadirective as well as declare variant. + (match_omp_metadirective): New. + (gfc_match_omp_begin_metadirective): New. + (gfc_match_omp_metadirective): New. + (resolve_omp_metadirective): New. + (resolve_omp_target): Handle metadirectives. + (gfc_resolve_omp_directive): Handle EXEC_OMP_METADIRECTIVE. + * parse.cc (gfc_matching_omp_context_selector): New. + (gfc_in_omp_metadirective_body): New. + (gfc_omp_region_count): New. + (decode_omp_directive): Handle ST_OMP_BEGIN_METADIRECTIVE and + ST_OMP_METADIRECTIVE. + (match_omp_directive): New. + (case_omp_structured_block): Define. + (case_omp_do): Define. + (gfc_ascii_statement): Handle ST_OMP_BEGIN_METADIRECTIVE, + ST_OMP_END_METADIRECTIVE, and ST_OMP_METADIRECTIVE. + (accept_statement): Handle ST_OMP_METADIRECTIVE and + ST_OMP_BEGIN_METADIRECTIVE. + (gfc_omp_end_stmt): New, split from... + (parse_omp_do): ...here, and... + (parse_omp_structured_block): ...here. Handle metadirectives, + plus "allocate", "atomic", and "dispatch" which were missing. + (parse_omp_oacc_atomic): Handle "end metadirective". + (parse_openmp_allocate_block): Likewise. + (parse_omp_dispatch): Likewise. + (parse_omp_metadirective_body): New. + (parse_executable): Handle metadirective. Use new case macros + defined above. + (gfc_parse_file): Initialize metadirective state. + (is_omp_declarative_stmt): New. + * parse.h (enum gfc_compile_state): Add COMP_OMP_METADIRECTIVE + and COMP_OMP_BEGIN_METADIRECTIVE. + (gfc_omp_end_stmt): Declare. + (gfc_matching_omp_context_selector): Declare. + (gfc_in_omp_metadirective_body): Declare. + (gfc_omp_metadirective_region_count): Declare. + * resolve.cc (gfc_resolve_code): Handle EXEC_OMP_METADIRECTIVE. + * st.cc (gfc_free_statement): Likewise. + * symbol.cc (compare_st_labels): Handle labels within a metadirective + body. + (gfc_get_st_label): Likewise. + * trans-decl.cc (gfc_get_label_decl): Encode the metadirective region + in the label_name. + * trans-openmp.cc (gfc_trans_omp_directive): Handle + EXEC_OMP_METADIRECTIVE. + (gfc_trans_omp_set_selector): New, split/adapted from code.... + (gfc_trans_omp_declare_variant): ...here. + (gfc_trans_omp_metadirective): New. + * trans-stmt.h (gfc_trans_omp_metadirective): Declare. + * trans.cc (trans_code): Handle EXEC_OMP_METADIRECTIVE. + +2025-01-30 Tobias Burnus <tbur...@baylibre.com> + + * gfortran.h (gfc_omp_declare_variant): Add append_args_list. + * openmp.cc (gfc_parser_omp_clause_init_modifiers): New; + splitt of from ... + (gfc_match_omp_init): ... here; call it. + (gfc_match_omp_declare_variant): Update to handle append_args + clause; some syntax handling fixes. + * trans-openmp.cc (gfc_trans_omp_declare_variant): Handle + append_args clause; add some diagnostic. + 2025-01-29 Harald Anlauf <anl...@gmx.de> PR fortran/118683 diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 90a32964adc1..f884f9a485e3 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,102 @@ +2025-01-30 Alexandre Oliva <ol...@adacore.com> + + PR target/113689 + * gcc.target/i386/pr113689-1.c: Require profiling support. + * gcc.target/i386/pr113689-2.c: Likewise. + * gcc.target/i386/pr113689-3.c: Likewise. + +2025-01-30 Alexandre Oliva <ol...@adacore.com> + + * gcc.dg/vect/vect-ifcvt-18.c: Split -Ofast out of + avx_runtime. + +2025-01-30 Sandra Loosemore <sloosem...@baylibre.com> + Kwok Cheung Yeung <k...@codesourcery.com> + Sandra Loosemore <san...@codesourcery.com> + Tobias Burnus <tob...@codesourcery.com> + Paul-Antoine Arras <p...@codesourcery.com> + + PR middle-end/112779 + PR middle-end/113904 + * gfortran.dg/gomp/metadirective-1.f90: New. + * gfortran.dg/gomp/metadirective-10.f90: New. + * gfortran.dg/gomp/metadirective-11.f90: New. + * gfortran.dg/gomp/metadirective-12.f90: New. + * gfortran.dg/gomp/metadirective-13.f90: New. + * gfortran.dg/gomp/metadirective-2.f90: New. + * gfortran.dg/gomp/metadirective-3.f90: New. + * gfortran.dg/gomp/metadirective-4.f90: New. + * gfortran.dg/gomp/metadirective-5.f90: New. + * gfortran.dg/gomp/metadirective-6.f90: New. + * gfortran.dg/gomp/metadirective-7.f90: New. + * gfortran.dg/gomp/metadirective-8.f90: New. + * gfortran.dg/gomp/metadirective-9.f90: New. + * gfortran.dg/gomp/metadirective-construct.f90: New. + * gfortran.dg/gomp/metadirective-no-score.f90: New. + * gfortran.dg/gomp/pure-1.f90 (func_metadirective): New. + (func_metadirective_2): New. + (func_metadirective_3): New. + * gfortran.dg/gomp/pure-2.f90 (func_metadirective): Delete. + +2025-01-30 Jakub Jelinek <ja...@redhat.com> + Stefan Schulze Frielinghaus <stefa...@gcc.gnu.org> + + PR target/118696 + * gcc.dg/pr118696.c: New test. + * gcc.target/s390/vector/pr118696.c: New test. + * gcc.target/s390/vector/vec-abs-emu.c: Expect vrepg with 0 as last + operand rather than 1. + * gcc.target/s390/vector/vec-max-emu.c: Likewise. + * gcc.target/s390/vector/vec-min-emu.c: Likewise. + +2025-01-30 Richard Biener <rguent...@suse.de> + + PR middle-end/118695 + * gcc.dg/pr118695.c: New testcase. + +2025-01-30 Tobias Burnus <tbur...@baylibre.com> + + * c-c++-common/gomp/append-args-1.c: Update dg-*. + * c-c++-common/gomp/append-args-3.c: Likewise. + * g++.dg/gomp/append-args-1.C: Likewise. + * gfortran.dg/gomp/adjust-args-1.f90: Likewise. + * gfortran.dg/gomp/adjust-args-3.f90: Likewise. + * gfortran.dg/gomp/declare-variant-2.f90: Likewise. + * c-c++-common/gomp/append-args-6.c: New test. + * c-c++-common/gomp/append-args-7.c: New test. + * c-c++-common/gomp/append-args-8.c: New test. + * c-c++-common/gomp/append-args-9.c: New test. + * g++.dg/gomp/append-args-4.C: New test. + * g++.dg/gomp/append-args-5.C: New test. + * g++.dg/gomp/append-args-6.C: New test. + * g++.dg/gomp/append-args-7.C: New test. + * gcc.dg/gomp/append-args-1.c: New test. + * gfortran.dg/gomp/append_args-1.f90: New test. + * gfortran.dg/gomp/append_args-2.f90: New test. + * gfortran.dg/gomp/append_args-3.f90: New test. + * gfortran.dg/gomp/append_args-4.f90: New test. + +2025-01-30 Richard Biener <rguent...@suse.de> + + PR middle-end/118692 + * gcc.dg/pr118692.c: New testcase. + +2025-01-30 Richard Biener <rguent...@suse.de> + + PR tree-optimization/114052 + * gcc.dg/pr114052-1.c: New testcase. + +2025-01-30 Richard Sandiford <richard.sandif...@arm.com> + + PR rtl-optimization/118320 + * g++.dg/torture/pr118320.C: New test. + +2025-01-30 Jeff Law <j...@ventanamicro.com> + + PR target/116860 + * gcc.dg/tree-ssa/fold-xor-and-or.c: Set logical-op-non-short-circuit. + * gcc.dg/tree-ssa/fold-xor-or.c: Similarly. + 2025-01-29 Gaius Mulley <gaiusm...@gmail.com> PR modula2/118010 diff --git a/libbacktrace/ChangeLog b/libbacktrace/ChangeLog index 17bc592dd46c..c5d5f67ddd1d 100644 --- a/libbacktrace/ChangeLog +++ b/libbacktrace/ChangeLog @@ -1,3 +1,11 @@ +2025-01-30 Ian Lance Taylor <i...@golang.org> + + * elf.c (elf_fetch_bits): Add casts to avoid potentially shifting + a value farther than its type size. + (elf_fetch_bits_backward): Likewise. + (elf_uncompress_lzma_block): Likewise. + (elf_uncompress_lzma): Likewise. + 2025-01-28 Richard Earnshaw <rearn...@arm.com> * configure.ac: Always check if the compiler supports __sync diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog index ea0fa78685a8..b61a78b47f35 100644 --- a/libgcc/ChangeLog +++ b/libgcc/ChangeLog @@ -1,3 +1,8 @@ +2025-01-30 Georg-Johann Lay <a...@gjlay.de> + + * config/avr/t-avr (LIB1ASMFUNCS): Add _strlen_memx. + * config/avr/lib1funcs.S <L_strlen_memx, __strlen_memx>: Implement. + 2025-01-28 Richard Earnshaw <rearn...@arm.com> PR target/118642 diff --git a/libgomp/ChangeLog b/libgomp/ChangeLog index 7905b48fce20..97b622d2ce35 100644 --- a/libgomp/ChangeLog +++ b/libgomp/ChangeLog @@ -1,3 +1,33 @@ +2025-01-30 Sandra Loosemore <sloosem...@baylibre.com> + + * libgomp.texi (OpenMP 5.0): Mark metadirective and declare variant + as implemented. + (OpenMP 5.1): Mark target_device as supported. + Add changed interaction between declare target and OpenMP context + and dynamic selector support. + (OpenMP 5.2): Mark otherwise clause as supported, note that + default is also still accepted. + +2025-01-30 Sandra Loosemore <sloosem...@baylibre.com> + Kwok Cheung Yeung <k...@codesourcery.com> + Sandra Loosemore <san...@codesourcery.com> + Tobias Burnus <tob...@codesourcery.com> + Paul-Antoine Arras <p...@codesourcery.com> + + PR middle-end/112779 + PR middle-end/113904 + * testsuite/libgomp.fortran/metadirective-1.f90: New. + * testsuite/libgomp.fortran/metadirective-2.f90: New. + * testsuite/libgomp.fortran/metadirective-3.f90: New. + * testsuite/libgomp.fortran/metadirective-4.f90: New. + * testsuite/libgomp.fortran/metadirective-5.f90: New. + * testsuite/libgomp.fortran/metadirective-6.f90: New. + +2025-01-30 Tobias Burnus <tbur...@baylibre.com> + + * libgomp.texi (Impl. Status): Update for accumpulated changes + related to 'dispatch' and interop. + 2025-01-16 Sandra Loosemore <sloosem...@baylibre.com> Kwok Cheung Yeung <k...@codesourcery.com> Sandra Loosemore <san...@codesourcery.com> diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index efc8743fbaa1..f1177b9e9dff 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,17 @@ +2025-01-30 Jonathan Wakely <jwak...@redhat.com> + + PR libstdc++/98749 + * include/std/latch (latch::max()): Ensure the return value is + representable as the return type. + (latch::latch(ptrdiff_t)): Add assertion. + (latch::count_down): Fix copy & pasted duplicate assertion. Use + std::cmp_equal to compare __platform_wait_t and ptrdiff_t + values. + (latch::_M_a): Use defined constant for alignment. + * testsuite/30_threads/latch/1.cc: Check max(). Check constant + initialization works for values in the valid range. Check + alignment. + 2025-01-29 Patrick Palka <ppa...@redhat.com> PR libstdc++/118413