Move PrependMainExecutablePath next to its only user.
authorRafael Espindola <rafael.espindola@gmail.com>
Fri, 14 Jun 2013 15:12:13 +0000 (15:12 +0000)
committerRafael Espindola <rafael.espindola@gmail.com>
Fri, 14 Jun 2013 15:12:13 +0000 (15:12 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183980 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/Support/SystemUtils.h
lib/Support/SystemUtils.cpp
tools/bugpoint/ToolRunner.cpp

index 399aee51eb7b0ccc1f43fce8dad52f1e16d254d2..d2d08b234272d3a3fd7166a5018fb7e3adbe3d29 100644 (file)
@@ -19,7 +19,6 @@
 
 namespace llvm {
   class raw_ostream;
-  namespace sys { class Path; }
 
 /// Determine if the raw_ostream provided is connected to a terminal. If so,
 /// generate a warning message to errs() advising against display of bitcode
@@ -30,15 +29,6 @@ bool CheckBitcodeOutputToConsole(
   bool print_warning = true     ///< Control whether warnings are printed
 );
 
-/// PrependMainExecutablePath - Prepend the path to the program being executed
-/// to \p ExeName, given the value of argv[0] and the address of main()
-/// itself. This allows us to find another LLVM tool if it is built in the same
-/// directory. An empty string is returned on error; note that this function
-/// just mainpulates the path and doesn't check for executability.
-/// @brief Find a named executable.
-sys::Path PrependMainExecutablePath(const std::string &ExeName,
-                                    const char *Argv0, void *MainAddr);
-
 } // End llvm namespace
 
 #endif
index b13b57114bf5cf22800a63729c7e07aebc3a7c1e..2036364dc51d99a58e02615b5a8261bdf809be99 100644 (file)
@@ -13,7 +13,6 @@
 //===----------------------------------------------------------------------===//
 
 #include "llvm/Support/SystemUtils.h"
-#include "llvm/Support/PathV1.h"
 #include "llvm/Support/Process.h"
 #include "llvm/Support/Program.h"
 #include "llvm/Support/raw_ostream.h"
@@ -32,25 +31,3 @@ bool llvm::CheckBitcodeOutputToConsole(raw_ostream &stream_to_check,
   }
   return false;
 }
-
-/// PrependMainExecutablePath - Prepend the path to the program being executed
-/// to \p ExeName, given the value of argv[0] and the address of main()
-/// itself. This allows us to find another LLVM tool if it is built in the same
-/// directory. An empty string is returned on error; note that this function
-/// just mainpulates the path and doesn't check for executability.
-/// @brief Find a named executable.
-sys::Path llvm::PrependMainExecutablePath(const std::string &ExeName,
-                                          const char *Argv0, void *MainAddr) {
-  // Check the directory that the calling program is in.  We can do
-  // this if ProgramPath contains at least one / character, indicating that it
-  // is a relative path to the executable itself.
-  sys::Path Result = sys::Path::GetMainExecutable(Argv0, MainAddr);
-  Result.eraseComponent();
-
-  if (!Result.isEmpty()) {
-    Result.appendComponent(ExeName);
-    Result.appendSuffix(sys::Path::GetEXESuffix());
-  }
-
-  return Result;
-}
index 0fea9788a61e422a5a6390989925c62e07eca7aa..a79248d3f7faf7b6f3ca325efaa31f7fdc0215dd 100644 (file)
@@ -230,6 +230,28 @@ int LLI::ExecuteProgram(const std::string &Bitcode,
 
 void AbstractInterpreter::anchor() { }
 
+/// Prepend the path to the program being executed
+/// to \p ExeName, given the value of argv[0] and the address of main()
+/// itself. This allows us to find another LLVM tool if it is built in the same
+/// directory. An empty string is returned on error; note that this function
+/// just mainpulates the path and doesn't check for executability.
+/// @brief Find a named executable.
+static sys::Path PrependMainExecutablePath(const std::string &ExeName,
+                                           const char *Argv0, void *MainAddr) {
+  // Check the directory that the calling program is in.  We can do
+  // this if ProgramPath contains at least one / character, indicating that it
+  // is a relative path to the executable itself.
+  sys::Path Result = sys::Path::GetMainExecutable(Argv0, MainAddr);
+  Result.eraseComponent();
+
+  if (!Result.isEmpty()) {
+    Result.appendComponent(ExeName);
+    Result.appendSuffix(sys::Path::GetEXESuffix());
+  }
+
+  return Result;
+}
+
 // LLI create method - Try to find the LLI executable
 AbstractInterpreter *AbstractInterpreter::createLLI(const char *Argv0,
                                                     std::string &Message,