[PATCH] D129301: [clang-offload-bundler][NFC] Library-ize ClangOffloadBundler (1/4)

Jacob Lambert via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Thu Jul 7 09:12:42 PDT 2022


lamb-j created this revision.
lamb-j added reviewers: kzhuravl, scott.linder, yaxunl.
Herald added a subscriber: mgorny.
Herald added a reviewer: alexander-shaposhnikov.
Herald added a project: All.
lamb-j requested review of this revision.
Herald added a reviewer: jdoerfert.
Herald added subscribers: cfe-commits, sstefan1.
Herald added a project: clang.

Lifting the core functionalities of the clang-offload-bundler into a
user-facing library/API. This will allow online and JIT compilers to
bundle and unbundle files without spawning a new process.

This NFC patch (1/4) lifts the classes and functions used to
implement the clang-offload-bundler into a separate
OffloadBundler.cpp, and defines three top-level API functions in
OfflaodBundler.h

  BundleFiles()
  UnbundleFiles()
  UnbundleArchives()

In successive patches, we aim to:

1. Refactor global command-line option variables (cl::opt, cl::list, cl::bool, etc.) out of the API and into a Config class that can be passed as a local argument.
2. Refactor dependence on the bundler executable path into an optional parameter
3. Move OffloadBundler.cpp and OffloadBundler.h into clang/lib/Driver and clang/include/clang/Driver


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D129301

Files:
  clang/tools/clang-offload-bundler/CMakeLists.txt
  clang/tools/clang-offload-bundler/ClangOffloadBundler.cpp
  clang/tools/clang-offload-bundler/OffloadBundler.cpp
  clang/tools/clang-offload-bundler/OffloadBundler.h

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D129301.442944.patch
Type: text/x-patch
Size: 72512 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20220707/72957909/attachment-0001.bin>


More information about the cfe-commits mailing list