I've now pushed the 3 big patches that set up the new infrastructure
for metadirectives and dynamic selectors.  Part 4 of the previous
version of the series (labeled "v5") has already been approved and
pushed, and I'll be reposting the remaining 5 not-yet-approved parts
that add the user-visible support for metadirectives soon.

Many thanks to Tobias for iterating with me on these patches, and for
Jakub for his review of an earlier version.

The first version of the metadirective patches was posted back in
December 2021.  The patch set then languished for quite a while before
I picked it up just over a year ago, and since then one of the big
challenges I've had is just keeping up with bit-rot and resolving
conflicts with other upstream OpenMP commits, while my own out-of-tree
patch set kept getting bigger as I found more bugs or had to rework
things in more invasive ways.  So I'm *very* relieved at getting the
most complicated parts of the set in, finally.  There are still bugs
and incomplete functionality, but spending less time on resolving
merge conflicts means more time for fixing those issues.

-Sandra

Sandra Loosemore (3):
  OpenMP: New tree nodes for metadirective and dynamic selector support.
  OpenMP: Re-work and extend context selector resolution
  OpenMP: Remove dead code from declare variant reimplementation

 gcc/Makefile.in                               |    2 +-
 gcc/c/c-parser.cc                             |    4 +-
 gcc/cgraph.cc                                 |    2 -
 gcc/cgraph.h                                  |   12 +-
 gcc/cgraphclones.cc                           |    2 +-
 gcc/cp/decl.cc                                |    2 +-
 gcc/cp/parser.cc                              |    2 +-
 gcc/doc/generic.texi                          |   63 +
 gcc/fold-const.cc                             |    2 +
 gcc/fortran/trans-openmp.cc                   |    5 +-
 gcc/gimple-expr.cc                            |    5 +
 gcc/gimple.cc                                 |    4 +-
 gcc/gimplify.cc                               |  653 ++++-
 gcc/gimplify.h                                |    2 +-
 gcc/ipa-free-lang-data.cc                     |    2 +-
 gcc/ipa.cc                                    |    3 -
 gcc/lto-cgraph.cc                             |   12 +-
 gcc/lto-streamer-out.cc                       |    3 +-
 gcc/lto-streamer.h                            |    6 -
 gcc/lto/lto-partition.cc                      |    5 +-
 gcc/omp-builtins.def                          |    2 +
 gcc/omp-expand.cc                             |    6 +-
 gcc/omp-general.cc                            | 2421 ++++++++++-------
 gcc/omp-general.h                             |   45 +-
 gcc/omp-offload.cc                            |   97 +-
 gcc/omp-simd-clone.cc                         |    4 +-
 gcc/passes.cc                                 |    3 +-
 gcc/symtab.cc                                 |    2 +-
 .../c-c++-common/gomp/declare-variant-12.c    |   14 +-
 .../c-c++-common/gomp/declare-variant-13.c    |    4 +-
 .../c-c++-common/gomp/declare-variant-14.c    |    2 +-
 .../gfortran.dg/gomp/declare-variant-12.f90   |   14 +-
 .../gfortran.dg/gomp/declare-variant-13.f90   |   23 +-
 .../gfortran.dg/gomp/declare-variant-14.f90   |   16 +-
 gcc/tree-cfg.cc                               |    1 +
 gcc/tree-inline.cc                            |   15 +-
 gcc/tree-pretty-print.cc                      |   81 +
 gcc/tree-ssa-operands.cc                      |    4 +
 gcc/tree.def                                  |   34 +
 gcc/tree.h                                    |   22 +
 40 files changed, 2382 insertions(+), 1219 deletions(-)

-- 
2.34.1

Reply via email to