[llvm-commits] [lld] r171708 - /lld/trunk/lib/ReaderWriter/ELF/WriterELF.cpp
Michael J. Spencer
bigcheesegs at gmail.com
Sun Jan 6 23:59:46 PST 2013
Author: mspencer
Date: Mon Jan 7 01:59:46 2013
New Revision: 171708
URL: http://llvm.org/viewvc/llvm-project?rev=171708&view=rev
Log:
[ELF] Change Segment to hold Chunks instead of Sections. No functionality change.
Modified:
lld/trunk/lib/ReaderWriter/ELF/WriterELF.cpp
Modified: lld/trunk/lib/ReaderWriter/ELF/WriterELF.cpp
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/lib/ReaderWriter/ELF/WriterELF.cpp?rev=171708&r1=171707&r2=171708&view=diff
==============================================================================
--- lld/trunk/lib/ReaderWriter/ELF/WriterELF.cpp (original)
+++ lld/trunk/lib/ReaderWriter/ELF/WriterELF.cpp Mon Jan 7 01:59:46 2013
@@ -641,7 +641,7 @@
class SegmentSlice {
public:
typedef typename std::vector<
- Section<target_endianness, max_align, is64Bits> *>::iterator sectionIter;
+ Chunk<target_endianness, max_align, is64Bits> *>::iterator sectionIter;
SegmentSlice() { }
@@ -721,7 +721,7 @@
typedef typename std::vector<SegmentSlice<
target_endianness, max_align, is64Bits> *>::iterator slice_iter;
typedef typename std::vector<
- Section<target_endianness, max_align, is64Bits> *>::iterator SectionIter;
+ Chunk<target_endianness, max_align, is64Bits> *>::iterator SectionIter;
Segment(const StringRef name,
const ELFLayout::SegmentType type,
@@ -894,7 +894,9 @@
virtualAddressSet = true;
}
(*si)->setVAddr(addr);
- (*si)->assignVirtualAddress(addr);
+ if (auto s =
+ dyn_cast<Section<target_endianness, max_align, is64Bits>>(*si))
+ s->assignVirtualAddress(addr);
(*si)->setMemSize(addr - (*si)->virtualAddr());
}
(*sei)->setMemSize(addr - (*sei)->virtualAddr());
@@ -956,7 +958,8 @@
}
private:
- std::vector<Section<target_endianness, max_align, is64Bits> *> _sections;
+ /// \brief Section or some other chunk type.
+ std::vector<Chunk<target_endianness, max_align, is64Bits> *> _sections;
std::vector<SegmentSlice<target_endianness, max_align, is64Bits> *>
_segmentSlices;
ELFLayout::SegmentType _segmentType;
More information about the llvm-commits
mailing list