[HIP] Use argv[0] as the default choice for the Executable name.

The path produced by getMainExecutable() may not be the right one when the files are installed in
a symlinked tree and when the real location of llvm-objdump is in a different directory.

Given that clang-offload-bundler is invoked by clang, the driver already does the job figuring out
the right path (e.g. it pays attention to -no-canonical-prefixes).
Offload bundler should use it, instead of trying to figure out the path on its
own.

Differential Revision: https://reviews.llvm.org/D90436
This commit is contained in:
Artem Belevich 2020-10-29 15:19:06 -07:00
parent be86b6773b
commit cdbf6bfdc7
1 changed files with 3 additions and 1 deletions

View File

@ -1025,7 +1025,9 @@ int main(int argc, const char **argv) {
// Save the current executable directory as it will be useful to find other
// tools.
BundlerExecutable = sys::fs::getMainExecutable(argv[0], &BundlerExecutable);
BundlerExecutable = argv[0];
if (!llvm::sys::fs::exists(BundlerExecutable))
BundlerExecutable = sys::fs::getMainExecutable(argv[0], &BundlerExecutable);
if (llvm::Error Err = Unbundle ? UnbundleFiles() : BundleFiles()) {
reportError(std::move(Err));