From 5b2edcdd6ee87b09e42422dedfed9a0828ae412e Mon Sep 17 00:00:00 2001 From: Dave Huseby Date: Wed, 10 Jun 2015 10:20:57 -0700 Subject: [PATCH] fixes __morestack symbol problem on BSDs --- src/rustllvm/ExecutionEngineWrapper.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/rustllvm/ExecutionEngineWrapper.cpp b/src/rustllvm/ExecutionEngineWrapper.cpp index e37ede82bb560..50551405383c8 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(__morestack); if (Name == "__morestack_addr" || Name == "___morestack_addr")