about summary refs log tree commit diff
path: root/src/rustllvm/ExecutionEngineWrapper.cpp
diff options
context:
space:
mode:
authorDave Huseby <dhuseby@mozilla.com>2015-06-10 10:20:57 -0700
committerDave Huseby <dhuseby@mozilla.com>2015-06-10 11:24:13 -0700
commit5b2edcdd6ee87b09e42422dedfed9a0828ae412e (patch)
tree677ca9a9cb8e1f7d82e6b03aa4b9a8922da7d37f /src/rustllvm/ExecutionEngineWrapper.cpp
parent01ab4f761c09830bdd77726f5ae2351e9e3432c4 (diff)
downloadrust-5b2edcdd6ee87b09e42422dedfed9a0828ae412e.tar.gz
rust-5b2edcdd6ee87b09e42422dedfed9a0828ae412e.zip
fixes __morestack symbol problem on BSDs
Diffstat (limited to 'src/rustllvm/ExecutionEngineWrapper.cpp')
-rw-r--r--src/rustllvm/ExecutionEngineWrapper.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/rustllvm/ExecutionEngineWrapper.cpp b/src/rustllvm/ExecutionEngineWrapper.cpp
index e37ede82bb5..50551405383 100644
--- a/src/rustllvm/ExecutionEngineWrapper.cpp
+++ b/src/rustllvm/ExecutionEngineWrapper.cpp
@@ -17,7 +17,7 @@ using namespace llvm::sys;
 using namespace llvm::object;
 
 // libmorestack is not used on Windows
-#ifndef _WIN32
+#if !defined(_WIN32) && !defined(__FreeBSD__) && !defined(__DragonFly__) && !defined(__Bitrig__)
 extern "C" void __morestack(void);
 
 static void* morestack_addr() {
@@ -35,7 +35,7 @@ class RustJITMemoryManager : public SectionMemoryManager
 
     uint64_t getSymbolAddress(const std::string &Name) override
     {
-#ifndef _WIN32
+#if !defined(_WIN32) && !defined(__FreeBSD__) && !defined(__DragonFly__) && !defined(__Bitrig__)
         if (Name == "__morestack" || Name == "___morestack")
             return reinterpret_cast<uint64_t>(__morestack);
         if (Name == "__morestack_addr" || Name == "___morestack_addr")