]> git.ipfire.org Git - thirdparty/gcc.git/commit
openmp: Add support for streaming metadirectives and resolving them after LTO
authorKwok Cheung Yeung <kcy@codesourcery.com>
Tue, 25 Jan 2022 18:49:44 +0000 (10:49 -0800)
committerKwok Cheung Yeung <kcy@codesourcery.com>
Tue, 28 Jun 2022 20:53:28 +0000 (13:53 -0700)
commit568a9a64df46cc04266b6c0b584b9b90cd90d2bb
treeafd131da13dbef0b6ea37ed7c644d6288abd5077
parentd1e6d779001bdac5eab3080fd5d0fa7cfe85a6b4
openmp: Add support for streaming metadirectives and resolving them after LTO

This patch adds support for streaming metadirective Gimple statements during
LTO, and adds a metadirective expansion pass that runs after LTO.  This is
required for metadirectives with selectors that can only be resolved from
within the accel compiler.

2022-01-25  Kwok Cheung Yeung  <kcy@codesourcery.com>

gcc/
* Makefile.in (OBJS): Add omp-expand-metadirective.o.
* gimple-streamer-in.cc (input_gimple_stmt): Add case for
GIMPLE_OMP_METADIRECTIVE.  Handle metadirective labels.
* gimple-streamer-out.cc (output_gimple_stmt): Likewise.
* omp-expand-metadirective.cc: New.
* passes.def: Add pass_omp_expand_metadirective.
* tree-pass.h (make_pass_omp_expand_metadirective): New prototype.
gcc/ChangeLog.omp
gcc/Makefile.in
gcc/gimple-streamer-in.cc
gcc/gimple-streamer-out.cc
gcc/omp-expand-metadirective.cc [new file with mode: 0644]
gcc/passes.def
gcc/tree-pass.h