[BOLT] Use getMainExecutable() (#126698) · llvm/llvm-project@c99d611 (original) (raw)

`@@ -173,24 +173,14 @@ void boltMode(int argc, char **argv) {

`

173

173

` }

`

174

174

`}

`

175

175

``

176

``

`-

static std::string GetExecutablePath(const char *Argv0) {

`

177

``

`-

SmallString<256> ExecutablePath(Argv0);

`

178

``

`-

// Do a PATH lookup if Argv0 isn't a valid path.

`

179

``

`-

if (!llvm::sys::fs::exists(ExecutablePath))

`

180

``

`-

if (llvm::ErrorOrstd::string P =

`

181

``

`-

llvm::sys::findProgramByName(ExecutablePath))

`

182

``

`-

ExecutablePath = *P;

`

183

``

`-

return std::string(ExecutablePath);

`

184

``

`-

}

`

185

``

-

186

176

`int main(int argc, char **argv) {

`

187

177

`// Print a stack trace if we signal out.

`

188

178

`sys::PrintStackTraceOnErrorSignal(argv[0]);

`

189

179

` PrettyStackTraceProgram X(argc, argv);

`

190

180

``

191

181

` llvm_shutdown_obj Y; // Call llvm_shutdown() on exit.

`

192

182

``

193

``

`-

std::string ToolPath = GetExecutablePath(argv[0]);

`

``

183

`+

std::string ToolPath = llvm::sys::fs::getMainExecutable(argv[0], nullptr);

`

194

184

``

195

185

`// Initialize targets and assembly printers/parsers.

`

196

186

`llvm::InitializeAllTargetInfos();

`