diff options
Diffstat (limited to 'lib/ExecutionEngine')
-rw-r--r-- | lib/ExecutionEngine/JIT/JIT.cpp | 3 | ||||
-rw-r--r-- | lib/ExecutionEngine/JIT/JITEmitter.cpp | 2 |
2 files changed, 3 insertions, 2 deletions
diff --git a/lib/ExecutionEngine/JIT/JIT.cpp b/lib/ExecutionEngine/JIT/JIT.cpp index 2bab9e735b..1d781d6e4e 100644 --- a/lib/ExecutionEngine/JIT/JIT.cpp +++ b/lib/ExecutionEngine/JIT/JIT.cpp @@ -284,7 +284,8 @@ void *JIT::getOrEmitGlobalVariable(const GlobalVariable *GV) { // If the global hasn't been emitted to memory yet, allocate space. We will // actually initialize the global after current function has finished // compilation. - Ptr =new char[getTargetData().getTypeSize(GV->getType()->getElementType())]; + uint64_t S = getTargetData().getTypeSize(GV->getType()->getElementType()); + Ptr = new char[(size_t)S]; PendingGlobals.push_back(GV); } addGlobalMapping(GV, Ptr); diff --git a/lib/ExecutionEngine/JIT/JITEmitter.cpp b/lib/ExecutionEngine/JIT/JITEmitter.cpp index 6603433015..bd00c964cc 100644 --- a/lib/ExecutionEngine/JIT/JITEmitter.cpp +++ b/lib/ExecutionEngine/JIT/JITEmitter.cpp @@ -360,7 +360,7 @@ void JITEmitter::emitConstantPool(MachineConstantPool *MCP) { unsigned TotalSize = 0; for (unsigned i = 0, e = Constants.size(); i != e; ++i) { const Type *Ty = Constants[i]->getType(); - unsigned Size = TheJIT->getTargetData().getTypeSize(Ty); + unsigned Size = (unsigned)TheJIT->getTargetData().getTypeSize(Ty); unsigned Alignment = TheJIT->getTargetData().getTypeAlignment(Ty); // Make sure to take into account the alignment requirements of the type. TotalSize = (TotalSize + Alignment-1) & ~(Alignment-1); |