I was trying to build libcxx/libcxxabi/libunwind when I realized that I didn't actually understand what role they play.
I checked libcxxabi spci, and found that it defines API used in C++ exception. But I can't find any document about libunwind, and one blog(New libunwind implementation in libc++abi) I found by google says that libunwind is the implementation of libcxxabi.
So, is libunwind really like that, implements ABI in libcxxabi, if so, why we have libcxxabi?
I built
libunwindmyself and checked the symbols inlibunwindby usingnmand got these:That seems to imply that
libunwindjust implements the unwind functions, nothing else.