aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGCC Administrator <gccadmin@gcc.gnu.org>2023-06-07 00:17:25 +0000
committerGCC Administrator <gccadmin@gcc.gnu.org>2023-06-07 00:17:25 +0000
commit4f0d4825fa489cc1875c94ab405a800a8d76e506 (patch)
tree14207148fc3d6796e4312431cd46b23621a7adae
parent6160572f8d243cb613ee0290fdc8580f1761d805 (diff)
downloadgcc-4f0d4825fa489cc1875c94ab405a800a8d76e506.zip
gcc-4f0d4825fa489cc1875c94ab405a800a8d76e506.tar.gz
gcc-4f0d4825fa489cc1875c94ab405a800a8d76e506.tar.bz2
Daily bump.
-rw-r--r--gcc/ChangeLog169
-rw-r--r--gcc/DATESTAMP2
-rw-r--r--gcc/c/ChangeLog13
-rw-r--r--gcc/cp/ChangeLog13
-rw-r--r--gcc/fortran/ChangeLog20
-rw-r--r--gcc/testsuite/ChangeLog59
-rw-r--r--include/ChangeLog14
-rw-r--r--libgomp/ChangeLog24
-rw-r--r--libiberty/ChangeLog4
-rw-r--r--libstdc++-v3/ChangeLog89
10 files changed, 406 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index fae8c10..e6e212a 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,172 @@
+2023-06-06 Roger Sayle <roger@nextmovesoftware.com>
+
+ * doc/rtl.texi (bitreverse, copysign): Document new RTX codes.
+ * rtl.def (BITREVERSE, COPYSIGN): Define new RTX codes.
+ * simplify-rtx.cc (simplify_unary_operation_1): Optimize
+ NOT (BITREVERSE x) as BITREVERSE (NOT x).
+ Optimize POPCOUNT (BITREVERSE x) as POPCOUNT x.
+ Optimize PARITY (BITREVERSE x) as PARITY x.
+ Optimize BITREVERSE (BITREVERSE x) as x.
+ (simplify_const_unary_operation) <case BITREVERSE>: Evaluate
+ BITREVERSE of a constant integer at compile-time.
+ (simplify_binary_operation_1) <case COPYSIGN>: Optimize
+ COPY_SIGN (x, x) as x. Optimize COPYSIGN (x, C) as ABS x
+ or NEG (ABS x) for constant C. Optimize COPYSIGN (ABS x, y)
+ and COPYSIGN (NEG x, y) as COPYSIGN (x, y).
+ Optimize COPYSIGN (x, ABS y) as ABS x.
+ Optimize COPYSIGN (COPYSIGN (x, y), z) as COPYSIGN (x, z).
+ Optimize COPYSIGN (x, COPYSIGN (y, z)) as COPYSIGN (x, z).
+ (simplify_const_binary_operation): Evaluate COPYSIGN of constant
+ arguments at compile-time.
+
+2023-06-06 Uros Bizjak <ubizjak@gmail.com>
+
+ * rtl.h (function_invariant_p): Change return type from int to bool.
+ * reload1.cc (function_invariant_p): Change return type from
+ int to bool and adjust function body accordingly.
+
+2023-06-06 Juzhe-Zhong <juzhe.zhong@rivai.ai>
+
+ * config/riscv/autovec-opt.md (*<optab>_fma<mode>): New pattern.
+ (*single_<optab>mult_plus<mode>): Ditto.
+ (*double_<optab>mult_plus<mode>): Ditto.
+ (*sign_zero_extend_fma): Ditto.
+ (*zero_sign_extend_fma): Ditto.
+ * config/riscv/riscv-protos.h (enum insn_type): New enum.
+
+2023-06-06 Kwok Cheung Yeung <kcy@codesourcery.com>
+ Tobias Burnus <tobias@codesourcery.com>
+
+ * gimplify.cc (omp_notice_variable): Apply GOVD_MAP_ALLOC_ONLY flag
+ and defaultmap flags if the defaultmap has GOVD_MAP_FORCE_PRESENT flag
+ set.
+ (omp_get_attachment): Handle map clauses with 'present' modifier.
+ (omp_group_base): Likewise.
+ (gimplify_scan_omp_clauses): Reorder present maps to come first.
+ Set GOVD flags for present defaultmaps.
+ (gimplify_adjust_omp_clauses_1): Set map kind for present defaultmaps.
+ * omp-low.cc (scan_sharing_clauses): Handle 'always, present' map
+ clauses.
+ (lower_omp_target): Handle map clauses with 'present' modifier.
+ Handle 'to' and 'from' clauses with 'present'.
+ * tree-core.h (enum omp_clause_defaultmap_kind): Add
+ OMP_CLAUSE_DEFAULTMAP_PRESENT defaultmap kind.
+ * tree-pretty-print.cc (dump_omp_clause): Handle 'map', 'to' and
+ 'from' clauses with 'present' modifier. Handle present defaultmap.
+ * tree.h (OMP_CLAUSE_MOTION_PRESENT): New #define.
+
+2023-06-06 Segher Boessenkool <segher@kernel.crashing.org>
+
+ * config/rs6000/genfusion.pl: Delete some dead code.
+
+2023-06-06 Segher Boessenkool <segher@kernel.crashing.org>
+
+ * config/rs6000/genfusion.pl (gen_ld_cmpi_p10_one): New, rewritten and
+ split out from...
+ (gen_ld_cmpi_p10): ... this.
+
+2023-06-06 Jeevitha Palanisamy <jeevitha@linux.ibm.com>
+
+ PR target/106907
+ * config/rs6000/rs6000.cc (vec_const_128bit_to_bytes): Remove
+ duplicate expression.
+
+2023-06-06 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
+
+ * config/aarch64/aarch64-builtins.cc (aarch64_general_gimple_fold_builtin):
+ Handle unsigned reduc_plus_scal_ builtins.
+ * config/aarch64/aarch64-simd-builtins.def (addp): Delete DImode instances.
+ * config/aarch64/aarch64-simd.md (aarch64_addpdi): Delete.
+ * config/aarch64/arm_neon.h (vpaddd_s64): Reimplement with
+ __builtin_aarch64_reduc_plus_scal_v2di.
+ (vpaddd_u64): Reimplement with __builtin_aarch64_reduc_plus_scal_v2di_uu.
+
+2023-06-06 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
+
+ * config/aarch64/aarch64-simd.md (aarch64_<sur>shr_n<mode>): Delete.
+ (aarch64_<sra_op>rshr_n<mode><vczle><vczbe>_insn): New define_insn.
+ (aarch64_<sra_op>rshr_n<mode>): New define_expand.
+
+2023-06-06 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
+
+ * config/aarch64/aarch64-simd.md (aarch64_shrn<mode>_insn_le): Delete.
+ (aarch64_shrn<mode>_insn_be): Delete.
+ (*aarch64_<srn_op>shrn<mode>_vect): Rename to...
+ (*aarch64_<srn_op>shrn<mode><vczle><vczbe>): ... This.
+ (aarch64_shrn<mode>): Remove reference to the above deleted patterns.
+ (aarch64_rshrn<mode>_insn_le): Delete.
+ (aarch64_rshrn<mode>_insn_be): Delete.
+ (aarch64_rshrn<mode><vczle><vczbe>_insn): New define_insn.
+ (aarch64_rshrn<mode>): Remove references to the above deleted patterns.
+
+2023-06-06 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
+
+ * config/aarch64/aarch64-protos.h (aarch64_parallel_select_half_p):
+ Define prototype.
+ (aarch64_pars_overlap_p): Likewise.
+ * config/aarch64/aarch64-simd.md (aarch64_<su>addlv<mode>):
+ Express in terms of UNSPEC_ADDV.
+ (*aarch64_<su>addlv<VDQV_L:mode>_ze<GPI:mode>): Likewise.
+ (*aarch64_<su>addlv<mode>_reduction): Define.
+ (*aarch64_uaddlv<mode>_reduction_2): Likewise.
+ * config/aarch64/aarch64.cc (aarch64_parallel_select_half_p): Define.
+ (aarch64_pars_overlap_p): Likewise.
+ * config/aarch64/iterators.md (UNSPEC_SADDLV, UNSPEC_UADDLV): Delete.
+ (VQUADW): New mode attribute.
+ (VWIDE2X_S): Likewise.
+ (USADDLV): Delete.
+ (su): Delete handling of UNSPEC_SADDLV, UNSPEC_UADDLV.
+ * config/aarch64/predicates.md (vect_par_cnst_select_half): Define.
+
+2023-06-06 Richard Biener <rguenther@suse.de>
+
+ PR middle-end/110055
+ * gimplify.cc (gimplify_target_expr): Do not emit
+ CLOBBERs for variables which have static storage duration
+ after gimplifying their initializers.
+
+2023-06-06 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/109143
+ * tree-ssa-structalias.cc (solution_set_expand): Avoid
+ one bitmap iteration and optimize bit range setting.
+
+2023-06-06 Hans-Peter Nilsson <hp@axis.com>
+
+ PR bootstrap/110120
+ * postreload.cc (reload_cse_move2add, move2add_use_add2_insn): Use
+ XVECEXP, not XEXP, to access first item of a PARALLEL.
+
+2023-06-06 Pan Li <pan2.li@intel.com>
+
+ * config/riscv/riscv-vector-builtins-types.def
+ (vfloat16mf4_t): Add vfloat16mf4_t to WF operations.
+ (vfloat16mf2_t): Likewise.
+ (vfloat16m1_t): Likewise.
+ (vfloat16m2_t): Likewise.
+ (vfloat16m4_t): Likewise.
+ (vfloat16m8_t): Likewise.
+ * config/riscv/vector-iterators.md: Add FP=16 to VWF, VWF_ZVE64,
+ VWLMUL1, VWLMUL1_ZVE64, vwlmul1 and vwlmul1_zve64.
+
+2023-06-06 Fei Gao <gaofei@eswincomputing.com>
+
+ * config/riscv/riscv.cc (riscv_adjust_libcall_cfi_prologue): Use Pmode
+ for cfi reg/mem machmode
+ (riscv_adjust_libcall_cfi_epilogue): Use Pmode for cfi reg machmode
+
+2023-06-06 Li Xu <xuli1@eswincomputing.com>
+
+ * config/riscv/vector-iterators.md:
+ Fix 'REQUIREMENT' for machine_mode 'MODE'.
+ * config/riscv/vector.md (@pred_indexed_<order>store<VNX16_QHS:mode>
+ <VNX16_QHSI:mode>): change VNX16_QHSI to VNX16_QHSDI.
+ (@pred_indexed_<order>store<VNX16_QHS:mode><VNX16_QHSDI:mode>): Ditto.
+
+2023-06-06 Pan Li <pan2.li@intel.com>
+
+ * config/riscv/vector-iterators.md: Fix typo in mode attr.
+
2023-06-05 Andre Vieira <andre.simoesdiasvieira@arm.com>
Joel Hutton <joel.hutton@arm.com>
diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP
index 7e14e0e..2e61d1d 100644
--- a/gcc/DATESTAMP
+++ b/gcc/DATESTAMP
@@ -1 +1 @@
-20230606
+20230607
diff --git a/gcc/c/ChangeLog b/gcc/c/ChangeLog
index 7e01681..d02017c 100644
--- a/gcc/c/ChangeLog
+++ b/gcc/c/ChangeLog
@@ -1,3 +1,16 @@
+2023-06-06 Kwok Cheung Yeung <kcy@codesourcery.com>
+ Tobias Burnus <tobias@codesourcery.com>
+
+ * c-parser.cc (c_parser_omp_clause_defaultmap,
+ c_parser_omp_clause_map): Parse 'present'.
+ (c_parser_omp_clause_to, c_parser_omp_clause_from): Remove.
+ (c_parser_omp_clause_from_to): New; parse to/from clauses with
+ optional present modifer.
+ (c_parser_omp_all_clauses): Update call.
+ (c_parser_omp_target_data, c_parser_omp_target_enter_data,
+ c_parser_omp_target_exit_data): Handle new map enum values
+ for 'present' mapping.
+
2023-05-30 Tobias Burnus <tobias@codesourcery.com>
PR c/109999
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 7f57c1a..d00a2aa 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,16 @@
+2023-06-06 Kwok Cheung Yeung <kcy@codesourcery.com>
+ Tobias Burnus <tobias@codesourcery.com>
+
+ * parser.cc (cp_parser_omp_clause_defaultmap,
+ cp_parser_omp_clause_map): Parse 'present'.
+ (cp_parser_omp_clause_from_to): New; parse to/from
+ clauses with optional 'present' modifier.
+ (cp_parser_omp_all_clauses): Update call.
+ (cp_parser_omp_target_data, cp_parser_omp_target_enter_data,
+ cp_parser_omp_target_exit_data): Handle new enum value for
+ 'present' mapping.
+ * semantics.cc (finish_omp_target): Likewise.
+
2023-06-04 Jason Merrill <jason@redhat.com>
PR c++/97720
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index ea22bff..26df2f5 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,23 @@
+2023-06-06 Kwok Cheung Yeung <kcy@codesourcery.com>
+ Tobias Burnus <tobias@codesourcery.com>
+
+ * dump-parse-tree.cc (show_omp_namelist): Display 'present' map
+ modifier.
+ (show_omp_clauses): Display 'present' motion modifier for 'to'
+ and 'from' clauses.
+ * gfortran.h (enum gfc_omp_map_op): Add entries with 'present'
+ modifiers.
+ (struct gfc_omp_namelist): Add 'present_modifer'.
+ * openmp.cc (gfc_match_motion_var_list): New, handles optional
+ 'present' modifier for to/from clauses.
+ (gfc_match_omp_clauses): Call it for to/from clauses; parse 'present'
+ in defaultmap and map clauses.
+ (resolve_omp_clauses): Allow 'present' modifiers on 'target',
+ 'target data', 'target enter' and 'target exit' directives.
+ * trans-openmp.cc (gfc_trans_omp_clauses): Apply 'present' modifiers
+ to tree node for 'map', 'to' and 'from' clauses. Apply 'present' for
+ defaultmap.
+
2023-06-02 Steve Kargl <kargl@gcc.gnu.org>
PR fortran/100607
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 326aede..f782b56 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,62 @@
+2023-06-06 Juzhe-Zhong <juzhe.zhong@rivai.ai>
+
+ * gcc.target/riscv/rvv/autovec/widen/widen-8.c: New test.
+ * gcc.target/riscv/rvv/autovec/widen/widen-9.c: New test.
+ * gcc.target/riscv/rvv/autovec/widen/widen-complicate-5.c: New test.
+ * gcc.target/riscv/rvv/autovec/widen/widen-complicate-6.c: New test.
+ * gcc.target/riscv/rvv/autovec/widen/widen_run-8.c: New test.
+ * gcc.target/riscv/rvv/autovec/widen/widen_run-9.c: New test.
+
+2023-06-06 Kwok Cheung Yeung <kcy@codesourcery.com>
+ Tobias Burnus <tobias@codesourcery.com>
+
+ * c-c++-common/gomp/map-6.c: Update dg-error, extend to test for
+ duplicated 'present' and extend scan-dump tests for 'present'.
+ * gfortran.dg/gomp/defaultmap-1.f90: Update dg-error.
+ * gfortran.dg/gomp/map-7.f90: Extend parse and dump test for
+ 'present'.
+ * gfortran.dg/gomp/map-8.f90: Extend for duplicate 'present'
+ modifier checking.
+ * c-c++-common/gomp/defaultmap-4.c: New test.
+ * c-c++-common/gomp/map-9.c: New test.
+ * c-c++-common/gomp/target-update-1.c: New test.
+ * gfortran.dg/gomp/defaultmap-8.f90: New test.
+ * gfortran.dg/gomp/map-11.f90: New test.
+ * gfortran.dg/gomp/map-12.f90: New test.
+ * gfortran.dg/gomp/target-update-1.f90: New test.
+
+2023-06-06 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
+
+ * gcc.target/aarch64/simd/vrshr_1.c: New test.
+
+2023-06-06 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
+
+ * gcc.target/aarch64/simd/pr99195_5.c: Add testing for shrn_n, rshrn_n
+ intrinsics.
+
+2023-06-06 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
+
+ * gcc.target/aarch64/simd/addlv_1.c: New test.
+
+2023-06-06 Richard Biener <rguenther@suse.de>
+
+ PR middle-end/110055
+ * g++.dg/warn/Wdangling-pointer-pr110055.C: New testcase.
+
+2023-06-06 Fei Gao <gaofei@eswincomputing.com>
+
+ * gcc.target/riscv/save-restore-cfi.c: New test to check save-restore
+ cfi directives.
+
+2023-06-06 Pan Li <pan2.li@intel.com>
+
+ * gcc.target/riscv/rvv/base/zvfh-intrinsic.c: Add new test cases.
+
+2023-06-06 Fei Gao <gaofei@eswincomputing.com>
+
+ * gcc.target/riscv/save-restore-cfi-2.c: New test to check machmode
+ for cfi reg/mem.
+
2023-06-05 Andre Vieira <andre.simoesdiasvieira@arm.com>
Joel Hutton <joel.hutton@arm.com>
Tamar Christina <tamar.christina@arm.com>
diff --git a/include/ChangeLog b/include/ChangeLog
index 52b3159..7ddfaeb 100644
--- a/include/ChangeLog
+++ b/include/ChangeLog
@@ -1,3 +1,17 @@
+2023-06-06 Kwok Cheung Yeung <kcy@codesourcery.com>
+ Tobias Burnus <tobias@codesourcery.com>
+
+ * gomp-constants.h (GOMP_MAP_FLAG_SPECIAL_5): New.
+ (GOMP_MAP_FLAG_FORCE): Redefine.
+ (GOMP_MAP_FLAG_PRESENT, GOMP_MAP_FLAG_ALWAYS_PRESENT): New.
+ (enum gomp_map_kind): Add map kinds with 'present' modifiers.
+ (GOMP_MAP_COPY_TO_P, GOMP_MAP_COPY_FROM_P): Evaluate to true for
+ map variants with 'present'
+ (GOMP_MAP_ALWAYS_TO_P, GOMP_MAP_ALWAYS_FROM_P): Evaluate to true
+ for map variants with 'always, present' modifiers.
+ (GOMP_MAP_ALWAYS): Redefine.
+ (GOMP_MAP_FORCE_P, GOMP_MAP_PRESENT_P): New.
+
2023-05-11 Joseph Myers <joseph@codesourcery.com>
PR middle-end/109128
diff --git a/libgomp/ChangeLog b/libgomp/ChangeLog
index 9f48beb..f924aee 100644
--- a/libgomp/ChangeLog
+++ b/libgomp/ChangeLog
@@ -1,3 +1,27 @@
+2023-06-06 Tobias Burnus <tobias@codesourcery.com>
+
+ * plugin/plugin-gcn.c (GOMP_OFFLOAD_get_num_devices): Regard
+ unified_address requirement as supported.
+ * libgomp.texi (OpenMP 5.0, AMD Radeon, nvptx): Remove
+ 'unified_address' from the not-supported requirements.
+
+2023-06-06 Kwok Cheung Yeung <kcy@codesourcery.com>
+ Tobias Burnus <tobias@codesourcery.com>
+
+ * libgomp.texi (OpenMP 5.1 Impl. status): Set 'present' support for
+ defaultmap to 'Y', add 'Y' entry for 'present' on to/from/map clauses.
+ * target.c (gomp_to_device_kind_p): Add map kinds with 'present'
+ modifier.
+ (gomp_map_vars_existing): Use new GOMP_MAP_FORCE_P macro.
+ (gomp_map_vars_internal, gomp_update, gomp_target_rev):
+ Emit runtime error if memory region not present.
+ * testsuite/libgomp.c-c++-common/target-present-1.c: New test.
+ * testsuite/libgomp.c-c++-common/target-present-2.c: New test.
+ * testsuite/libgomp.c-c++-common/target-present-3.c: New test.
+ * testsuite/libgomp.fortran/target-present-1.f90: New test.
+ * testsuite/libgomp.fortran/target-present-2.f90: New test.
+ * testsuite/libgomp.fortran/target-present-3.f90: New test.
+
2023-06-02 Thomas Schwinge <thomas@codesourcery.com>
PR testsuite/66005
diff --git a/libiberty/ChangeLog b/libiberty/ChangeLog
index d362426..59d7b58 100644
--- a/libiberty/ChangeLog
+++ b/libiberty/ChangeLog
@@ -1,3 +1,7 @@
+2023-06-06 Costas Argyris <costas.argyris@gmail.com>
+
+ * argv.c (writeargv): Simplify & remove gotos.
+
2023-06-05 Costas Argyris <costas.argyris@gmail.com>
* pex-win32.c: fix typos.
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 31c1704..aa14d62 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,92 @@
+2023-06-06 Jonathan Wakely <jwakely@redhat.com>
+
+ * testsuite/util/testsuite_abi.cc (check_version): Add
+ CXXABI_1.3.15 symver and make it the latestp. Remove
+ GLIBCXX_IEEE128_3.4.31 and GLIBCXX_LDBL_3.4.31 from latestp.
+
+2023-06-06 Jonathan Wakely <jwakely@redhat.com>
+ Jakub Jelinek <jakub@redhat.com>
+
+ PR libstdc++/104772
+ * include/std/limits: (numeric_limits<__float128>): Define
+ for __STRICT_ANSI__ as well.
+ * testsuite/18_support/numeric_limits/128bit.cc: Remove
+ check for __STRICT_ANSI__.
+
+2023-06-06 Jonathan Wakely <jwakely@redhat.com>
+
+ * configure.ac: Use AS_IF.
+ * configure: Regenerate.
+
+2023-06-06 Matthias Kretz <m.kretz@gsi.de>
+
+ PR libstdc++/109822
+ * include/experimental/bits/simd_builtin.h (_S_store): Rewrite
+ to avoid casts to other vector types. Implement store as
+ succession of power-of-2 sized memcpy to avoid PR90424.
+
+2023-06-06 Matthias Kretz <m.kretz@gsi.de>
+
+ PR libstdc++/110054
+ * include/experimental/bits/simd_builtin.h (_S_masked_store):
+ Call into deduced ABI's SimdImpl after conversion.
+ * include/experimental/bits/simd_x86.h (_S_masked_store_nocvt):
+ Don't use _mm_maskmoveu_si128. Use the generic fall-back
+ implementation. Also fix masked stores without SSE2, which
+ were not doing anything before.
+
+2023-06-06 Matthias Kretz <m.kretz@gsi.de>
+
+ * include/experimental/bits/simd.h (__bit_cast): Use
+ __gnu__::__vector_size__ instead of gnu::vector_size.
+
+2023-06-06 Jonathan Wakely <jwakely@redhat.com>
+
+ PR libstdc++/110139
+ * include/std/array (__array_traits<T, 0>::operator T*()): Make
+ conversion operator explicit.
+ (array::front): Use size_type as subscript operand.
+ (array::data): Use static_cast to make conversion explicit.
+ * testsuite/23_containers/array/element_access/110139.cc: New
+ test.
+
+2023-06-06 Joseph Faulls <Joseph.Faulls@imgtec.com>
+
+ * include/bits/locale_classes.tcc: Remove check for
+ codecvt<char8_t, char, mbstate_t> facet.
+
+2023-06-06 Jonathan Wakely <jwakely@redhat.com>
+
+ * src/filesystem/ops-common.h (do_copy_file) [O_CLOEXEC]: Set
+ close-on-exec flag on file descriptors.
+
+2023-06-06 Jonathan Wakely <jwakely@redhat.com>
+
+ PR libstdc++/108178
+ * src/filesystem/ops-common.h (do_copy_file): Check for empty
+ files by trying to read a character.
+ * testsuite/27_io/filesystem/operations/copy_file_108178.cc:
+ New test.
+
+2023-06-06 Jannik Glückert <jannik.glueckert@gmail.com>
+
+ * acinclude.m4 (_GLIBCXX_USE_COPY_FILE_RANGE): Define.
+ * config.h.in: Regenerate.
+ * configure: Regenerate.
+ * src/filesystem/ops-common.h (copy_file_copy_file_range):
+ Define new function.
+ (do_copy_file): Use it.
+
+2023-06-06 Jannik Glückert <jannik.glueckert@gmail.com>
+
+ * acinclude.m4 (_GLIBCXX_HAVE_LSEEK): Define.
+ * config.h.in: Regenerate.
+ * configure: Regenerate.
+ * src/filesystem/ops-common.h (copy_file_sendfile): Define new
+ function for sendfile logic. Loop to support large files. Skip
+ zero-length files.
+ (do_copy_file): Use it.
+
2023-06-04 Jason Merrill <jason@redhat.com>
PR c++/97720