[llvm] r226940 - [Orc] New JIT APIs.

İsmail Dönmez ismail at donmez.ws
Sat Jan 24 07:37:43 PST 2015


Hi,

On Fri, Jan 23, 2015 at 11:25 PM, Lang Hames <lhames at gmail.com> wrote:
> Author: lhames
> Date: Fri Jan 23 15:25:00 2015
> New Revision: 226940
>
> URL: http://llvm.org/viewvc/llvm-project?rev=226940&view=rev
> Log:
> [Orc] New JIT APIs.
>
> This patch adds a new set of JIT APIs to LLVM. The aim of these new APIs is to
> cleanly support a wider range of JIT use cases in LLVM, and encourage the
> development and contribution of re-usable infrastructure for LLVM JIT use-cases.
>
> These APIs are intended to live alongside the MCJIT APIs, and should not affect
> existing clients.

Doesn't seem to link on ARM/Linux:

[535/2120] Linking CXX shared library lib/libLLVMOrcJIT.so
FAILED: : && /havana/dist/llvm/bin/clang++  -fPIC -mfloat-abi=hard
-march=armv7-a -mtune=cortex-a8 -mfpu=vfpv3-d16 -fuse-ld=gold  -fPIC
-fvisibility-inlines-hidden -Wall -W -Wno-unused-parameter
-Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic
-Wno-long-long -Wcovered-switch-default -Wnon-virtual-dtor
-Werror=date-time -std=c++11 -fcolor-diagnostics -ffunction-sections
-fdata-sections -O3 -DNDEBUG  -Wl,-z,defs   -Wl,-O3 -Wl,--gc-sections
-shared -Wl,-soname,libLLVMOrcJIT.so -o lib/libLLVMOrcJIT.so
lib/ExecutionEngine/Orc/CMakeFiles/LLVMOrcJIT.dir/CloneSubModule.cpp.o
lib/ExecutionEngine/Orc/CMakeFiles/LLVMOrcJIT.dir/IndirectionUtils.cpp.o
lib/ExecutionEngine/Orc/CMakeFiles/LLVMOrcJIT.dir/OrcMCJITReplacement.cpp.o
lib/ExecutionEngine/Orc/CMakeFiles/LLVMOrcJIT.dir/OrcTargetSupport.cpp.o
 lib/libLLVMCore.so lib/libLLVMExecutionEngine.so lib/libLLVMObject.so
lib/libLLVMRuntimeDyld.so lib/libLLVMSupport.so lib/libLLVMTarget.so
-Wl,-rpath,"\$ORIGIN/../lib" && :
lib/ExecutionEngine/Orc/CMakeFiles/LLVMOrcJIT.dir/CloneSubModule.cpp.o:../lib/ExecutionEngine/Orc/CloneSubModule.cpp:function
llvm::copyGVInitializer(llvm::GlobalVariable&, llvm::GlobalVariable
const&, llvm::ValueMap<llvm::Value const*, llvm::WeakVH,
llvm::ValueMapConfig<llvm::Value const*, llvm::sys::SmartMutex<false>
> >&): error: undefined reference to 'llvm::MapValue(llvm::Value
const*, llvm::ValueMap<llvm::Value const*, llvm::WeakVH,
llvm::ValueMapConfig<llvm::Value const*, llvm::sys::SmartMutex<false>
> >&, llvm::RemapFlags, llvm::ValueMapTypeRemapper*,
llvm::ValueMaterializer*)'
lib/ExecutionEngine/Orc/CMakeFiles/LLVMOrcJIT.dir/CloneSubModule.cpp.o:../lib/ExecutionEngine/Orc/CloneSubModule.cpp:function
llvm::copyFunctionBody(llvm::Function&, llvm::Function const&,
llvm::ValueMap<llvm::Value const*, llvm::WeakVH,
llvm::ValueMapConfig<llvm::Value const*, llvm::sys::SmartMutex<false>
> >&): error: undefined reference to
'llvm::CloneFunctionInto(llvm::Function*, llvm::Function const*,
llvm::ValueMap<llvm::Value const*, llvm::WeakVH,
llvm::ValueMapConfig<llvm::Value const*, llvm::sys::SmartMutex<false>
> >&, bool, llvm::SmallVectorImpl<llvm::ReturnInst*>&, char const*,
llvm::ClonedCodeInfo*, llvm::ValueMapTypeRemapper*,
llvm::ValueMaterializer*)'
lib/ExecutionEngine/Orc/CMakeFiles/LLVMOrcJIT.dir/CloneSubModule.cpp.o:../lib/ExecutionEngine/Orc/CloneSubModule.cpp:function
llvm::CloneSubModule(llvm::Module const&, std::function<void
(llvm::GlobalVariable&, llvm::GlobalVariable const&,
llvm::ValueMap<llvm::Value const*, llvm::WeakVH,
llvm::ValueMapConfig<llvm::Value const*, llvm::sys::SmartMutex<false>
> >&)>, std::function<void (llvm::Function&, llvm::Function const&,
llvm::ValueMap<llvm::Value const*, llvm::WeakVH,
llvm::ValueMapConfig<llvm::Value const*, llvm::sys::SmartMutex<false>
> >&)>, bool): error: undefined reference to
'llvm::MapValue(llvm::Value const*, llvm::ValueMap<llvm::Value const*,
llvm::WeakVH, llvm::ValueMapConfig<llvm::Value const*,
llvm::sys::SmartMutex<false> > >&, llvm::RemapFlags,
llvm::ValueMapTypeRemapper*, llvm::ValueMaterializer*)'
lib/ExecutionEngine/Orc/CMakeFiles/LLVMOrcJIT.dir/CloneSubModule.cpp.o:../lib/ExecutionEngine/Orc/CloneSubModule.cpp:function
llvm::CloneSubModule(llvm::Module const&, std::function<void
(llvm::GlobalVariable&, llvm::GlobalVariable const&,
llvm::ValueMap<llvm::Value const*, llvm::WeakVH,
llvm::ValueMapConfig<llvm::Value const*, llvm::sys::SmartMutex<false>
> >&)>, std::function<void (llvm::Function&, llvm::Function const&,
llvm::ValueMap<llvm::Value const*, llvm::WeakVH,
llvm::ValueMapConfig<llvm::Value const*, llvm::sys::SmartMutex<false>
> >&)>, bool): error: undefined reference to
'llvm::MapMetadata(llvm::MDNode const*, llvm::ValueMap<llvm::Value
const*, llvm::WeakVH, llvm::ValueMapConfig<llvm::Value const*,
llvm::sys::SmartMutex<false> > >&, llvm::RemapFlags,
llvm::ValueMapTypeRemapper*, llvm::ValueMaterializer*)'
clang-3.7: error: linker command failed with exit code 1 (use -v to
see invocation)



More information about the llvm-commits mailing list