[PATCH] Rework lli-child-target for portability and correctness

Renato Golin renato.golin at linaro.org
Wed Dec 4 07:35:18 PST 2013


Hi Alp,

I'm getting link errors on my ARM box:

llvm[3]: Linking Release+Asserts executable lli-child-target (without symbols)
tools/lli/ChildTarget/Release+Asserts/ChildTarget.o:tools/lli/ChildTarget/ChildTarget.cpp:function
LLIChildTarget::handleTerminate(): error: undefined reference to
'llvm::system_category()'
tools/lli/ChildTarget/Release+Asserts/ChildTarget.o:tools/lli/ChildTarget/ChildTarget.cpp:function
llvm::sys::Memory::releaseMappedMemory(llvm::sys::MemoryBlock&):
error: undefined reference to 'llvm::system_category()'
tools/lli/ChildTarget/Release+Asserts/ChildTarget.o:tools/lli/ChildTarget/ChildTarget.cpp:function
llvm::sys::Memory::releaseMappedMemory(llvm::sys::MemoryBlock&):
error: undefined reference to 'llvm::system_category()'
tools/lli/ChildTarget/Release+Asserts/ChildTarget.o:tools/lli/ChildTarget/ChildTarget.cpp:function
llvm::sys::Memory::allocateMappedMemory(unsigned int,
llvm::sys::MemoryBlock const*, unsigned int, llvm::error_code&):
error: undefined reference to 'llvm::system_category()'
tools/lli/ChildTarget/Release+Asserts/ChildTarget.o:tools/lli/ChildTarget/ChildTarget.cpp:function
llvm::sys::Memory::allocateMappedMemory(unsigned int,
llvm::sys::MemoryBlock const*, unsigned int, llvm::error_code&):
error: undefined reference to 'llvm::sys::process::get_self()'
tools/lli/ChildTarget/Release+Asserts/ChildTarget.o:tools/lli/ChildTarget/ChildTarget.cpp:function
llvm::sys::Memory::allocateMappedMemory(unsigned int,
llvm::sys::MemoryBlock const*, unsigned int, llvm::error_code&):
error: undefined reference to 'llvm::llvm_unreachable_internal(char
const*, char const*, unsigned int)'
tools/lli/ChildTarget/Release+Asserts/ChildTarget.o:tools/lli/ChildTarget/ChildTarget.cpp:function
llvm::sys::Memory::protectMappedMemory(llvm::sys::MemoryBlock const&,
unsigned int): error: undefined reference to
'llvm::generic_category()'
tools/lli/ChildTarget/Release+Asserts/ChildTarget.o:tools/lli/ChildTarget/ChildTarget.cpp:function
llvm::sys::Memory::protectMappedMemory(llvm::sys::MemoryBlock const&,
unsigned int): error: undefined reference to
'llvm::llvm_unreachable_internal(char const*, char const*, unsigned
int)'
tools/lli/ChildTarget/Release+Asserts/ChildTarget.o:tools/lli/ChildTarget/ChildTarget.cpp:function
llvm::sys::Memory::AllocateRWX(unsigned int, llvm::sys::MemoryBlock
const*, std::string*): error: undefined reference to
'llvm::sys::process::get_self()'
tools/lli/ChildTarget/Release+Asserts/ChildTarget.o:tools/lli/ChildTarget/ChildTarget.cpp:function
MakeErrMsg(std::string*, std::string const&, int): error: undefined
reference to 'llvm::sys::StrError(int)'

On my laptop it builds fine, though.

cheers,
--renato



More information about the llvm-commits mailing list