[cfe-dev] libcxxabi cmake test problem on Linux x86-64

Evgeniy Stepanov eugeni.stepanov at gmail.com
Wed Nov 26 13:04:59 PST 2014


#0  0x00007ffff62b5bb9 in __GI_raise (sig=sig at entry=6) at
../nptl/sysdeps/unix/sysv/linux/raise.c:56
#1  0x00007ffff62b8fc8 in __GI_abort () at abort.c:89
#2  0x00007ffff7b60807 in abort_message (format=0x7ffff7bcdf13
"terminating with %s exception of type %s") at
../projects/libcxxabi/src/abort_message.cpp:66
#3  0x00007ffff7b60ad6 in default_terminate_handler () at
../projects/libcxxabi/src/cxa_default_handlers.cpp:68
#4  0x00007ffff7bc454e in std::__terminate (func=0x7ffff7b60900
<default_terminate_handler()>) at
../projects/libcxxabi/src/cxa_handlers.cpp:68
#5  0x00007ffff7bc31dd in __cxxabiv1::failed_throw
(exception_header=0x1e87240) at
../projects/libcxxabi/src/cxa_exception.cpp:149
#6  0x00007ffff7bc3136 in __cxa_throw (thrown_object=0x1e872b8,
tinfo=0x7ffff7dd83b0 <typeinfo for int>, dest=0x0) at
../projects/libcxxabi/src/cxa_exception.cpp:244
#7  0x00007ffff7ff502d in throwException ()
#8  0x00007ffff7ff503d in main ()
#9  0x0000000000beef04 in llvm::MCJIT::runFunction (this=0x1e74c30,
F=0x1e6b4b0, ArgValues=...) at
../lib/ExecutionEngine/MCJIT/MCJIT.cpp:500
#10 0x0000000000b26f90 in llvm::ExecutionEngine::runFunctionAsMain
(this=0x1e74c30, Fn=0x1e6b4b0, argv=..., envp=0x7fffffffe0d0)
    at ../lib/ExecutionEngine/ExecutionEngine.cpp:393
#11 0x0000000000567cc4 in main (argc=4, argv=0x7fffffffe0a8,
envp=0x7fffffffe0d0) at ../tools/lli/lli.cpp:613

On Wed, Nov 26, 2014 at 11:37 PM, Eric Fiselier <eric at efcs.ca> wrote:
> Evgeniy,
>
> Would you be willing to reproduce this again but in debug mode instead
> of release so we get a better stack trace?
>
> /Eric
>
> On Wed, Nov 26, 2014 at 5:20 AM, Evgeniy Stepanov
> <eugeni.stepanov at gmail.com> wrote:
>> I've got the same issue.
>> On Linux (Trusty/x86_64), build clang with libc++/libc++abi (just
>> plain ninja clang cxx cxxabi w/o any special cmake flags), then use it
>> to bootstrap clang like this:
>>
>> CC=/code/llvm/build2/bin/clang \
>> CXX=/code/llvm/build2/bin/clang++ \
>> LDFLAGS="-lc++abi -L/code/llvm/build2/lib -Wl,-rpath,/code/llvm/build2/lib" \
>> cmake \
>>   -GNinja \
>>   -DCMAKE_BUILD_TYPE=Release \
>>   -DLLVM_ENABLE_LIBCXX=ON  \
>>   ..
>>
>> In the second tree, MCJIT tests fail with the same error:
>>
>> ./bin/lli -relocation-model=pic -code-model=large
>> ../test/ExecutionEngine/MCJIT/eh-lg-pic.ll
>> terminating with uncaught exception of type int
>> 0  lli             0x0000000000a80a9a
>> _ZN4llvm3sys15PrintStackTraceEP8_IO_FILE + 42
>> 1  lli             0x0000000000a81eeb
>> 2  libpthread.so.0 0x00007f83baabf340
>> 3  libc.so.6       0x00007f83b9d2fbb9 gsignal + 57
>> 4  libc.so.6       0x00007f83b9d32fc8 abort + 328
>> 5  libc++abi.so.1  0x00007f83bb5121a7
>> 6  libc++abi.so.1  0x00007f83bb512355
>> 7  libc++abi.so.1  0x00007f83bb55c3b3
>> 8  libc++abi.so.1  0x00007f83bb55bb66 __cxa_throw + 166
>> 9  libc++abi.so.1  0x00007f83bb98802d __cxa_throw + 4375917
>> 10 libc++abi.so.1  0x00007f83bb98803d __cxa_throw + 4375933
>> 11 lli             0x0000000000849649
>> _ZN4llvm5MCJIT11runFunctionEPNS_8FunctionERKNSt3__16vectorINS_12GenericValueENS3_9allocatorIS5_EEEE
>> + 1209
>> 12 lli             0x00000000007ecd08
>> _ZN4llvm15ExecutionEngine17runFunctionAsMainEPNS_8FunctionERKNSt3__16vectorINS3_12basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEENS8_ISA_EEEEPKPKc
>> + 1192
>> 13 lli             0x000000000050c434 main + 10404
>> 14 libc.so.6       0x00007f83b9d1aec5 __libc_start_main + 245
>> 15 lli             0x00000000005092fb
>> Stack dump:
>> 0. Program arguments: ./bin/lli -relocation-model=pic
>> -code-model=large ../test/ExecutionEngine/MCJIT/eh-lg-pic.ll
>> Aborted (core dumped)
>>
>> On Sat, Aug 16, 2014 at 9:24 AM, İsmail Dönmez <ismail at donmez.ws> wrote:
>>> Ping?
>>>
>>> On Jul 17, 2014 11:05 AM, "İsmail Dönmez" <ismail at donmez.ws> wrote:
>>>>
>>>> Hi,
>>>>
>>>>
>>>> On Wed, Jul 16, 2014 at 6:43 PM, Nico Weber <thakis at chromium.org> wrote:
>>>>>
>>>>> On Wed, Jul 16, 2014 at 4:10 AM, İsmail Dönmez <ismail at donmez.ws> wrote:
>>>>>>
>>>>>> Hi,
>>>>>>
>>>>>>
>>>>>> On Mon, Jul 14, 2014 at 8:10 PM, Dan Albert <danalbert at google.com>
>>>>>> wrote:
>>>>>>>
>>>>>>> Submitted (with some slight modifications, s/libgcc_s/libgcc_eh/) as
>>>>>>> r212958. Tested with and without the LLVM unwinder, and things look good.
>>>>>>> Thanks again!
>>>>>>
>>>>>>
>>>>>> Changing gcc_s with gcc_eh doesn't look good. libcxxabi tests pass but
>>>>>> llvm MCJIT exception tests fail with:
>>>>>>
>>>>>> "terminating with uncaught exception of type int"
>>>>>
>>>>>
>>>>> Can you try to make a reduced test case for libcxxabi from this?
>>>>>
>>>>
>>>>
>>>>
>>>> Smallest test cases are
>>>> test/ExecutionEngine/MCJIT/{eh-sm-pic,eh-lg-pic}.ll
>>>>
>>>> Both fail the same way:
>>>>
>>>>  /home/abuild/rpmbuild/BUILD/llvm/stage2/./bin/lli -use-mcjit
>>>> -relocation-model=pic -code-model=small
>>>> /home/abuild/rpmbuild/BUILD/llvm/test/ExecutionEngine/MCJIT/eh-sm-pic.ll
>>>>  --
>>>>  Exit Code: 134
>>>>
>>>>  Command Output (stderr):
>>>>  --
>>>>  terminating with uncaught exception of type int
>>>>  0  libLLVMSupport.so         0x00007f9c6ddf7d85
>>>> llvm::sys::PrintStackTrace(_IO_FILE*) + 37
>>>>  1  libLLVMSupport.so         0x00007f9c6ddf83f3
>>>>  2  libpthread.so.0           0x00007f9c6d0d79f0
>>>>  3  libc.so.6                 0x00007f9c6c806849 gsignal + 57
>>>>  4  libc.so.6                 0x00007f9c6c807cd8 abort + 328
>>>>  5  libc++abi.so.1            0x00007f9c6cb89237
>>>>  6  libc++abi.so.1            0x00007f9c6cb894b6
>>>>  7  libc++abi.so.1            0x00007f9c6cbeda7e
>>>>  8  libc++abi.so.1            0x00007f9c6cbec6ed
>>>>  9  libc++abi.so.1            0x00007f9c6cbec646
>>>>  10 libc++abi.so.1            0x00007f9c6ff3001c
>>>>  11 libc++abi.so.1            0x00007f9c6ff30026
>>>>  12 libLLVMMCJIT.so           0x00007f9c6e61fd27
>>>> llvm::MCJIT::runFunction(llvm::Function*,
>>>> std::__1::vector<llvm::GenericValue, std::__1::allocator<llvm::GenericValue>
>>>> > const&) + 919
>>>>  13 libLLVMExecutionEngine.so 0x00007f9c6f34fa65
>>>> llvm::ExecutionEngine::runFunctionAsMain(llvm::Function*,
>>>> std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>,
>>>> std::__1::allocator<char> >,
>>>> std::__1::allocator<std::__1::basic_string<char,
>>>> std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, char
>>>> const* const*) + 1221
>>>>  14 lli                       0x000000000040c8b7 main + 6599
>>>>  15 libc.so.6                 0x00007f9c6c7f2be5 __libc_start_main + 245
>>>>  16 lli                       0x000000000040a6d1
>>>>  Stack dump:
>>>>  0. Program arguments: /home/abuild/rpmbuild/BUILD/llvm/stage2/./bin/lli
>>>> -use-mcjit -relocation-model=pic -code-model=small
>>>> /home/abuild/rpmbuild/BUILD/llvm/test/ExecutionEngine/MCJIT/eh-sm-pic.ll
>>>>
>>>> /home/abuild/rpmbuild/BUILD/llvm/stage2/test/ExecutionEngine/MCJIT/Output/eh-sm-pic.ll.script:
>>>> line 1: 30636 Aborted
>>>> /home/abuild/rpmbuild/BUILD/llvm/stage2/./bin/lli -use-mcjit
>>>> -relocation-model=pic -code-model=small
>>>> /home/abuild/rpmbuild/BUILD/llvm/test/ExecutionEngine/MCJIT/eh-sm-pic.ll
>>>>
>>>> Note that this clang is hardcoded to use libc++ (-stdlibc=libc++). Is this
>>>> good enough?
>>>>
>>>> Thanks!
>>>>
>>>
>>> _______________________________________________
>>> cfe-dev mailing list
>>> cfe-dev at cs.uiuc.edu
>>> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev
>>>
>>
>> _______________________________________________
>> cfe-dev mailing list
>> cfe-dev at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev




More information about the cfe-dev mailing list