[Lldb-commits] [lldb] r321271 - Work around test failures on red-hat linux

Greg Clayton via lldb-commits lldb-commits at lists.llvm.org
Thu Dec 21 08:34:22 PST 2017


> On Dec 21, 2017, at 7:24 AM, Pavel Labath via lldb-commits <lldb-commits at lists.llvm.org> wrote:
> 
> On 21 December 2017 at 15:17, Pavel Labath <labath at google.com> wrote:
>> Right now I'm looking at two (ignoring the debug-info multiplication):
>> TestExprs2.py and TestTopLevelExprs.py
>> TestExprs2 is encountering ambiguity when looking up the "environ"
>> symbol (the dynamic linker contains an extra copy). I think I know how
>> to handle that.
> 
> Ok, I take that back. I was hoping I could just implement
> ObjectFileELF::GetIsDynamicLinkEditor, but it seems that function is
> not actually called from anywhere.
> 
> Does anyone have more background about that function?

dyld on MacOS has exported functions like "malloc", and "free" and many many others that mirror libc function needed to bootstrap dyld before it has actually loaded libc into the process. When someone types "b malloc" on the lldb command line, we would end up setting breakpoints in both dyld and in libc which isn't what the user wanted. This flag is was used to say "this library defines many functions that are similar to other libraries, but no one wants to actually stop in these". This used to be used in:

Platform::ModuleIsExcludedForUnconstrainedSearches(...)

This is a function that says "for my platform, don't include this library in global searches. We eventually added ObjectFile::GetType() which can return ObjectFile::eTypeDynamicLinker. This is what is currently used in PlatformDarwin::ModuleIsExcludedForUnconstrainedSearches(...) to avoid dyld when doing global searches.

So it might be as simple as making sure that the dynamic linker shared ObjectFile returns ObjectFile::eTypeDynamicLinker and then adding PlatformPosix::ModuleIsExcludedForUnconstrainedSearches(...) that does something similar to PlatformDarwin::ModuleIsExcludedForUnconstrainedSearches(...).



> _______________________________________________
> lldb-commits mailing list
> lldb-commits at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20171221/261893d9/attachment.html>


More information about the lldb-commits mailing list