Go to the documentation of this file.
56 using ReferenceManager::SafePointer;
57 using ReferenceManager::SectionKey;
58 using ReferenceManager::SectionOffsetKey;
59 using ReferenceManager::FileOffsetKey;
121 bool locationOfRelocationMustBeSet =
false;
122 assert(locationOfRelocationMustBeSet);
126 if (rElem->
symbol() != NULL) {
130 bool symbolFieldOfRelocationMustBeSet =
false;
131 assert(symbolFieldOfRelocationMustBeSet);
143 rType = rType |
static_cast<Byte>(rElem->
type());
184 dynamic_cast<const RelocSection*
>(sect)->referencedSection();
void writeHalfWord(HalfWord halfword)
unsigned int writePosition()
virtual Section::SectionType type() const
static const Word elementSize_
The fixed size of reloc element.
SymbolElement * symbol() const
static void addObjectReference(SectionIndexKey key, const SafePointable *obj)
virtual void actualWriteData(BinaryStream &stream, const Section *section) const
virtual ~TPEFRelocSectionWriter()
#define assert(condition)
SectionElement * element(Word index) const
static void registerSectionWriter(const SectionWriter *sWriter)
ASpaceElement * aSpace() const
Word FileOffset
Type for storing absolute file offsets.
virtual Word elementSize(const Section *section) const
void writeByte(Byte byte)
static void setSize(const SafePointable *obj, Word size)
@ ST_RELOC
Relocation section.
virtual void writeInfo(BinaryStream &stream, const Section *sect) const
static const TPEFRelocSectionWriter instance_
An unique instance of class.
SectionElement * location() const
Word elementCount() const