summaryrefslogtreecommitdiffstats
path: root/llvm/lib/ExecutionEngine/JIT/JITMemoryManager.cpp
diff options
context:
space:
mode:
authorReid Kleckner <reid@kleckner.net>2009-08-21 21:03:57 +0000
committerReid Kleckner <reid@kleckner.net>2009-08-21 21:03:57 +0000
commit48ca915be9966bf940c8c50a6a9f147e43a57588 (patch)
treee7b0c232673813e308e4ce5761bf560b6500cc4a /llvm/lib/ExecutionEngine/JIT/JITMemoryManager.cpp
parenta70623102eda7883b9c0f36235d7289cdd939241 (diff)
downloadbcm5719-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.cpp4
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;
}
OpenPOWER on IntegriCloud