[llvm-branch-commits] [llvm] [GOFF] Add writing of section symbols (PR #133799)
Kai Nacke via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Mon Apr 7 13:30:26 PDT 2025
================
@@ -239,6 +298,63 @@ class GOFFWriter {
GOFFWriter::GOFFWriter(raw_pwrite_stream &OS, MCAssembler &Asm)
: OS(OS), Asm(Asm) {}
+void GOFFWriter::defineSectionSymbols(const MCSectionGOFF &Section) {
+ if (Section.isSD()) {
+ GOFFSymbol SD(Section.getName(), Section.getId(),
+ Section.getSDAttributes());
+ writeSymbol(SD);
+ }
+
+ if (Section.isED()) {
+ GOFFSymbol ED(Section.getName(), Section.getId(),
+ Section.getParent()->getId(), Section.getEDAttributes());
+ if (Section.requiresLength())
+ ED.SectionLength = Asm.getSectionAddressSize(Section);
+ writeSymbol(ED);
+ }
+
+ if (Section.isPR()) {
+ GOFFSymbol PR(Section.getName(), Section.getId(),
+ Section.getParent()->getId(), Section.getPRAttributes());
+ PR.SectionLength = Asm.getSectionAddressSize(Section);
+ if (Section.requiresNonZeroLength()) {
----------------
redstar wrote:
> Or, in the alternative, should we simply not set the ADA link if the target section is empty? If an ADA section, it cannot actually be used for anything, so do we even need to register it as ADA for a text section?
That is a simple solution, too. I am not sure if this works with the HLASM output.
https://github.com/llvm/llvm-project/pull/133799
More information about the llvm-branch-commits
mailing list