Adds support for emitting common local global symbols to an XCOFF object file.
Local commons are emitted into the .bss section with a storage class of
C_HIDEXT.
Details
Details
Diff Detail
Diff Detail
- Repository
- rL LLVM
Event Timeline
llvm/lib/MC/XCOFFObjectWriter.cpp | ||
---|---|---|
238 ↗ | (On Diff #214666) | "CSect" would match how the function is named. |
llvm/test/CodeGen/PowerPC/aix-xcoff-lcomm.ll | ||
5 ↗ | (On Diff #214666) | There should be a follow-up patch to this (dependent on D65240) that checks the symbol table entries. |
15 ↗ | (On Diff #214666) | There is no matching RUN line. |
llvm/lib/MC/XCOFFObjectWriter.cpp | ||
---|---|---|
238 ↗ | (On Diff #214666) | I guess it's "CSECT" now. |
240 ↗ | (On Diff #214666) | There's no Add in the base patch anymore. This needs a rebase. |
llvm/test/CodeGen/PowerPC/aix-xcoff-lcomm.ll | ||
5 ↗ | (On Diff #214666) | D65240 might land before this, in which case, this patch should be updated for the test changes. |
Comment Actions
Whereas commons cannot be placed into the same section, local commons can be. While it is true that there are no csect members defined in the symbol table for a csect for local commons, the separate label names are available in the assembly. In the object file, these are offsets from the csect. How references are done via the TOC is a matter of choice.