Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members

LoaderSection Class Reference

#include <RawSection.h>

Inheritance diagram for LoaderSection:

RawSection Base List of all members.

Public Member Functions

 LoaderSection (SectHeader *h, XCoffFile *xcoff)
uint32_t read (BinaryInputFile *b)
void print ()
const char * briefName ()
uint32_t getInstrumentationSize (XCoffFileGen *xCoffGen)
uint32_t instrument (char *buffer, XCoffFileGen *xCoffGen, BaseGen *gen)
uint32_t getBSSRelocations (uint64_t *addrs)
uint32_t getRelocationCount ()

Protected Member Functions

 ~LoaderSection ()

Protected Attributes

LSHeaderheader
uint32_t numberOfSymbols
LSSymbol ** symbolTable
char * symbolTablePtr
uint32_t numberOfRelocations
LSRelocation ** relocationTable
char * relocationTablePtr
LSFileNameTablefileNameTable
LSStringTablestringTable

Constructor & Destructor Documentation

LoaderSection::~LoaderSection  )  [inline, protected]
 

Definition at line 178 of file RawSection.h.

LoaderSection::LoaderSection SectHeader h,
XCoffFile xcoff
[inline]
 

Definition at line 181 of file RawSection.h.

References fileNameTable, header, numberOfRelocations, numberOfSymbols, relocationTable, relocationTablePtr, stringTable, symbolTable, and symbolTablePtr.


Member Function Documentation

const char* LoaderSection::briefName  )  [inline, virtual]
 

Reimplemented from RawSection.

Definition at line 191 of file RawSection.h.

uint32_t LoaderSection::getBSSRelocations uint64_t *  addrs  ) 
 

Definition at line 337 of file RawSection.C.

References BSS_SYMBOL_IN_LOADER, numberOfRelocations, and relocationTable.

uint32_t LoaderSection::getInstrumentationSize XCoffFileGen xCoffGen  )  [virtual]
 

Reimplemented from RawSection.

Definition at line 387 of file ReWriting.C.

References XCoffFileGen::getNumOfSharedLibFuncs(), XCoffFileGen::getSharedLibFuncName(), XCoffFileGen::getSharedLibraryPathAndObj(), RawSection::getXCoffFile(), XCoffFile::is64Bit(), Size__32_bit_Loader_Section_Relocation, Size__32_bit_Loader_Section_Symbol, Size__64_bit_Loader_Section_Relocation, and Size__64_bit_Loader_Section_Symbol.

uint32_t LoaderSection::getRelocationCount  )  [inline]
 

Definition at line 196 of file RawSection.h.

References numberOfRelocations.

uint32_t LoaderSection::instrument char *  buffer,
XCoffFileGen xCoffGen,
BaseGen gen
[virtual]
 

Reimplemented from RawSection.

Definition at line 415 of file ReWriting.C.

References ASSERT, LSHeader::charStream(), LSRelocation::charStream(), LSSymbol::charStream(), fileNameTable, LSFileNameTable::getFileNameEntryCount(), LSFileNameTable::getFileNameTablePtr(), LSFileNameTable::getFileNameTableSize(), XCoffFileGen::getNumOfSharedLibFuncs(), XCoffFileGen::getSharedLibFuncAddrLocation(), XCoffFileGen::getSharedLibFuncName(), XCoffFileGen::getSharedLibraryPathAndObj(), LSStringTable::getStringTablePtr(), LSStringTable::getStringTableSize(), RawSection::getXCoffFile(), header, IMPLICIT_SYM_COUNT, XCoffFile::is64Bit(), LSHeader::newHeader(), LSRelocation::newRelocation(), LSSymbol::newSymbol(), numberOfRelocations, numberOfSymbols, PRINT_DEBUG, relocationTable, Size__32_bit_Loader_Section_Header, Size__32_bit_Loader_Section_Relocation, Size__32_bit_Loader_Section_Symbol, Size__64_bit_Loader_Section_Header, Size__64_bit_Loader_Section_Relocation, Size__64_bit_Loader_Section_Symbol, stringTable, and symbolTable.

void LoaderSection::print  )  [virtual]
 

Reimplemented from RawSection.

Definition at line 313 of file RawSection.C.

References fileNameTable, header, IMPLICIT_SYM_COUNT, numberOfRelocations, numberOfSymbols, LSStringTable::print(), LSFileNameTable::print(), LSRelocation::print(), LSHeader::print(), RawSection::print(), PRINT_INFOR, relocationTable, stringTable, and symbolTable.

uint32_t LoaderSection::read BinaryInputFile b  )  [virtual]
 

Reimplemented from RawSection.

Definition at line 247 of file RawSection.C.

References LSHeader::charStream(), BinaryInputFile::copyBytesIterate(), BinaryInputFile::currentOffset(), fileNameTable, RawSection::getXCoffFile(), header, IMPLICIT_SYM_COUNT, XCoffFile::is64Bit(), numberOfRelocations, numberOfSymbols, relocationTable, relocationTablePtr, Base::setFileOffset(), BinaryInputFile::setInPointer(), Size__32_bit_Loader_Section_Header, Size__32_bit_Loader_Section_Relocation, Size__32_bit_Loader_Section_Symbol, Size__64_bit_Loader_Section_Header, Size__64_bit_Loader_Section_Relocation, Size__64_bit_Loader_Section_Symbol, stringTable, symbolTable, and symbolTablePtr.


Member Data Documentation

LSFileNameTable* LoaderSection::fileNameTable [protected]
 

Definition at line 175 of file RawSection.h.

Referenced by instrument(), LoaderSection(), print(), and read().

LSHeader* LoaderSection::header [protected]
 

Reimplemented from RawSection.

Definition at line 165 of file RawSection.h.

Referenced by instrument(), LoaderSection(), print(), and read().

uint32_t LoaderSection::numberOfRelocations [protected]
 

Definition at line 171 of file RawSection.h.

Referenced by getBSSRelocations(), getRelocationCount(), instrument(), LoaderSection(), print(), and read().

uint32_t LoaderSection::numberOfSymbols [protected]
 

Definition at line 167 of file RawSection.h.

Referenced by instrument(), LoaderSection(), print(), and read().

LSRelocation** LoaderSection::relocationTable [protected]
 

Definition at line 172 of file RawSection.h.

Referenced by getBSSRelocations(), instrument(), LoaderSection(), print(), and read().

char* LoaderSection::relocationTablePtr [protected]
 

Definition at line 173 of file RawSection.h.

Referenced by LoaderSection(), and read().

LSStringTable* LoaderSection::stringTable [protected]
 

Definition at line 176 of file RawSection.h.

Referenced by instrument(), LoaderSection(), print(), and read().

LSSymbol** LoaderSection::symbolTable [protected]
 

Definition at line 168 of file RawSection.h.

Referenced by instrument(), LoaderSection(), print(), and read().

char* LoaderSection::symbolTablePtr [protected]
 

Definition at line 169 of file RawSection.h.

Referenced by LoaderSection(), and read().


The documentation for this class was generated from the following files:
Generated on Mon Jan 28 11:08:40 2008 for PMaCInstrumentor by doxygen 1.3.5