aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/llvm/System/Path.h6
-rw-r--r--lib/System/Unix/Path.inc4
-rw-r--r--lib/System/Win32/Path.inc5
3 files changed, 15 insertions, 0 deletions
diff --git a/include/llvm/System/Path.h b/include/llvm/System/Path.h
index ef7c087bb7..c13f2e8d6c 100644
--- a/include/llvm/System/Path.h
+++ b/include/llvm/System/Path.h
@@ -154,6 +154,12 @@ namespace sys {
/// @brief Returns the current working directory.
static Path GetCurrentDirectory();
+ /// Return the suffix commonly used on file names that contain an
+ /// executable.
+ /// @returns The executable file suffix for the current platform.
+ /// @brief Return the executable file suffix.
+ static StringRef GetEXESuffix();
+
/// Return the suffix commonly used on file names that contain a shared
/// object, shared archive, or dynamic link library. Such files are
/// linked at runtime into a process and their code images are shared
diff --git a/lib/System/Unix/Path.inc b/lib/System/Unix/Path.inc
index 4c97c4b71c..44c81a2f3f 100644
--- a/lib/System/Unix/Path.inc
+++ b/lib/System/Unix/Path.inc
@@ -78,6 +78,10 @@ using namespace sys;
const char sys::PathSeparator = ':';
+StringRef Path::GetEXESuffix() {
+ return "";
+}
+
Path::Path(StringRef p)
: path(p) {}
diff --git a/lib/System/Win32/Path.inc b/lib/System/Win32/Path.inc
index 7e2275105a..a4d55a0f04 100644
--- a/lib/System/Win32/Path.inc
+++ b/lib/System/Win32/Path.inc
@@ -45,8 +45,13 @@ static void FlipBackSlashes(std::string& s) {
namespace llvm {
namespace sys {
+
const char PathSeparator = ';';
+StringRef Path::GetEXESuffix() {
+ return "exe";
+}
+
Path::Path(llvm::StringRef p)
: path(p) {
FlipBackSlashes(path);