This introduce a new helper which is used to parse the SHT_GNU_versym section.
LLVM/GNU styles implementations now use it to share the logic.
Details
Diff Detail
Event Timeline
llvm/test/tools/llvm-readobj/elf-versym-invalid.test | ||
---|---|---|
16 | 25 -> 255 | |
31 | referenc -> reference | |
32 | Delete the extra "table" | |
72 | I'm not asking for a change, but I'm noting that this warning message is getting a bit silly in length! I don't have any better suggestion though without losing context. | |
95 | Nit: missing full stop. | |
123 | Here and elsewhere "... when a SHT_GNU_versym..." | |
130 | What's the trailing "()" for here? | |
151 | in the associated symbol table. | |
183 | dynamic symbols -> dynamic symbol | |
llvm/tools/llvm-readobj/ELFDumper.cpp | ||
373–374 | // Returns the linked symbol table and associated string table for a given section. | |
378 | ExpectedType should be an Elf_Word, I think. | |
451 | symbols table -> symbol table | |
5924 | Should this be for (size_t I = 0, S = Syms.size(); I < S; ++I)? | |
5928 | true /* IsDynamic */ -> /*IsDynamic=*/true |
- Addressed review comments.
llvm/test/tools/llvm-readobj/elf-versym-invalid.test | ||
---|---|---|
72 | Yeah, but this is a result of a multiple messages concatenations. It is kind of by design. | |
130 | It usually contains a section name. E.g.: Addr: 0000000000000000 Offset: 0x000040 Link: 4 (.dynsym) Here the sh_link==0 hence we see no name. Doesn't seem to be a bug problem? (since having sh_link==0 is ubnormal). | |
llvm/tools/llvm-readobj/ELFDumper.cpp | ||
378 | Probably not. It is expected to accept an enum value which is unsigned: enum : unsigned { ... SHT_DYNSYM = 11, // Symbol table. | |
5924 | Done. |
25 -> 255