diff options
author | Daniel Malea <daniel.malea@intel.com> | 2013-06-28 21:49:53 +0000 |
---|---|---|
committer | Daniel Malea <daniel.malea@intel.com> | 2013-06-28 21:49:53 +0000 |
commit | 7291340c24238eef13dc12245db597ad793cf2b6 (patch) | |
tree | 33f3ec3a6e577a66acb2de7ebfbd6f3d58f61bd4 /llvm/unittests/Transforms/DebugIR/DebugIR.cpp | |
parent | 1f9db3ebe36a2d187c33f61638c0d1f13425b307 (diff) | |
download | bcm5719-llvm-7291340c24238eef13dc12245db597ad793cf2b6.tar.gz bcm5719-llvm-7291340c24238eef13dc12245db597ad793cf2b6.zip |
Fix Windows/Darwin build error in DebugIR unit tests
- mistakenly used get_current_dir() linux function
- replaced with getcwd/_getcwd as appropriate for current platform
llvm-svn: 185225
Diffstat (limited to 'llvm/unittests/Transforms/DebugIR/DebugIR.cpp')
-rw-r--r-- | llvm/unittests/Transforms/DebugIR/DebugIR.cpp | 28 |
1 files changed, 19 insertions, 9 deletions
diff --git a/llvm/unittests/Transforms/DebugIR/DebugIR.cpp b/llvm/unittests/Transforms/DebugIR/DebugIR.cpp index 978662a79d5..cf81e7a728d 100644 --- a/llvm/unittests/Transforms/DebugIR/DebugIR.cpp +++ b/llvm/unittests/Transforms/DebugIR/DebugIR.cpp @@ -32,6 +32,14 @@ #include "gtest/gtest.h" +#if defined(LLVM_ON_WIN32) +#include <direct.h> +#define getcwd_impl _getcwd +#elif defined (HAVE_GETCWD) +#include <unistd.h> +#define getcwd_impl getcwd +#endif // LLVM_ON_WIN32 + using namespace llvm; using namespace std; @@ -53,19 +61,21 @@ bool removeIfExists(StringRef Path) { return existed; } +char * current_dir() { +#if defined(LLVM_ON_WIN32) || defined(HAVE_GETCWD) + // calling getcwd (or _getcwd() on windows) with a null buffer makes it + // allocate a sufficiently sized buffer to store the current working dir. + return getcwd_impl(0, 0); +#else + return 0; +#endif +} + class TestDebugIR : public ::testing::Test, public TrivialModuleBuilder { protected: TestDebugIR() : TrivialModuleBuilder(sys::getProcessTriple()) -#ifdef HAVE_GETCWD - , - cwd(get_current_dir_name()) -#else - , - cwd(0) -#endif - { - } + , cwd(current_dir()) {} ~TestDebugIR() { free(cwd); } |