Index: lldb/trunk/source/Host/common/Symbols.cpp =================================================================== --- lldb/trunk/source/Host/common/Symbols.cpp +++ lldb/trunk/source/Host/common/Symbols.cpp @@ -87,7 +87,7 @@ const std::string &filename = files[idx_file]; FileSpec file_spec (filename.c_str(), true); - if (file_spec == module_spec.GetFileSpec()) + if (llvm::sys::fs::equivalent (file_spec.GetPath(), module_spec.GetFileSpec().GetPath())) continue; if (file_spec.Exists()) Index: lldb/trunk/test/functionalities/unwind/noreturn/TestNoreturnUnwind.py =================================================================== --- lldb/trunk/test/functionalities/unwind/noreturn/TestNoreturnUnwind.py +++ lldb/trunk/test/functionalities/unwind/noreturn/TestNoreturnUnwind.py @@ -44,7 +44,9 @@ thread = process.GetThreadAtIndex(0) abort_frame_number = 0 for f in thread.frames: - if f.GetFunctionName() == "abort": + # We use endswith() to look for abort() since some C libraries mangle the symbol into + # __GI_abort or similar. + if f.GetFunctionName().endswith("abort"): break abort_frame_number = abort_frame_number + 1