aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Frontend/CompilerInvocation.cpp
diff options
context:
space:
mode:
authorJoel E. Denny <jdenny.ornl@gmail.com>2024-07-11 11:41:34 -0400
committerGitHub <noreply@github.com>2024-07-11 11:41:34 -0400
commit90ccf2187332ff900d46a58a27cb0353577d37cb (patch)
tree2305a0c5fcc4d6b9c82532656ee86a65e9e5a9c9 /clang/lib/Frontend/CompilerInvocation.cpp
parent22a7f6dcc4fc83f80f81722ab9c83b6fa73416f8 (diff)
downloadllvm-90ccf2187332ff900d46a58a27cb0353577d37cb.zip
llvm-90ccf2187332ff900d46a58a27cb0353577d37cb.tar.gz
llvm-90ccf2187332ff900d46a58a27cb0353577d37cb.tar.bz2
[LinkerWrapper] Extend with usual pass options (#96704)
The goal of this patch is to enable utilizing LLVM plugin passes and remarks for GPU offload code at link time. Specifically, this patch extends clang-linker-wrapper's `--offload-opt` (and consequently `-mllvm`) to accept the various LLVM pass options that tools like opt usually accept. Those options include `--passes`, `--load-pass-plugin`, and various remarks options. Unlike many other LLVM options that are inherited from linked code by clang-linker-wrapper (e.g., `-pass-remarks` is already implemented in `llvm/lib/IR/DiagnosticHandler.cpp`), these options are implemented separately as needed by each tool (e.g., opt, llc). Fortunately, this patch is able to handle most of the implementation by passing the option values to `lto::Config`. For testing plugin support, this patch uses the simple `Bye` plugin from LLVM core, but that requires several small Clang test suite config extensions.
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions