summaryrefslogtreecommitdiffstats
path: root/llvm/lib
diff options
context:
space:
mode:
authordiggerlin <digger.llvm@gmail.com>2019-12-06 12:41:38 -0500
committerdiggerlin <digger.llvm@gmail.com>2019-12-06 12:41:38 -0500
commit50d72fa1461b71d898237f3ce19ab367d0508c87 (patch)
treed21aef48eb45d55b11f6ad3cbb654c2e7054cfb8 /llvm/lib
parent79f8c20e2cb634c1b8e42f01b42fc5ab2a512d60 (diff)
downloadbcm5719-llvm-50d72fa1461b71d898237f3ce19ab367d0508c87.tar.gz
bcm5719-llvm-50d72fa1461b71d898237f3ce19ab367d0508c87.zip
[NFC][AIX][XCOFF] if the size of Csect is zero, the Csect do not need write any data into sections
SUMMARY: if the size of Csect is zero, the Csect do not need write any data into sections for example, the TOC Csect has zero size, it do not need invoke a Asm.writeSectionData(W.OS, Csect.MCCsect, Layout); Reviewers: daltenty Subscribers: rupprecht, seiyai,hiraditya Differential Revision: https://reviews.llvm.org/D71120
Diffstat (limited to 'llvm/lib')
-rw-r--r--llvm/lib/MC/XCOFFObjectWriter.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/llvm/lib/MC/XCOFFObjectWriter.cpp b/llvm/lib/MC/XCOFFObjectWriter.cpp
index 788de885e41..3bbf1a9b755 100644
--- a/llvm/lib/MC/XCOFFObjectWriter.cpp
+++ b/llvm/lib/MC/XCOFFObjectWriter.cpp
@@ -368,7 +368,8 @@ void XCOFFObjectWriter::writeSections(const MCAssembler &Asm,
for (const auto &Csect : *Group) {
if (uint32_t PaddingSize = Csect.Address - CurrentAddressLocation)
W.OS.write_zeros(PaddingSize);
- Asm.writeSectionData(W.OS, Csect.MCCsect, Layout);
+ if (Csect.Size)
+ Asm.writeSectionData(W.OS, Csect.MCCsect, Layout);
CurrentAddressLocation = Csect.Address + Csect.Size;
}
}
OpenPOWER on IntegriCloud