[all-commits] [llvm/llvm-project] f7ce53: [clang-offload-bundler] Add unbundling of archives...

Saiyedul Islam via All-commits all-commits at lists.llvm.org
Wed Jun 30 05:26:28 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: f7ce532d622dc26eddd25f87faec0ff35dc0c2e9
      https://github.com/llvm/llvm-project/commit/f7ce532d622dc26eddd25f87faec0ff35dc0c2e9
  Author: Saiyedul Islam <Saiyedul.Islam at amd.com>
  Date:   2021-06-30 (Wed, 30 Jun 2021)

  Changed paths:
    M clang/docs/ClangOffloadBundler.rst
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/clang-offload-bundler.c
    M clang/test/Driver/hip-rdc-device-only.hip
    M clang/test/Driver/hip-toolchain-rdc-separate.hip
    M clang/tools/clang-offload-bundler/ClangOffloadBundler.cpp

  Log Message:
  -----------
  [clang-offload-bundler] Add unbundling of archives containing bundled object files into device specific archives

This patch adds unbundling support of an archive file. It takes an
archive file along with a set of offload targets as input.
Output is a device specific archive for each given offload target.
Input archive contains bundled code objects bundled using
clang-offload-bundler. Each generated device specific archive contains
a set of device code object files which are named as
<Parent Bundle Name>-<CodeObject-GPUArch>.

Entries in input archive can be of any binary type which is
supported by clang-offload-bundler, like *.bc. Output archives will
contain files in same type.

Example Usuage:
  clang-offload-bundler --unbundle --inputs=lib-generic.a -type=a
      -targets=openmp-amdgcn-amdhsa--gfx906,openmp-amdgcn-amdhsa--gfx908
      -outputs=devicelib-gfx906.a,deviceLib-gfx908.a

Reviewed By: jdoerfert, yaxunl

Differential Revision: https://reviews.llvm.org/D93525




More information about the All-commits mailing list