]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
Daily bump.
authorGCC Administrator <gccadmin@gcc.gnu.org>
Wed, 25 May 2022 00:17:06 +0000 (00:17 +0000)
committerGCC Administrator <gccadmin@gcc.gnu.org>
Wed, 25 May 2022 00:17:06 +0000 (00:17 +0000)
gcc/ChangeLog
gcc/DATESTAMP
gcc/c/ChangeLog
gcc/cp/ChangeLog
gcc/d/ChangeLog
gcc/fortran/ChangeLog
gcc/testsuite/ChangeLog
include/ChangeLog
libgomp/ChangeLog

index 2e912a790dc01329a606fef546132c2daca30ac1..6267b7a691eae2fa15c3494d57f5b7bae4faa89c 100644 (file)
@@ -1,3 +1,276 @@
+2022-05-24  Eugene Rozenfeld  <erozen@microsoft.com>
+
+       * tree-vect-loop-manip.cc (vect_do_peeling): Save/restore profile
+       counts for the epilog loop.
+
+2022-05-24  Martin Sebor  <msebor@redhat.com>
+           Richard Biener  <rguenther@suse.de>
+
+       PR middle-end/105604
+       * gimple-ssa-sprintf.cc (set_aggregate_size_and_offset): Add comments.
+       (get_origin_and_offset_r): Remove null handling.  Handle variable array
+       sizes.
+       (get_origin_and_offset): Handle null argument here.  Simplify.
+       (alias_offset): Update comment.
+       * pointer-query.cc (field_at_offset): Update comment.  Handle members
+       of variable-length types.
+
+2022-05-24  Prathamesh Kulkarni  <prathamesh.kulkarni@linaro.org>
+
+       * target.def (vec_perm_const): Define new parameter op_mode and
+       update doc.
+       * doc/tm.texi: Regenerate.
+       * config/aarch64/aarch64.cc (aarch64_vectorize_vec_perm_const): Adjust
+       vec_perm_const hook to add new parameter op_mode and return false
+       if result and operand modes do not match.
+       * config/arm/arm.cc (arm_vectorize_vec_perm_const): Likewise.
+       * config/gcn/gcn.cc (gcn_vectorize_vec_perm_const): Likewise.
+       * config/ia64/ia64.cc (ia64_vectorize_vec_perm_const): Likewise.
+       * config/mips/mips.cc (mips_vectorize_vec_perm_const): Likewise.
+       * config/rs6000/rs6000.cc (rs6000_vectorize_vec_perm_const): Likewise
+       * config/s390/s390.cc (s390_vectorize_vec_perm_const): Likewise.
+       * config/sparc/sparc.cc (sparc_vectorize_vec_perm_const): Likewise.
+       * config/i386/i386-expand.cc (ix86_vectorize_vec_perm_const): Likewise.
+       * config/i386/i386-expand.h (ix86_vectorize_vec_perm_const): Adjust
+       prototype.
+       * config/i386/sse.md (ashrv4di3): Adjust call to vec_perm_const hook.
+       (ashrv2di3): Likewise.
+       * optabs.cc (expand_vec_perm_const): Likewise.
+       * optabs-query.h (can_vec_perm_const_p): Adjust prototype.
+       * optabs-query.cc (can_vec_perm_const_p): Define new parameter
+       op_mode and pass it to vec_perm_const hook.
+       (can_mult_highpart_p): Adjust call to can_vec_perm_const_p.
+       * match.pd (vec_perm X Y CST): Likewise.
+       * tree-ssa-forwprop.cc (simplify_vector_constructor): Likewise.
+       * tree-vect-data-refs.cc (vect_grouped_store_supported): Likewise.
+       (vect_grouped_load_supported): Likewise.
+       (vect_shift_permute_load_chain): Likewise.
+       * tree-vect-generic.cc (lower_vec_perm): Likewise.
+       * tree-vect-loop-manip.cc (interleave_supported_p): Likewise.
+       * tree-vect-loop.cc (have_whole_vector_shift): Likewise.
+       * tree-vect-patterns.cc (vect_recog_rotate_pattern): Likewise.
+       * tree-vect-slp.cc (can_duplicate_and_interleave_p): Likewise.
+       (vect_transform_slp_perm_load): Likewise.
+       (vectorizable_slp_permutation): Likewise.
+       * tree-vect-stmts.cc (perm_mask_for_reverse): Likewise.
+       (vectorizable_bswap): Likewise.
+       (scan_store_can_perm_p): Likewise.
+       (vect_gen_perm_mask_checked): Likewise.
+
+2022-05-24  H.J. Lu  <hjl.tools@gmail.com>
+
+       PR target/104816
+       * config/i386/i386.opt: Remove Undocumented.
+       * doc/invoke.texi: Document -mcet-switch.
+
+2022-05-24  Andrew Stubbs  <ams@codesourcery.com>
+
+       * config.gcc (amdgcn): Accept --with-arch=gfx908 and gfx90a.
+       * config/gcn/gcn-opts.h (enum gcn_isa): New.
+       (TARGET_GCN3): Use enum gcn_isa.
+       (TARGET_GCN3_PLUS): Likewise.
+       (TARGET_GCN5): Likewise.
+       (TARGET_GCN5_PLUS): Likewise.
+       (TARGET_CDNA1): New.
+       (TARGET_CDNA1_PLUS): New.
+       (TARGET_CDNA2): New.
+       (TARGET_CDNA2_PLUS): New.
+       (TARGET_M0_LDS_LIMIT): New.
+       (TARGET_PACKED_WORK_ITEMS): New.
+       * config/gcn/gcn.cc (gcn_isa): Change to enum gcn_isa.
+       (gcn_option_override): Recognise CDNA ISA variants.
+       (gcn_omp_device_kind_arch_isa): Support gfx90a.
+       (gcn_expand_prologue): Make m0 init optional.
+       Add support for packed work items.
+       (output_file_start): Support gfx90a.
+       (gcn_hsa_declare_function_name): Support gfx90a metadata.
+       * config/gcn/gcn.h (TARGET_CPU_CPP_BUILTINS):Add __CDNA1__ and
+       __CDNA2__.
+       * config/gcn/gcn.md (<su>mulsi3_highpart): Use TARGET_GCN5_PLUS.
+       (<su>mulsi3_highpart_imm): Likewise.
+       (<su>mulsidi3): Likewise.
+       (<su>mulsidi3_imm): Likewise.
+       * config/gcn/gcn.opt (gpu_type): Add gfx90a.
+       * config/gcn/mkoffload.cc (EF_AMDGPU_MACH_AMDGCN_GFX90a): New.
+       (main): Support gfx90a.
+       * config/gcn/t-gcn-hsa: Add gfx90a multilib.
+       * config/gcn/t-omp-device: Add gfx90a isa.
+
+2022-05-24  Andrew Stubbs  <ams@codesourcery.com>
+
+       * config.in: Regenerate.
+       * config/gcn/gcn-hsa.h (X_FIJI): Delete.
+       (X_900): Delete.
+       (X_906): Delete.
+       (X_908): Delete.
+       (S_FIJI): Delete.
+       (S_900): Delete.
+       (S_906): Delete.
+       (S_908): Delete.
+       (NO_XNACK): New macro.
+       (NO_SRAM_ECC): New macro.
+       (SRAMOPT): Keep only v4 variant.
+       (HSACO3_SELECT_OPT): Delete.
+       (DRIVER_SELF_SPECS): Delete.
+       (ASM_SPEC): Remove LLVM 9 support.
+       * config/gcn/gcn-valu.md
+       (gather<mode>_insn_2offsets<exec>): Remove assembler bug workaround.
+       (scatter<mode>_insn_2offsets<exec_scatter>): Likewise.
+       * config/gcn/gcn.cc (output_file_start): Remove LLVM 9 support.
+       (print_operand_address): Remove assembler bug workaround.
+       * config/gcn/mkoffload.cc (EF_AMDGPU_XNACK_V3): Delete.
+       (EF_AMDGPU_SRAM_ECC_V3): Delete.
+       (SET_XNACK_ON): Delete v3 variants.
+       (SET_XNACK_OFF): Delete v3 variants.
+       (TEST_XNACK): Delete v3 variants.
+       (SET_SRAM_ECC_ON): Delete v3 variants.
+       (SET_SRAM_ECC_ANY): Delete v3 variants.
+       (SET_SRAM_ECC_OFF): Delete v3 variants.
+       (SET_SRAM_ECC_UNSUPPORTED): Delete v3 variants.
+       (TEST_SRAM_ECC_ANY): Delete v3 variants.
+       (TEST_SRAM_ECC_ON): Delete v3 variants.
+       (copy_early_debug_info): Remove v3 support.
+       (main): Remove v3 support.
+       * configure: Regenerate.
+       * configure.ac: Replace all GCN feature checks with a version check.
+
+2022-05-24  Roger Sayle  <roger@nextmovesoftware.com>
+
+       * config/i386/i386.md (peephole2): Convert xor;neg;adc;neg,
+       i.e. a double word negation of a zero extended operand, to
+       neg;sbb.
+
+2022-05-24  Roger Sayle  <roger@nextmovesoftware.com>
+
+       PR tree-optimization/105668
+       * config/i386/i386-expand.cc (ix86_expand_sse_movcc): Support
+       V1TImode, just like V2DImode.
+       * config/i386/sse.md (vcond_mask_<mode><sseintvecmodelower>):
+       Use VI_128 mode iterator instead of VI124_128 to include V2DI.
+       (vcond_mask_v2div2di): Delete.
+       (vcond_mask_v1tiv1ti): New define_expand.
+
+2022-05-24  Roger Sayle  <roger@nextmovesoftware.com>
+
+       * genpreds.cc (write_lookup_constraint_1): Avoid generating a call
+       to strncmp for strings of length one.
+
+2022-05-24  ShiYulong  <shiyulong@iscas.ac.cn>
+
+       * config/riscv/predicates.md (imm5_operand): Add a new operand type for
+       prefetch instructions.
+       * config/riscv/riscv-builtins.cc (AVAIL): Add new AVAILs for CMO ISA
+       Extensions.
+       (RISCV_ATYPE_SI): New.
+       (RISCV_ATYPE_DI): New.
+       * config/riscv/riscv-ftypes.def (0): New.
+       (1): New.
+       * config/riscv/riscv.md (riscv_clean_<mode>): New.
+       (riscv_flush_<mode>): New.
+       (riscv_inval_<mode>): New.
+       (riscv_zero_<mode>): New.
+       (prefetch): New.
+       (riscv_prefetchi_<mode>): New.
+       * config/riscv/riscv-cmo.def: New file.
+
+2022-05-24  ShiYulong  <shiyulong@iscas.ac.cn>
+
+       * common/config/riscv/riscv-common.cc: Add zicbom, zicboz, zicbop extensions.
+       * config/riscv/riscv-opts.h (MASK_ZICBOZ): New.
+       (MASK_ZICBOM): New.
+       (MASK_ZICBOP): New.
+       (TARGET_ZICBOZ): New.
+       (TARGET_ZICBOM): New.
+       (TARGET_ZICBOP): New.
+       * config/riscv/riscv.opt (riscv_zicmo_subext): New.
+
+2022-05-24  David Malcolm  <dmalcolm@redhat.com>
+
+       * tree-vect-slp-patterns.cc: Add "final" and "override" to
+       vect_pattern::build impls as appropriate.
+
+2022-05-24  David Malcolm  <dmalcolm@redhat.com>
+
+       * ipa-cp.cc: Add "final" and "override" to call_summary_base vfunc
+       implementations, removing redundant "virtual" as appropriate.
+       * ipa-fnsummary.h: Likewise.
+       * ipa-modref.cc: Likewise.
+       * ipa-param-manipulation.cc: Likewise.
+       * ipa-profile.cc: Likewise.
+       * ipa-prop.h: Likewise.
+       * ipa-pure-const.cc: Likewise.
+       * ipa-reference.cc: Likewise.
+       * ipa-sra.cc: Likewise.
+       * symbol-summary.h: Likewise.
+       * symtab-thunks.cc: Likewise.
+
+2022-05-24  Martin Liska  <mliska@suse.cz>
+
+       Revert:
+       2022-05-24  Martin Liska  <mliska@suse.cz>
+
+       * expmed.cc (emit_store_flag_1): Mitigate -Wmaybe-uninitialized
+       warning.
+
+2022-05-24  Martin Liska  <mliska@suse.cz>
+
+       * expmed.cc (emit_store_flag_1): Mitigate -Wmaybe-uninitialized
+       warning.
+
+2022-05-24  Bruno Haible  <bruno@clisp.org>
+
+       PR other/105527
+       * doc/install.texi (Configuration): Add more details about --with-zstd.
+       Document --with-zstd-include and --with-zstd-lib
+
+2022-05-24  Richard Biener  <rguenther@suse.de>
+
+       PR middle-end/105711
+       * expmed.cc (extract_bit_field_as_subreg): Add op0_mode parameter
+       and use it.
+       (extract_bit_field_1): Pass down the mode of op0 to
+       extract_bit_field_as_subreg.
+
+2022-05-24  Vineet Gupta  <vineetg@rivosinc.com>
+
+       * config/riscv/riscv.cc: (struct riscv_tune_param): Add
+         fmv_cost.
+       (rocket_tune_info): Add default fmv_cost 8.
+       (sifive_7_tune_info): Ditto.
+       (thead_c906_tune_info): Ditto.
+       (optimize_size_tune_info): Ditto.
+       (riscv_register_move_cost): Use fmv_cost for int<->fp moves.
+
+2022-05-24  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c/105378
+       * omp-builtins.def (BUILT_IN_GOMP_TASKWAIT_DEPEND_NOWAIT): New
+       builtin.
+       * gimplify.cc (gimplify_omp_task): Diagnose taskwait with nowait
+       clause but no depend clauses.
+       * omp-expand.cc (expand_taskwait_call): Use
+       BUILT_IN_GOMP_TASKWAIT_DEPEND_NOWAIT rather than
+       BUILT_IN_GOMP_TASKWAIT_DEPEND if nowait clause is present.
+
+2022-05-24  Richard Biener  <rguenther@suse.de>
+
+       PR tree-optimization/100221
+       * tree-ssa-dse.cc (contains_phi_arg): New function.
+       (dse_classify_store): Postpone PHI defs that feed another PHI in defs.
+
+2022-05-24  Richard Biener  <rguenther@suse.de>
+
+       PR tree-optimization/105629
+       * tree-ssa-phiopt.cc (spaceship_replacement): Allow
+       a sign-extending conversion.
+
+2022-05-24  Kewen Lin  <linkw@linux.ibm.com>
+
+       PR target/105627
+       * config/rs6000/rs6000-p8swap.cc (union_defs): Assert def_insn can't
+       be a debug insn.
+       (union_uses): Skip debug use_insn.
+
 2022-05-23  Vineet Gupta  <vineetg@rivosinc.com>
 
        * config/riscv/predicates.md (const_0_operand): Remove
index 7d93d3872a34f2fbb5392498d18eff667ceb2047..a0acbbdde3344b6a8c546e2025b321c752667bd9 100644 (file)
@@ -1 +1 @@
-20220524
+20220525
index 00e236c9ae2ad6b71da59e62f2e43cf5b162035c..a886254bca1303ae42a3d89ed7eeb4e57027d371 100644 (file)
@@ -1,3 +1,8 @@
+2022-05-24  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c/105378
+       * c-parser.cc (OMP_TASKWAIT_CLAUSE_MASK): Add nowait clause.
+
 2022-05-18  Marek Polacek  <polacek@redhat.com>
 
        PR c/105131
index e4788beb5436f80ce6483ecbbadd337ed9a46616..42d57c2e3bdb844f2a106d38c61b37e1821f7950 100644 (file)
@@ -1,3 +1,57 @@
+2022-05-24  Jason Merrill  <jason@redhat.com>
+
+       * constexpr.cc (cxx_fold_indirect_ref): Add default arg.
+       (cxx_eval_call_expression): Call it.
+       (cxx_fold_indirect_ref_1): Handle null empty_base.
+
+2022-05-24  Jason Merrill  <jason@redhat.com>
+
+       * constexpr.cc (enum value_cat): New. Change all 'lval' parameters
+       from int to value_cat.  Change most false to vc_prvalue, most true
+       to vc_glvalue, cases where the return value is ignored to
+       vc_discard.
+       (cxx_eval_statement_list): Only vc_prvalue for stmt-expr result.
+       (cxx_eval_store_expression): Only build _REF for vc_glvalue.
+       (cxx_eval_array_reference, cxx_eval_component_reference)
+       (cxx_eval_indirect_ref, cxx_eval_constant_expression): Likewise.
+
+2022-05-24  Jason Merrill  <jason@redhat.com>
+
+       PR c++/105622
+       * constexpr.cc (cxx_eval_store_expression): Adjust assert.
+       Use initialized_type.
+
+2022-05-24  Patrick Palka  <ppalka@redhat.com>
+
+       * cp-tree.h (any_template_arguments_need_structural_equality_p):
+       Declare.
+       * pt.cc (struct ctp_hasher): Define.
+       (ctp_table): Define.
+       (canonical_type_parameter): Use it.
+       (process_template_parm): Set TYPE_CANONICAL for
+       TEMPLATE_TEMPLATE_PARM too.
+       (lookup_template_class_1): Remove now outdated comment for the
+       any_template_arguments_need_structural_equality_p test.
+       (tsubst) <case TEMPLATE_TEMPLATE_PARM, etc>: Don't specifically
+       clear TYPE_CANONICAL for ttps.  Set TYPE_CANONICAL on the
+       substituted type later.
+       (any_template_arguments_need_structural_equality_p): Return
+       true for any_targ_node.  Don't return true just because a
+       template argument uses structural equality.  Add comment for
+       the PARM_DECL special case.
+       (rewrite_template_parm): Set TYPE_CANONICAL on the rewritten
+       parm's type later.
+       * tree.cc (bind_template_template_parm): Set TYPE_CANONICAL
+       when safe to do so.
+       * typeck.cc (structural_comptypes) [check_alias]: Increment
+       processing_template_decl before checking
+       dependent_alias_template_spec_p.
+
+2022-05-24  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c/105378
+       * parser.cc (OMP_TASKWAIT_CLAUSE_MASK): Add nowait clause.
+
 2022-05-20  David Malcolm  <dmalcolm@redhat.com>
 
        * cxx-pretty-print.h: Replace uses of "FINAL" and "OVERRIDE" with
index d3ac0bc1f62d243c1e8e6e40fe591e833ae380bf..8b3f8c2f3fffa3793e3343555d6e6de23d733816 100644 (file)
@@ -1,3 +1,12 @@
+2022-05-24  David Malcolm  <dmalcolm@redhat.com>
+
+       * decl.cc: Add "final" and "override" to all "visit" vfunc decls
+       as appropriate.
+       * expr.cc: Likewise.
+       * toir.cc: Likewise.
+       * typeinfo.cc: Likewise.
+       * types.cc: Likewise.
+
 2022-05-16  Iain Buclaw  <ibuclaw@gdcproject.org>
 
        * dmd/MERGE: Merge upstream dmd 60bfa0ee7.
index dce150a570000d0bfe7a5415ab5f8271b2b4ffbf..3cffe47a16a286d6838e8ebeed79f2db90ba0045 100644 (file)
@@ -1,3 +1,8 @@
+2022-05-24  Tobias Burnus  <tobias@codesourcery.com>
+
+       PR c/105378
+       * openmp.cc (gfc_match_omp_taskwait): Accept nowait.
+
 2022-05-23  Tobias Burnus  <tobias@codesourcery.com>
 
        PR fortran/104949
index c6b33deb5173fdfd1833460fa1f64a836730efeb..493e2a9767774788213c95452e551e550ac9d672 100644 (file)
@@ -1,3 +1,79 @@
+2022-05-24  Martin Sebor  <msebor@redhat.com>
+           Richard Biener  <rguenther@suse.de>
+
+       PR middle-end/105604
+       * gcc.dg/Wrestrict-24.c: New test.
+       * gcc.dg/Wrestrict-25.c: New test.
+       * gcc.dg/Wrestrict-26.c: New test.
+
+2022-05-24  Joel Brobecker  <brobecker@adacore.com>
+
+       * gcc.misc-tests/outputs.exp: Make the -gsplit-dwarf test
+       a compile-and-link test rather than a compile-only test.
+
+2022-05-24  Jason Merrill  <jason@redhat.com>
+
+       PR c++/105622
+       * g++.dg/cpp2a/no_unique_address14.C: New test.
+
+2022-05-24  Roger Sayle  <roger@nextmovesoftware.com>
+
+       * gcc.target/i386/neg-zext-1.c: New test case for -m32.
+       * gcc.target/i386/neg-zext-2.c: New test case for -m64.
+
+2022-05-24  Roger Sayle  <roger@nextmovesoftware.com>
+
+       PR tree-optimization/105668
+       * gcc.target/i386/pr105668.c: New test case.
+
+2022-05-24  Patrick Palka  <ppalka@redhat.com>
+
+       * g++.dg/cpp0x/constexpr-52830a.C: New test.
+
+2022-05-24  ShiYulong  <shiyulong@iscas.ac.cn>
+
+       * gcc.target/riscv/cmo-zicbom-1.c: New test.
+       * gcc.target/riscv/cmo-zicbom-2.c: New test.
+       * gcc.target/riscv/cmo-zicbop-1.c: New test.
+       * gcc.target/riscv/cmo-zicbop-2.c: New test.
+       * gcc.target/riscv/cmo-zicboz-1.c: New test.
+       * gcc.target/riscv/cmo-zicboz-2.c: New test.
+
+2022-05-24  Richard Biener  <rguenther@suse.de>
+
+       PR middle-end/105711
+       * gcc.target/i386/pr105711.c: New testcase.
+
+2022-05-24  Tobias Burnus  <tobias@codesourcery.com>
+
+       PR c/105378
+       * gfortran.dg/gomp/taskwait-depend-nowait-1.f90: New.
+
+2022-05-24  Vineet Gupta  <vineetg@rivosinc.com>
+
+       * gcc.target/riscv/pr105666.c: New test.
+
+2022-05-24  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c/105378
+       * c-c++-common/gomp/taskwait-depend-nowait-1.c: New test.
+
+2022-05-24  Richard Biener  <rguenther@suse.de>
+
+       PR tree-optimization/100221
+       * gcc.dg/tree-ssa/ssa-dse-44.c: New testcase.
+       * gcc.dg/tree-ssa/ssa-dse-45.c: Likewise.
+
+2022-05-24  Kewen Lin  <linkw@linux.ibm.com>
+
+       PR testsuite/105706
+       * gcc.target/powerpc/pr78604.c: Adjust.
+
+2022-05-24  Kewen Lin  <linkw@linux.ibm.com>
+
+       PR target/105627
+       * gcc.target/powerpc/pr105627.c: New test.
+
 2022-05-23  H.J. Lu  <hjl.tools@gmail.com>
 
        PR target/104441
index 2671ad8861544e9cfd88d27506b978c031b45341..787f70b6ded47bf80f4f82b316fef6f9d6ecc2ce 100644 (file)
@@ -1,3 +1,7 @@
+2022-05-24  David Malcolm  <dmalcolm@redhat.com>
+
+       * ansidecl.h: Drop macros OVERRIDE and FINAL.
+
 2022-05-23  Nathan Sidwell  <nathan@acm.org>
 
        * demangle.h (enum demangle_component_type): Add module components.
index 3b61d22d6db249759bb32aa6950284c1986cfda1..a885da7f000911216ae57d1faca0e38c7e1cc297 100644 (file)
@@ -1,3 +1,31 @@
+2022-05-24  Andrew Stubbs  <ams@codesourcery.com>
+
+       * plugin/plugin-gcn.c (EF_AMDGPU_MACH): Add
+       EF_AMDGPU_MACH_AMDGCN_GFX90a.
+       (gcn_gfx90a_s): New.
+       (isa_hsa_name): Support gfx90a.
+       (isa_code): Likewise.
+
+2022-05-24  Tobias Burnus  <tobias@codesourcery.com>
+
+       PR c/105378
+       * libgomp.texi (OpenMP 5.1): Set 'taskwait nowait' to 'Y'.
+       * testsuite/libgomp.fortran/taskwait-depend-nowait-1.f90: New.
+
+2022-05-24  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c/105378
+       * libgomp_g.h (GOMP_taskwait_depend_nowait): Declare.
+       * libgomp.map (GOMP_taskwait_depend_nowait): Export at GOMP_5.1.1.
+       * task.c (empty_task): New function.
+       (gomp_task_run_post_handle_depend_hash): Declare earlier.
+       (gomp_task_run_post_handle_depend): Declare.
+       (GOMP_task): Optimize fn == empty_task if there is nothing to wait
+       for.
+       (gomp_task_run_post_handle_dependers): Optimize task->fn == empty_task.
+       (GOMP_taskwait_depend_nowait): New function.
+       * testsuite/libgomp.c-c++-common/taskwait-depend-nowait-1.c: New test.
+
 2022-05-23  Tobias Burnus  <tobias@codesourcery.com>
 
        PR fortran/104949