mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-14 16:33:28 +00:00
Make the __morestack function available to the JIT memory manager under Linux.
This function's implementation lives in libgcc, a static library, so we need to expose it explicitly, like the other such functions. Differential Revision: http://reviews.llvm.org/D6788 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@224993 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
aa4172e1d8
commit
8919b82605
@ -210,6 +210,10 @@ ARM_MATH_IMPORTS(ARM_MATH_DECL)
|
||||
#undef ARM_MATH_DECL
|
||||
#endif
|
||||
|
||||
#if defined(__linux__) && defined(__GLIBC__)
|
||||
extern "C" void __morestack();
|
||||
#endif
|
||||
|
||||
uint64_t
|
||||
RTDyldMemoryManager::getSymbolAddressInProcess(const std::string &Name) {
|
||||
// This implementation assumes that the host program is the target.
|
||||
@ -233,6 +237,9 @@ RTDyldMemoryManager::getSymbolAddressInProcess(const std::string &Name) {
|
||||
if (Name == "lstat64") return (uint64_t)&lstat64;
|
||||
if (Name == "atexit") return (uint64_t)&atexit;
|
||||
if (Name == "mknod") return (uint64_t)&mknod;
|
||||
|
||||
// __morestack lives in libgcc, a static library.
|
||||
if (Name == "__morestack") return (uint64_t)&__morestack;
|
||||
#endif // __linux__ && __GLIBC__
|
||||
|
||||
// See ARM_MATH_IMPORTS definition for explanation
|
||||
|
Loading…
x
Reference in New Issue
Block a user