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-TargetID>.
Targets can be specified with and without using TargetID.
Entries in input archive can be of any binary type which is
supported by clang-offload-bundler, like *.o,*.bc, etc. 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