mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-16 14:31:59 +00:00
Minor cleanups, no functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28061 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
d3f0aefc33
commit
a726c7f1fd
@ -54,10 +54,10 @@ namespace {
|
|||||||
class JITMemoryManager {
|
class JITMemoryManager {
|
||||||
std::list<sys::MemoryBlock> Blocks; // List of blocks allocated by the JIT
|
std::list<sys::MemoryBlock> Blocks; // List of blocks allocated by the JIT
|
||||||
unsigned char *FunctionBase; // Start of the function body area
|
unsigned char *FunctionBase; // Start of the function body area
|
||||||
unsigned char *GlobalBase; // Start of the Global area
|
unsigned char *GlobalBase; // Start of the Global area
|
||||||
unsigned char *ConstantBase; // Memory allocated for constant pools
|
unsigned char *ConstantBase; // Memory allocated for constant pools
|
||||||
unsigned char *CurStubPtr, *CurFunctionPtr, *CurConstantPtr, *CurGlobalPtr;
|
unsigned char *CurStubPtr, *CurFunctionPtr, *CurConstantPtr, *CurGlobalPtr;
|
||||||
unsigned char *GOTBase; //Target Specific reserved memory
|
unsigned char *GOTBase; // Target Specific reserved memory
|
||||||
|
|
||||||
// centralize memory block allocation
|
// centralize memory block allocation
|
||||||
sys::MemoryBlock getNewMemoryBlock(unsigned size);
|
sys::MemoryBlock getNewMemoryBlock(unsigned size);
|
||||||
@ -72,9 +72,13 @@ namespace {
|
|||||||
unsigned Alignment);
|
unsigned Alignment);
|
||||||
inline unsigned char *startFunctionBody();
|
inline unsigned char *startFunctionBody();
|
||||||
inline void endFunctionBody(unsigned char *FunctionEnd);
|
inline void endFunctionBody(unsigned char *FunctionEnd);
|
||||||
inline unsigned char* getGOTBase() const;
|
|
||||||
|
unsigned char *getGOTBase() const {
|
||||||
inline bool isManagingGOT() const;
|
return GOTBase;
|
||||||
|
}
|
||||||
|
bool isManagingGOT() const {
|
||||||
|
return GOTBase != NULL;
|
||||||
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -117,7 +121,7 @@ JITMemoryManager::~JITMemoryManager() {
|
|||||||
unsigned char *JITMemoryManager::allocateStub(unsigned StubSize) {
|
unsigned char *JITMemoryManager::allocateStub(unsigned StubSize) {
|
||||||
CurStubPtr -= StubSize;
|
CurStubPtr -= StubSize;
|
||||||
if (CurStubPtr < FunctionBase) {
|
if (CurStubPtr < FunctionBase) {
|
||||||
//FIXME: allocate a new block
|
// FIXME: allocate a new block
|
||||||
std::cerr << "JIT ran out of memory for function stubs!\n";
|
std::cerr << "JIT ran out of memory for function stubs!\n";
|
||||||
abort();
|
abort();
|
||||||
}
|
}
|
||||||
@ -169,14 +173,6 @@ void JITMemoryManager::endFunctionBody(unsigned char *FunctionEnd) {
|
|||||||
CurFunctionPtr = FunctionEnd;
|
CurFunctionPtr = FunctionEnd;
|
||||||
}
|
}
|
||||||
|
|
||||||
unsigned char* JITMemoryManager::getGOTBase() const {
|
|
||||||
return GOTBase;
|
|
||||||
}
|
|
||||||
|
|
||||||
bool JITMemoryManager::isManagingGOT() const {
|
|
||||||
return GOTBase != NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
sys::MemoryBlock JITMemoryManager::getNewMemoryBlock(unsigned size) {
|
sys::MemoryBlock JITMemoryManager::getNewMemoryBlock(unsigned size) {
|
||||||
const sys::MemoryBlock* BOld = 0;
|
const sys::MemoryBlock* BOld = 0;
|
||||||
if (Blocks.size())
|
if (Blocks.size())
|
||||||
@ -439,9 +435,7 @@ namespace {
|
|||||||
public:
|
public:
|
||||||
JITEmitter(JIT &jit) : MemMgr(jit.getJITInfo().needsGOT()) {
|
JITEmitter(JIT &jit) : MemMgr(jit.getJITInfo().needsGOT()) {
|
||||||
TheJIT = &jit;
|
TheJIT = &jit;
|
||||||
DEBUG(std::cerr <<
|
DEBUG(if (MemMgr.isManagingGOT()) std::cerr << "JIT is managing a GOT\n");
|
||||||
(MemMgr.isManagingGOT() ? "JIT is managing GOT\n"
|
|
||||||
: "JIT is not managing GOT\n"));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
virtual void startFunction(MachineFunction &F);
|
virtual void startFunction(MachineFunction &F);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user