+2025-02-20 David Malcolm <dmalcolm@redhat.com>
+
+ * diagnostic-core.h: Add comments making clear that these
+ functions implicitly use global_dc.
+
+2025-02-20 David Malcolm <dmalcolm@redhat.com>
+
+ * libsarifreplay.cc
+ (sarif_replayer::make_plain_text_within_result_message): Capture
+ which json::string was used. When reporting on unescaped "{" or
+ "}" in SARIF message strings, use that string rather than the
+ message object, and refer the user to §3.11.5 ("Messages with
+ placeholders") rather than §3.11.11 ("arguments"). Ideally we'd
+ place the error at the precise character, but that can't be done
+ without reworking json-parsing.cc's lexer::lex_string, which is
+ too invasive for stage 4.
+ (sarif_replayer::get_plain_text_from_mfms): Capture which
+ json::string was used.
+ (sarif_replayer::lookup_plain_text_within_result_message):
+ Likewise.
+
+2025-02-20 Gerald Pfeifer <gerald@pfeifer.com>
+
+ PR target/69374
+ * doc/install.texi (Specific, aarch64*-*-*): Drop note for
+ Binutils pre 2.24.
+
+2025-02-20 Richard Sandiford <richard.sandiford@arm.com>
+
+ * config/aarch64/aarch64-protos.h (aarch64_expand_sve_vec_cmp_float):
+ Remove can_invert_p argument and change return type to void.
+ * config/aarch64/aarch64.cc (aarch64_expand_sve_vec_cmp_float):
+ Likewise.
+ * config/aarch64/aarch64-sve.md (vec_cmp<mode><vpred>): Update call
+ accordingly.
+
+2025-02-20 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/118521
+ * tree-scalar-evolution.cc (final_value_replacement_loop):
+ Fold uses of the replaced PHI def.
+
+2025-02-20 Filip Kastl <fkastl@suse.cz>
+
+ * doc/invoke.texi: Fix typo file-cache-files ->
+ file-cache-lines.
+
+2025-02-20 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/86270
+ * tree-outof-ssa.cc (insert_backedge_copies): Pattern
+ match a single conflict in a loop condition and adjust
+ that avoiding the conflict if possible.
+
+2025-02-20 H.J. Lu <hjl.tools@gmail.com>
+
+ Revert:
+ 2025-02-16 H.J. Lu <hjl.tools@gmail.com>
+
+ PR target/109780
+ PR target/109093
+ * config/i386/i386.cc (ix86_update_stack_alignment): New.
+ (ix86_find_all_reg_use_1): Likewise.
+ (ix86_find_all_reg_use): Likewise.
+ (ix86_find_max_used_stack_alignment): Also check memory accesses
+ from registers defined by stack or frame registers.
+
+2025-02-20 H.J. Lu <hjl.tools@gmail.com>
+
+ Revert:
+ 2025-02-17 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/i386/i386.cc (ix86_find_all_reg_use):
+ Scan only for SET RTX in PARALLEL.
+
2025-02-19 David Malcolm <dmalcolm@redhat.com>
PR other/118919
+2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org>
+
+ PR fortran/107635
+ * gfortran.texi: Remove deprecated functions from documentation.
+ * trans-decl.cc (gfc_build_builtin_function_decls): Remove
+ decprecated function decls.
+ * trans-intrinsic.cc (gfc_conv_intrinsic_exponent): Remove
+ deprecated/no longer needed routines.
+ * trans.h: Remove unused decls.
+
+2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org>
+
+ PR fortran/107635
+ * coarray.cc (rewrite_caf_send): Rewrite to
+ transfer_between_remotes when both sides of the assignment have
+ a coarray.
+ (coindexed_code_callback): Prevent duplicate rewrite.
+ * gfortran.texi: Add documentation for transfer_between_remotes.
+ * intrinsic.cc (add_subroutines): Add intrinsic symbol for
+ caf_sendget to allow easy rewrite to transfer_between_remotes.
+ * trans-decl.cc (gfc_build_builtin_function_decls): Add
+ prototype for transfer_between_remotes.
+ * trans-intrinsic.cc (conv_caf_vector_subscript_elem): Mark as
+ deprecated.
+ (conv_caf_vector_subscript): Same.
+ (compute_component_offset): Same.
+ (conv_expr_ref_to_caf_ref): Same.
+ (conv_stat_and_team): Extract stat and team from expr.
+ (gfc_conv_intrinsic_caf_get): Use conv_stat_and_team.
+ (conv_caf_send_to_remote): Same.
+ (has_ref_after_cafref): Mark as deprecated.
+ (conv_caf_sendget): Translate to transfer_between_remotes.
+ * trans.h: Add prototype for transfer_between_remotes.
+
+2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org>
+
+ PR fortran/107635
+ * coarray.cc (move_coarray_ref): Move the coarray reference out
+ of the given one. Especially when there is a regular array ref.
+ (fixup_comp_refs): Move components refs to a derived type where
+ the codim has been removed, aka a new type.
+ (split_expr_at_caf_ref): Correctly split the reference chain.
+ (remove_caf_ref): Simplify.
+ (create_get_callback): Fix some deficiencies.
+ (create_allocated_callback): Adapt to new signature of split.
+ (create_send_callback): New function.
+ (rewrite_caf_send): Rewrite a call to caf_send to
+ caf_send_to_remote.
+ (coindexed_code_callback): Treat caf_send and caf_sendget
+ correctly.
+ * gfortran.h (enum gfc_isym_id): Add SENDGET-isym.
+ * gfortran.texi: Add documentation for send_to_remote.
+ * resolve.cc (gfc_resolve_code): No longer generate send_by_ref
+ when allocatable coarray (component) is on the lhs.
+ * trans-decl.cc (gfc_build_builtin_function_decls): Add
+ caf_send_to_remote decl.
+ * trans-intrinsic.cc (conv_caf_func_index): Ensure the static
+ variables created are not in a block-scope.
+ (conv_caf_send_to_remote): Translate caf_send_to_remote calls.
+ (conv_caf_send): Renamed to conv_caf_sendget.
+ (conv_caf_sendget): Renamed from conv_caf_send.
+ (gfc_conv_intrinsic_subroutine): Branch correctly for
+ conv_caf_send and sendget.
+ * trans.h: Correct decl.
+
+2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org>
+
+ PR fortran/107635
+ * coarray.cc (create_allocated_callback): Add creating remote
+ side procedure for checking allocation status of coarray.
+ (rewrite_caf_allocated): Rewrite ALLOCATED on coarray to use caf
+ routine.
+ (coindexed_expr_callback): Exempt caf_is_present_on_remote from
+ being rewritten again.
+ * gfortran.h (enum gfc_isym_id): Add caf_is_present_on_remote
+ id.
+ * gfortran.texi: Add documentation for caf_is_present_on_remote.
+ * intrinsic.cc (add_functions): Add caf_is_present_on_remote
+ symbol.
+ * trans-decl.cc (gfc_build_builtin_function_decls): Define
+ interface of caf_is_present_on_remote.
+ * trans-intrinsic.cc (gfc_conv_intrinsic_caf_is_present_remote):
+ Translate caf_is_present_on_remote.
+ (trans_caf_is_present): Remove.
+ (caf_this_image_ref): Remove.
+ (gfc_conv_allocated): Take out coarray treatment, because that
+ is rewritten to caf_is_present_on_remote now.
+ (gfc_conv_intrinsic_function): Handle caf_is_present_on_remote
+ calls.
+ * trans.h: Add symbol for caf_is_present_on_remote and remove
+ old one.
+
+2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org>
+
+ PR fortran/107635
+ * coarray.cc (get_arrayspec_from_expr): Treat array result of
+ function calls correctly.
+ (remove_coarray_from_derived_type): Prevent memory loss.
+ (add_caf_get_from_remote): Correct locus.
+ (find_comp): New function to find or create a new component in a
+ derived type.
+ (check_add_new_comp_handle_array): Handle allocatable arrays or
+ non-pure/non-elemental functions in indexes of coarrays.
+ (check_add_new_component): Use above function.
+ (create_get_parameter_type): Rename to
+ create_caf_add_data_parameter_type.
+ (create_caf_add_data_parameter_type): Renaming of variable and
+ make the additional data a coarray.
+ (remove_caf_ref): Factor out to reuse in other caf-functions.
+ (create_get_callback): Use function factored out, set locus
+ correctly and ensure a kind is set for parameters.
+ (add_caf_get_intrinsic): Rename to add_caf_get_from_remote and
+ rename some variables.
+ (coindexed_expr_callback): Skip over function created by the
+ rewriter.
+ (coindexed_code_callback): Filter some intrinsics not to
+ process.
+ (gfc_coarray_rewrite): Rewrite also contained functions.
+ * trans-intrinsic.cc (gfc_conv_intrinsic_caf_get): Reflect
+ changed order on caf_get_from_remote ().
+
+2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org>
+
+ PR fortran/107635
+ * gfortran.texi: Rename caf_get_by_ct to caf_get_from_remote.
+ * trans-decl.cc (gfc_build_builtin_function_decls): Rename
+ intrinsic.
+ * trans-intrinsic.cc (conv_caf_func_index): Factor out
+ functionality to be reused by other caf-functions.
+ (conv_caf_add_call_data): Same.
+ (gfc_conv_intrinsic_caf_get): Use functions factored out.
+ * trans.h: Rename intrinsic symbol.
+
+2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org>
+
+ PR fortran/107635
+ * Make-lang.in: Add coarray.cc.
+ * coarray.cc: New file.
+ * gfortran.h (gfc_coarray_rewrite): New procedure.
+ * parse.cc (rewrite_expr_tree): Add entrypoint for rewriting
+ expression trees.
+ * resolve.cc (gfc_resolve_ref): Remove caf_lhs handling.
+ (get_arrayspec_from_expr): Moved to rewrite.cc.
+ (remove_coarray_from_derived_type): Same.
+ (convert_coarray_class_to_derived_type): Same.
+ (split_expr_at_caf_ref): Same.
+ (check_add_new_component): Same.
+ (create_get_parameter_type): Same.
+ (create_get_callback): Same.
+ (add_caf_get_intrinsic): Same.
+ (resolve_variable): Remove caf_lhs handling.
+
2025-02-17 Tobias Burnus <tburnus@baylibre.com>
PR fortran/115271
+2025-02-20 David Malcolm <dmalcolm@redhat.com>
+
+ * sarif-replay.dg/malformed-json/empty.sarif: New test.
+
+2025-02-20 David Malcolm <dmalcolm@redhat.com>
+
+ * sarif-replay.dg/2.1.0-invalid/3.11.11-malformed-placeholder.sarif:
+ Rename to...
+ * sarif-replay.dg/2.1.0-invalid/3.11.5-unescaped-braces.sarif:
+ ...this. Update expected subsection in error message, and
+ expected underline in quoted JSON.
+
+2025-02-20 Richard Sandiford <richard.sandiford@arm.com>
+
+ PR testsuite/116604
+ * gcc.target/aarch64/sve/pcs/args_1.c (callee_pred): Enable scheduling
+ and use both memory arguments in the same instruction. Expect no
+ prologue and epilogue code.
+
+2025-02-20 Richard Sandiford <richard.sandiford@arm.com>
+
+ * gcc.target/aarch64/sve/var_stride_2.c: Expect ADD+LSL.
+ * gcc.target/aarch64/sve/var_stride_4.c: Accept LSL or SBFIZ.
+
+2025-02-20 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/118521
+ * g++.dg/torture/pr118521.C: New testcase.
+
+2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org>
+
+ * gfortran.dg/coarray_lib_comm_1.f90: Fix up scan_trees.
+
+2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org>
+
+ * gfortran.dg/coarray/send_char_array_1.f90: Extend test to
+ catch more cases.
+ * gfortran.dg/coarray_42.f90: Invert tests use, because no
+ longer a send is needed when local memory in a coarray is
+ allocated.
+
+2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org>
+
+ * gfortran.dg/coarray/coarray_allocated.f90: Adapt to new method
+ of checking on remote image.
+ * gfortran.dg/coarray_lib_alloc_4.f90: Same.
+
+2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org>
+
+ * gfortran.dg/coarray_lib_comm_1.f90: Adapt scan expression.
+ * gfortran.dg/coarray/get_with_fn_parameter.f90: New test.
+ * gfortran.dg/coarray/get_with_scalar_fn.f90: New test.
+
+2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org>
+
+ * gfortran.dg/coarray_lib_comm_1.f90: Adapt to renamed ABI
+ function.
+ * gfortran.dg/coarray_stat_function.f90: Same.
+ * gfortran.dg/coindexed_1.f90: Same.
+
+2025-02-20 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/86270
+ * gcc.target/i386/pr86270.c: Adjust to check for no reg-reg
+ copies as well.
+
+2025-02-20 H.J. Lu <hjl.tools@gmail.com>
+
+ PR target/118936
+ * gcc.target/i386/pr118936.c: New test.
+
+2025-02-20 H.J. Lu <hjl.tools@gmail.com>
+
+ Revert:
+ 2025-02-20 H.J. Lu <hjl.tools@gmail.com>
+
+ PR target/109780
+ PR target/109093
+ * g++.target/i386/pr109780-1.C: New test.
+ * gcc.target/i386/pr109093-1.c: Likewise.
+ * gcc.target/i386/pr109780-1.c: Likewise.
+ * gcc.target/i386/pr109780-2.c: Likewise.
+ * gcc.target/i386/pr109780-3.c: Likewise.
+
2025-02-19 Georg-Johann Lay <avr@gjlay.de>
* gcc.target/avr/torture/isr-04-regs.c: New test.
+2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org>
+
+ * caf/libcaf.h (_gfortran_caf_get): Removed because deprecated.
+ (_gfortran_caf_send): Same.
+ (_gfortran_caf_sendget): Same.
+ (_gfortran_caf_send_by_ref): Same.
+ * caf/single.c (assign_char4_from_char1): Same.
+ (assign_char1_from_char4): Same.
+ (convert_type): Same.
+ (defined): Same.
+ (_gfortran_caf_get): Same.
+ (_gfortran_caf_send): Same.
+ (_gfortran_caf_sendget): Same.
+ (copy_data): Same.
+ (get_for_ref): Same.
+ (_gfortran_caf_get_by_ref): Same.
+ (send_by_ref): Same.
+ (_gfortran_caf_send_by_ref): Same.
+ (_gfortran_caf_sendget_by_ref): Same.
+
+2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org>
+
+ * caf/libcaf.h: Add prototype for transfer_between_remotes.
+ * caf/single.c: Implement transfer_between_remotes.
+
+2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org>
+
+ * caf/libcaf.h: Add/Correct prototypes for caf_get_from_remote,
+ caf_send_to_remote.
+ * caf/single.c (struct accessor_hash_t): Rename accessor_t to
+ getter_t.
+ (_gfortran_caf_register_accessor): Use new name of getter_t.
+ (_gfortran_caf_send_to_remote): New function for sending data to
+ coarray on a remote image.
+
+2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org>
+
+ * caf/libcaf.h (_gfortran_caf_is_present_on_remote): Add new
+ function.
+ (_gfortran_caf_is_present): Remove deprecated one.
+ * caf/single.c (struct accessor_hash_t): Add function ptr access
+ for remote side call.
+ (_gfortran_caf_is_present_on_remote): Added.
+ (_gfortran_caf_is_present): Removed.
+
+2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org>
+
+ * caf/libcaf.h (_gfortran_caf_register_accessor): Reflect
+ changed parameter order.
+ * caf/single.c (struct accessor_hash_t): Same.
+ (_gfortran_caf_register_accessor): Call accessor using a token
+ for accessing arrays with a descriptor on the source side.
+
+2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org>
+
+ * caf/libcaf.h (_gfortran_caf_get_by_ref): Remove from ABI.
+ This function is replaced by caf_get_from_remote ().
+ (_gfortran_caf_get_remote_function_index): Use better name.
+ * caf/single.c (_gfortran_caf_finalize): Free internal data.
+ (_gfortran_caf_get_by_ref): Remove from public interface, but
+ keep it, because it is still used by sendget ().
+
+2025-02-20 Andre Vehreschild <vehre@gcc.gnu.org>
+
+ * caf/single.c (_gfortran_caf_finalize): Free memory preventing
+ leaks.
+ (_gfortran_caf_get_by_ct): Fix constness.
+ * caf/libcaf.h (_gfortran_caf_register_accessor): Fix constness.
+
2025-02-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/114618
+2025-02-20 Jonathan Wakely <jwakely@redhat.com>
+
+ PR libstdc++/118559
+ * include/std/type_traits (rank, rank_v): Do not use
+ __array_rank for Clang 19 and older.
+
+2025-02-20 Jonathan Wakely <jwakely@redhat.com>
+
+ * include/bits/c++config (_GLIBCXX_HAS_BUILTIN): Add parentheses.
+
+2025-02-20 Jonathan Wakely <jwakely@redhat.com>
+
+ PR libstdc++/118855
+ * include/std/bit (__count_lzero, __count_rzero, __popcount):
+ Use type-generic built-ins when available.
+
+2025-02-20 Jonathan Wakely <jwakely@redhat.com>
+
+ * include/experimental/bits/simd.h (__find_next_valid_abi): Cast
+ __bit_ceil argument to unsigned.
+ * src/c++17/floating_from_chars.cc (__floating_from_chars_hex):
+ Cast __bit_ceil argument to unsigned.
+ * src/c++17/memory_resource.cc (big_block): Cast __bit_width
+ argument to unsigned.
+
+2025-02-20 Jonathan Wakely <jwakely@redhat.com>
+
+ * src/c++17/memory_resource.cc (default_res): Define here
+ instead of including default_resource.h.
+ * src/c++98/globals_io.cc (__ioinit): Define here instead of
+ including ios_base_init.h.
+ * src/c++17/default_resource.h: Removed.
+ * src/c++98/ios_base_init.h: Removed.
+
+2025-02-20 Jonathan Wakely <jwakely@redhat.com>
+
+ PR libstdc++/118811
+ * src/c++20/tzdb.cc (tzdb_list::_Node): Use init_priority
+ attribute on static data members.
+ * testsuite/std/time/tzdb_list/pr118811.cc: New test.
+
+2025-02-20 Patrick Palka <ppalka@redhat.com>
+
+ * include/std/ranges (concat_view::iterator): Rename to ...
+ (concat_view::_Iterator): ... this throughout.
+
+2025-02-20 Patrick Palka <ppalka@redhat.com>
+
+ PR libstdc++/115209
+ * include/bits/version.def (ranges_concat): Depend on
+ __cpp_pack_indexing.
+ * include/bits/version.h: Regenerate.
+ * include/std/ranges (__detail::__last_is_common): Remove.
+ (__detail::__all_but_first_sized): New.
+ (concat_view::end): Use C++26 pack indexing instead of
+ __last_is_common as per R8 of P2542.
+ (concat_view::iterator::operator-): Update constraints on
+ iter/sent overloads as per R8 of P2542.
+
2025-02-15 Jonathan Wakely <jwakely@redhat.com>
* include/bits/shared_ptr_base.h: Do not include <bit>.