Align function bodies correctly.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28073 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/ExecutionEngine/JIT/JITEmitter.cpp b/lib/ExecutionEngine/JIT/JITEmitter.cpp
index 6e4ace9..bdc5f79 100644
--- a/lib/ExecutionEngine/JIT/JITEmitter.cpp
+++ b/lib/ExecutionEngine/JIT/JITEmitter.cpp
@@ -107,9 +107,7 @@
 }
 
 unsigned char *JITMemoryManager::startFunctionBody() {
-  // Round up to an even multiple of 8 bytes, this should eventually be target
-  // specific.
-  return (unsigned char*)(((intptr_t)CurFunctionPtr + 7) & ~7);
+  return CurFunctionPtr;
 }
 
 void JITMemoryManager::endFunctionBody(unsigned char *FunctionEnd) {
@@ -447,7 +445,7 @@
   initJumpTableInfo(F.getJumpTableInfo());
 
   // About to start emitting the machine code for the function.
-  // FIXME: align it?
+  emitAlignment(std::max(F.getFunction()->getAlignment(), 8U));
   TheJIT->updateGlobalMapping(F.getFunction(), CurBufferPtr);
 }