[LLVMdev] Recent libc++ failures due to libunwind

İsmail Dönmez ismail at donmez.ws
Thu May 7 04:03:29 PDT 2015


Hi,

During last 2-3 days I started to get some new regressions from the
libc++ testsuite, one of them is
std/containers/sequences/list/list.modifiers/insert_iter_iter_iter.pass.cpp
.

When run under gdb this seems to be a crash under libunwind code:

Program received signal SIGSEGV, Segmentation fault.
0x0000000000000000 in ?? ()
(gdb) bt
#0  0x0000000000000000 in ?? ()
#1  0x00007ffff73d00ce in unw_get_proc_info (cursor=0x7fffffffd940,
info=0x7fffffffd520)
    at ../projects/libunwind/src/libunwind.cpp:237
#2  0x00007ffff73d4b83 in _Unwind_GetLanguageSpecificData
(context=0x7fffffffd940)
    at ../projects/libunwind/src/UnwindLevel1.c:417
#3  0x00007ffff7bd2cc8 in __cxxabiv1::scan_eh_tab (results=...,
actions=_UA_CLEANUP_PHASE, native_exception=true,
    unwind_exception=0x60b1e8, context=0x7fffffffd940) at
../projects/libcxxabi/src/cxa_personality.cpp:591
#4  0x00007ffff7bd2b0a in __gxx_personality_v0 (version=<optimized
out>, actions=<optimized out>,
    exceptionClass=<optimized out>, unwind_exception=<optimized out>,
context=<optimized out>)
    at ../projects/libcxxabi/src/cxa_personality.cpp:1005
#5  0x00000000004056a3 in _Unwind_RaiseException_Phase2
(exc=exc at entry=0x60b1e8, context=context at entry=0x7fffffffd940)
    at ../../../libgcc/unwind.inc:62
#6  0x0000000000405e97 in _Unwind_Resume (exc=0x60b1e8) at
../../../libgcc/unwind.inc:230
#7  0x00000000004030e8 in std::__1::list<int, std::__1::allocator<int>
>::insert<int*> ()
#8  0x0000000000401da2 in main ()
(gdb) frame 1
#1  0x00007ffff73d00ce in unw_get_proc_info (cursor=0x7fffffffd940,
info=0x7fffffffd520)
    at ../projects/libunwind/src/libunwind.cpp:237
237       co->getInfo(info);
(gdb) print info
$1 = (unw_proc_info_t *) 0x7fffffffd520
(gdb) print *info
$2 = {start_ip = 140737343503848, end_ip = 140733193388033, lsda =
4223808, handler = 140737488344512, gp = 0,
  flags = 140737354131160, format = 4194368, unwind_info_size = 0,
unwind_info = 9, extra = 8}

Checking recent logs didn't reveal anything obvious so I'd be happy if
you guys have any ideas about this. This is on a Linux x86-64 host.

Regards,
ismail



More information about the llvm-dev mailing list