[Lldb-commits] [lldb] r132582 - /lldb/trunk/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp

Greg Clayton gclayton at apple.com
Fri Jun 3 14:08:58 PDT 2011


Another clarification I meant to initially convey, so one more time:

Will the content of SHT_SYMTAB always contain the all the same symbols found in SHT_DYNSYM and more symbol (symbols that aren't required by the dynamic loader)? Or do the symbols for the dynamic loader only get put into the SHT_DYNSYM sections, and any other symbols get put into the SHT_SYMTAB sections? 

Shouldn't we just parse the SHT_SYMTAB sections and fall back to the SHT_DYNSYM section(s) if there are no SHT_SYMTAB sections?

On Jun 3, 2011, at 2:03 PM, Greg Clayton wrote:

> Yikes, copy/paste errors abound in my previous reply. This should have read:
> 
> - Will the content of SHT_SYMTAB always contain the all the same symbols found in SHT_DYNSYM? If so, why parse the SHT_DYNSYM as well? 
> Shouldn't we just parse the SHT_SYMTAB and fall back to the SHT_DYNSYM if there is no SHT_SYMTAB?
> 
> On Jun 3, 2011, at 1:55 PM, Greg Clayton wrote:
> 
>> A few quick ELF questions:
>> 
>> - Will the content of SHT_SYMTAB always contain the all the same symbols found in SHT_DYNSYM? If so, why parse the SHT_DYNSYM as well? 
>> Shouldn't we just parse the SHT_DYNSYM and fall back to the SHT_DYNSYM if there is no SHT_DYNSYM?
>> 
>> 
>> 
>> 
>> On Jun 3, 2011, at 1:39 PM, Peter Collingbourne wrote:
>> 
>>> Author: pcc
>>> Date: Fri Jun  3 15:39:58 2011
>>> New Revision: 132582
>>> 
>>> URL: http://llvm.org/viewvc/llvm-project?rev=132582&view=rev
>>> Log:
>>> Scan dynamic symbol table of ELF object files
>>> 
>>> Modified:
>>>  lldb/trunk/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
>>> 
>>> Modified: lldb/trunk/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
>>> URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp?rev=132582&r1=132581&r2=132582&view=diff
>>> ==============================================================================
>>> --- lldb/trunk/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp (original)
>>> +++ lldb/trunk/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp Fri Jun  3 15:39:58 2011
>>> @@ -1085,7 +1085,7 @@
>>>   for (SectionHeaderCollIter I = m_section_headers.begin();
>>>        I != m_section_headers.end(); ++I)
>>>   {
>>> -        if (I->sh_type == SHT_SYMTAB)
>>> +        if (I->sh_type == SHT_SYMTAB || I->sh_type == SHT_DYNSYM)
>>>       {
>>>           const ELFSectionHeader &symtab_header = *I;
>>>           user_id_t section_id = SectionIndex(I);
>>> 
>>> 
>>> _______________________________________________
>>> lldb-commits mailing list
>>> lldb-commits at cs.uiuc.edu
>>> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-commits
>> 
>> _______________________________________________
>> lldb-commits mailing list
>> lldb-commits at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-commits
> 




More information about the lldb-commits mailing list