[llvm] r242414 - Make ExecutionEngine owning a DataLayout

Laurent Carlier lordheavym at gmail.com
Thu Jul 16 15:08:50 PDT 2015


Le jeudi 16 juillet 2015, 16:34:23 Mehdi Amini a écrit :
> Author: mehdi_amini
> Date: Thu Jul 16 11:34:23 2015
> New Revision: 242414
> 
> URL: http://llvm.org/viewvc/llvm-project?rev=242414&view=rev
> Log:
> Make ExecutionEngine owning a DataLayout
> 
> Summary:
> This change is part of a series of commits dedicated to have a single
> DataLayout during compilation by using always the one owned by the
> module.
> 
> The ExecutionEngine will act as an exception and will be unsafe to
> be reused across context. We don't enforce this rule but undefined
> behavior can occurs if the user tries to do it.
> 
> Reviewers: lhames
> 
> Subscribers: echristo, llvm-commits, rafael, yaron.keren
> 
> Differential Revision: http://reviews.llvm.org/D11110
> 
> From: Mehdi Amini <mehdi.amini at apple.com>
> 

llvm fail to build since this revision with:
  CC=gcc CXX=g++ \
  ../llvm/configure \
    --prefix=/usr \
    --sysconfdir=/etc \
    --enable-shared \
    --enable-libffi \
    --enable-targets=all \
    --disable-assertions \
    --with-python=/usr/bin/python2 \
    --enable-optimized

  make REQUIRES_RTTI=1 ENABLE_PIC=1

result:
make[2]: Entering directory '/build/llvm-svn/src/build/lib/ExecutionEngine'
llvm[2]: Compiling BranchFolding.cpp for Release build
make[3]: Entering directory '/build/llvm-
svn/src/build/lib/ExecutionEngine/Interpreter'
llvm[3]: Compiling Execution.cpp for Release build
llvm[3]: Compiling MergedLoadStoreMotion.cpp for Release build
llvm[3]: Compiling NaryReassociate.cpp for Release build
llvm[2]: Compiling CalcSpillWeights.cpp for Release build
llvm[3]: Compiling ExternalFunctions.cpp for Release build
llvm[3]: Compiling X86FixupLEAs.cpp for Release build
llvm[3]: Compiling PartiallyInlineLibCalls.cpp for Release build
llvm[2]: Compiling CallingConvLower.cpp for Release build
/build/llvm-
svn/src/llvm/lib/ExecutionEngine/Interpreter/ExternalFunctions.cpp: In 
function 'bool ffiInvoke(RawFunc, llvm::Function*, 
llvm::ArrayRef<llvm::GenericValue>, const llvm::DataLayout&, 
llvm::GenericValue&)':
/build/llvm-
svn/src/llvm/lib/ExecutionEngine/Interpreter/ExternalFunctions.cpp:201:19: 
error: base operand of '->' has non-pointer type 'const llvm::DataLayout'
     ArgBytes += TD->getTypeStoreSize(ArgTy);
                   ^
/build/llvm-
svn/src/llvm/lib/ExecutionEngine/Interpreter/ExternalFunctions.cpp:213:21: 
error: base operand of '->' has non-pointer type 'const llvm::DataLayout'
     ArgDataPtr += TD->getTypeStoreSize(ArgTy);
                     ^
/build/llvm-
svn/src/llvm/lib/ExecutionEngine/Interpreter/ExternalFunctions.cpp:222:20: 
error: base operand of '->' has non-pointer type 'const llvm::DataLayout'
       ret.resize(TD->getTypeStoreSize(RetTy));
                    ^
/usr/bin/rm: cannot remove '/build/llvm-
svn/src/build/lib/ExecutionEngine/Interpreter/Release/ExternalFunctions.d.tmp': 
No such file or directory
/build/llvm-svn/src/llvm/Makefile.rules:1521: recipe for target '/build/llvm-
svn/src/build/lib/ExecutionEngine/Interpreter/Release/ExternalFunctions.o' 
failed
make[3]: *** [/build/llvm-
svn/src/build/lib/ExecutionEngine/Interpreter/Release/ExternalFunctions.o] 
Error 1
make[3]: Leaving directory '/build/llvm-
svn/src/build/lib/ExecutionEngine/Interpreter'
/build/llvm-svn/src/llvm/Makefile.rules:939: recipe for target 
'Interpreter/.makeall' failed
make[2]: *** [Interpreter/.makeall] Error 2
make[2]: Leaving directory '/build/llvm-svn/src/build/lib/ExecutionEngine'
/build/llvm-svn/src/llvm/Makefile.rules:939: recipe for target 
'ExecutionEngine/.makeall' failed
make[1]: *** [ExecutionEngine/.makeall] Error 2
make[1]: *** Waiting for unfinished jobs....


-- 
Laurent Carlier
http://www.archlinux.org
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 473 bytes
Desc: This is a digitally signed message part.
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150717/6dd4563a/attachment.sig>


More information about the llvm-commits mailing list