forked from OSchip/llvm-project
parent
7650db0680
commit
0742ce9cf7
|
@ -836,27 +836,6 @@ public:
|
|||
setAddressOfEntryPoint(text, peHeader);
|
||||
}
|
||||
|
||||
uint64_t calcSectionSize(llvm::COFF::SectionCharacteristics sectionType) {
|
||||
uint64_t ret = 0;
|
||||
for (auto &cp : _chunks)
|
||||
if (SectionChunk *chunk = dyn_cast<SectionChunk>(&*cp))
|
||||
if (chunk->getSectionCharacteristics() & sectionType)
|
||||
ret += chunk->size();
|
||||
return ret;
|
||||
}
|
||||
|
||||
uint64_t calcSizeOfInitializedData() {
|
||||
return calcSectionSize(llvm::COFF::IMAGE_SCN_CNT_INITIALIZED_DATA);
|
||||
}
|
||||
|
||||
uint64_t calcSizeOfUninitializedData() {
|
||||
return calcSectionSize(llvm::COFF::IMAGE_SCN_CNT_UNINITIALIZED_DATA);
|
||||
}
|
||||
|
||||
uint64_t calcSizeOfCode() {
|
||||
return calcSectionSize(llvm::COFF::IMAGE_SCN_CNT_CODE);
|
||||
}
|
||||
|
||||
virtual error_code writeFile(const File &linkedFile, StringRef path) {
|
||||
this->build(linkedFile);
|
||||
|
||||
|
@ -938,6 +917,27 @@ private:
|
|||
}
|
||||
}
|
||||
|
||||
uint64_t calcSectionSize(llvm::COFF::SectionCharacteristics sectionType) {
|
||||
uint64_t ret = 0;
|
||||
for (auto &cp : _chunks)
|
||||
if (SectionChunk *chunk = dyn_cast<SectionChunk>(&*cp))
|
||||
if (chunk->getSectionCharacteristics() & sectionType)
|
||||
ret += chunk->size();
|
||||
return ret;
|
||||
}
|
||||
|
||||
uint64_t calcSizeOfInitializedData() {
|
||||
return calcSectionSize(llvm::COFF::IMAGE_SCN_CNT_INITIALIZED_DATA);
|
||||
}
|
||||
|
||||
uint64_t calcSizeOfUninitializedData() {
|
||||
return calcSectionSize(llvm::COFF::IMAGE_SCN_CNT_UNINITIALIZED_DATA);
|
||||
}
|
||||
|
||||
uint64_t calcSizeOfCode() {
|
||||
return calcSectionSize(llvm::COFF::IMAGE_SCN_CNT_CODE);
|
||||
}
|
||||
|
||||
std::vector<std::unique_ptr<Chunk>> _chunks;
|
||||
const PECOFFLinkingContext &_PECOFFLinkingContext;
|
||||
uint32_t _numSections;
|
||||
|
|
Loading…
Reference in New Issue