================
@@ -2126,42 +2125,34 @@ bool UnwindCursor<A, R>::getInfoFromTBTable(pint_t pc,
R ®isters) {
// function __xlcxx_personality_v0(), which is the personality for the
state
// table and is exported from libc++abi, is directly assigned as the
// handler here. When a legacy XLC++ frame is encountered, the symbol
- // is resolved dynamically using dlopen() to avoid hard dependency from
- // libunwind on libc++abi.
+ // is resolved dynamically using dlopen() to avoid a hard dependency of
+ // libunwind on libc++abi in cases such as non-C++ applications.
// Resolve the function pointer to the state table personality if it has
- // not already.
+ // not already done.
if (xlcPersonalityV0 == NULL) {
xlcPersonalityV0InitLock.lock();
if (xlcPersonalityV0 == NULL) {
- // If libc++abi is statically linked in, symbol __xlcxx_personality_v0
- // has been resolved at the link time.
- xlcPersonalityV0 = &__xlcxx_personality_v0;
+ // Resolve __xlcxx_personality_v0 using dlopen().
+ const char libcxxabi[] = "libc++abi.a(libc++abi.so.1)";
----------------
xingxue-ibm wrote:
Changed as suggested, thanks!
https://github.com/llvm/llvm-project/pull/112436
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits