Makes it a little easier to read objdump's disassembly.
Details
- Reviewers
gkm - Group Reviewers
Restricted Project - Commits
- rG5d26bd3b7553: [lld-macho] Emit indirect symbol table
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
Very nice!
lld/MachO/OutputSection.h | ||
---|---|---|
66–67 | Semantically blank names are beyond our reach in struct section_64, but class OutputSection is ours and we have the freedom to grant meaningful names. In writeTo() the assignments from members of OutputSection to section_64 will make it clear how the meaningful names map onto the meaningless names. | |
lld/MachO/SyntheticSections.h | ||
396 | English style nit. |
lld/MachO/OutputSection.h | ||
---|---|---|
66–67 | It's not clear to me that reserved1 is *only* used to point to the indirect symbol table. Its semantics might be section-type-specific. That's why I didn't call it indirectSymtabOffset or something |
lld/MachO/SyntheticSections.h | ||
---|---|---|
396 | Aren't they the same thing? Accordingly to Grammarly:
On second thought though it would be more accurate to say that "the indirect symbol table *is* a concatentation" |
lld/MachO/OutputSection.h | ||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
66–67 | Ah, I see. OutputSection is very superclassy, so the reserved[12] members are just as generic as for section_64. My suggestion would be better suited to a subclass shared by GotSection, TlvPointerSection, and StubsSection. | |||||||||||||||||||||||||||
lld/MachO/SyntheticSections.h | ||||||||||||||||||||||||||||
396 | While Grammarly is technically correct (as are you), the nit I am picking is a matter of style. This is the famous passage from Strunk & White's The Elements of Style (do you know it?):
... and your second thought is even better! |
Semantically blank names are beyond our reach in struct section_64, but class OutputSection is ours and we have the freedom to grant meaningful names. In writeTo() the assignments from members of OutputSection to section_64 will make it clear how the meaningful names map onto the meaningless names.