1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-21 12:02:58 +02:00

This code is a real mess, but at least get the JIT *building* on platforms

(such as plan 9) without mmap.  Of course it won't RUN... but that's another
step.  :)

llvm-svn: 13839
This commit is contained in:
Chris Lattner 2004-05-27 18:03:56 +00:00
parent 4de18aff15
commit 736ca634a7

View File

@ -60,6 +60,7 @@ static void *getMemory(unsigned NumBytes) {
static const long pageSize = sysconf(_SC_PAGESIZE);
unsigned NumPages = (NumBytes+pageSize-1)/pageSize;
/* FIXME: This should use the proper autoconf flags */
#if defined(i386) || defined(__i386__) || defined(__x86__)
/* Linux and *BSD tend to have these flags named differently. */
#if defined(MAP_ANON) && !defined(MAP_ANONYMOUS)
@ -70,8 +71,10 @@ static void *getMemory(unsigned NumBytes) {
#else
std::cerr << "This architecture is not supported by the JIT!\n";
abort();
return 0;
#endif
#ifdef HAVE_MMAP
int fd = -1;
#if defined(__linux__)
fd = 0;
@ -89,6 +92,11 @@ static void *getMemory(unsigned NumBytes) {
abort();
}
return pa;
#else
std::cerr << "Do not know how to allocate mem for the JIT without mmap!\n";
abort();
return 0;
#endif
}
JITMemoryManager::JITMemoryManager() {