From 51cc3c13eac78da242f0518fc42580e48dd5304f Mon Sep 17 00:00:00 2001 From: Nicolas Geoffray Date: Wed, 16 Apr 2008 20:46:05 +0000 Subject: Correlate stubs with functions in JIT: when emitting a stub, the JIT tells the memory manager which function the stub will resolve. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49814 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/ExecutionEngine/JIT/JITMemoryManager.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'lib/ExecutionEngine/JIT/JITMemoryManager.cpp') diff --git a/lib/ExecutionEngine/JIT/JITMemoryManager.cpp b/lib/ExecutionEngine/JIT/JITMemoryManager.cpp index 5908e43..b07af2e 100644 --- a/lib/ExecutionEngine/JIT/JITMemoryManager.cpp +++ b/lib/ExecutionEngine/JIT/JITMemoryManager.cpp @@ -11,6 +11,7 @@ // //===----------------------------------------------------------------------===// +#include "llvm/GlobalValue.h" #include "llvm/ExecutionEngine/JITMemoryManager.h" #include "llvm/Support/Compiler.h" #include "llvm/System/Memory.h" @@ -265,7 +266,8 @@ namespace { void AllocateGOT(); - unsigned char *allocateStub(unsigned StubSize, unsigned Alignment); + unsigned char *allocateStub(const GlobalValue* F, unsigned StubSize, + unsigned Alignment); /// startFunctionBody - When a function starts, allocate a block of free /// executable memory, returning a pointer to it and its actual size. @@ -438,7 +440,8 @@ DefaultJITMemoryManager::~DefaultJITMemoryManager() { Blocks.clear(); } -unsigned char *DefaultJITMemoryManager::allocateStub(unsigned StubSize, +unsigned char *DefaultJITMemoryManager::allocateStub(const GlobalValue* F, + unsigned StubSize, unsigned Alignment) { CurStubPtr -= StubSize; CurStubPtr = (unsigned char*)(((intptr_t)CurStubPtr) & -- cgit v1.1