diff options
author | Reid Kleckner <reid@kleckner.net> | 2009-08-21 21:03:57 +0000 |
---|---|---|
committer | Reid Kleckner <reid@kleckner.net> | 2009-08-21 21:03:57 +0000 |
commit | 48ca915be9966bf940c8c50a6a9f147e43a57588 (patch) | |
tree | e7b0c232673813e308e4ce5761bf560b6500cc4a /llvm/lib/ExecutionEngine/JIT/JITMemoryManager.cpp | |
parent | a70623102eda7883b9c0f36235d7289cdd939241 (diff) | |
download | bcm5719-llvm-48ca915be9966bf940c8c50a6a9f147e43a57588.tar.gz bcm5719-llvm-48ca915be9966bf940c8c50a6a9f147e43a57588.zip |
Fix a bug where the DWARF emitter in the JIT was not initializing alignment
bytes. libgcc doesn't seem to mind, but if you pass this DWARF to GDB, it
doesn't like it.
Also make the JIT memory manager to initialize it's memory to garbage in debug
mode, so that it's easier to find bugs like these in the future.
llvm-svn: 79674
Diffstat (limited to 'llvm/lib/ExecutionEngine/JIT/JITMemoryManager.cpp')
-rw-r--r-- | llvm/lib/ExecutionEngine/JIT/JITMemoryManager.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/llvm/lib/ExecutionEngine/JIT/JITMemoryManager.cpp b/llvm/lib/ExecutionEngine/JIT/JITMemoryManager.cpp index f40e67d90c1..57dd45813e9 100644 --- a/llvm/lib/ExecutionEngine/JIT/JITMemoryManager.cpp +++ b/llvm/lib/ExecutionEngine/JIT/JITMemoryManager.cpp @@ -650,6 +650,10 @@ sys::MemoryBlock DefaultJITMemoryManager::allocateNewSlab(size_t size) { } LastSlab = B; ++NumSlabs; + // Initialize the slab to garbage when debugging. + if (PoisonMemory) { + memset(B.base(), 0xCD, B.size()); + } return B; } |