[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();
`