aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Transforms/Utils/LoopUtils.cpp
diff options
context:
space:
mode:
authorJacob Lambert <jacob.lambert@amd.com>2022-07-14 17:00:26 -0700
committerJacob Lambert <jacob.lambert@amd.com>2022-07-27 11:54:38 -0700
commit0f3f357e26cfdb887866215b234138e66fd0c4c9 (patch)
tree7ac05f241a9e03506d5eba9c81f3e8b9061bcb2b /llvm/lib/Transforms/Utils/LoopUtils.cpp
parent68901fdbebb73617067cbab9888364ba9f8a2843 (diff)
downloadllvm-0f3f357e26cfdb887866215b234138e66fd0c4c9.zip
llvm-0f3f357e26cfdb887866215b234138e66fd0c4c9.tar.gz
llvm-0f3f357e26cfdb887866215b234138e66fd0c4c9.tar.bz2
[clang-offload-bundler] Library-ize ClangOffloadBundler
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 patch 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() This patch also introduces a Config class that locally stores the previously global cl::opt options and arrays to allow users to call the APIs in a multi-threaded context, and introduces an OffloadBundler class to encapsulate the top-level API functions. We also lift the BundlerExecutable variable, which is specific to the clang-offload-bundler tool, from the API, and replace its use with an ObjcopyPath variable. This variable must be set in order to internally call llvm-objcopy. Finally, we move the API files from clang/tools/clang-offload-bundler into clang/lib/Driver and clang/include/clang/Driver. Differential Revision: https://reviews.llvm.org/D129873
Diffstat (limited to 'llvm/lib/Transforms/Utils/LoopUtils.cpp')
0 files changed, 0 insertions, 0 deletions