From 01248e671100fbd6eac6bc3646096dc75ec885d1 Mon Sep 17 00:00:00 2001 From: Reid Kleckner Date: Fri, 21 Aug 2009 21:03:57 +0000 Subject: 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79674 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/ExecutionEngine/JIT/JITMemoryManager.cpp | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'lib/ExecutionEngine/JIT/JITMemoryManager.cpp') diff --git a/lib/ExecutionEngine/JIT/JITMemoryManager.cpp b/lib/ExecutionEngine/JIT/JITMemoryManager.cpp index f40e67d90c..57dd45813e 100644 --- a/lib/ExecutionEngine/JIT/JITMemoryManager.cpp +++ b/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; } -- cgit v1.2.3