#include <Function.h>
Public Member Functions | |
Function (uint32_t idx, uint32_t symCount, Symbol **symbols, RawSection *sect) | |
~Function () | |
void | updateSize (uint64_t size) |
void | updateInstructionSize () |
AddressIterator | getAddressIterator () |
AddressIterator | getInstructionIterator () |
uint32_t | getIndex () |
RawSection * | getRawSection () |
FlowGraph * | getFlowGraph () |
void | generateCFG () |
uint32_t | getSize () |
uint32_t | getInstructionSize () |
bool | instructionInRange (uint64_t addr) |
uint64_t | getBaseAddress () |
uint32_t | getInstructionCount () |
uint32_t | getInstructionIndex (uint64_t addr) |
void | print () |
void | parseJumpTable (AddressIterator ait, BasicBlock **allBlocks, BasicBlock *currBlock=NULL, LinkedList< uint32_t > *tgtEdgeBags=NULL, LinkedList< uint32_t > *srcEdgeBags=NULL) |
bool | getJumpTableInformation (uint64_t *jumpTableAddr, uint32_t *jumpTableEntryCount, AddressIterator ait) |
XCoffFile * | getXCoffFile () |
void | findMemoryFloatOps () |
HashCode | getHashCode () |
BasicBlock * | getBlock (uint32_t idx) |
bool | isAnySymbolA (char *name) |
uint32_t | getNumOfAllSymbols () |
uint32_t | getAllSymbolNames (char *buffer, uint32_t len, bool onlyFirst) |
void | buildLoops () |
Protected Attributes | |
RawSection * | rawSection |
uint32_t | index |
uint32_t | numOfAllSymbols |
Symbol ** | allSymbols |
uint64_t | baseAddress |
uint32_t | sizeInBytes |
uint32_t | insnSizeInBytes |
FlowGraph * | flowGraph |
HashCode | hashCode |
|
Definition at line 399 of file Function.C. References allSymbols, ASSERT, baseAddress, GET, RawSection::getIndex(), SymbolTable::getSymbolLength(), RawSection::getSymbolTable(), hashCode, index, HashCode::isFunction(), numOfAllSymbols, rawSection, and sizeInBytes. |
|
Definition at line 211 of file Function.h. References allSymbols. |
|
Definition at line 260 of file Function.h. References FlowGraph::buildLoops(), and flowGraph. Referenced by TextSection::buildLoops(). |
|
Definition at line 948 of file Function.C. References FlowGraph::findMemoryFloatOps(), and flowGraph. Referenced by TextSection::findMemoryFloatOps(). |
|
|
Definition at line 954 of file Function.C. References baseAddress, AddressIterator::newAddressIteratorWord(), and sizeInBytes. Referenced by updateInstructionSize(). |
|
Definition at line 425 of file Function.C. References allSymbols, SymbolTable::getSymbolName(), RawSection::getSymbolTable(), numOfAllSymbols, and rawSection. Referenced by CountAllBlocks::printInstrumentationPoints(), and CommonMethods::printInstrumentationPoints(). |
|
Definition at line 232 of file Function.h. References baseAddress. Referenced by generateCFG(), and CountAllBlocks::printInstrumentationPoints(). |
|
Definition at line 253 of file Function.h. References flowGraph, and FlowGraph::getBlock(). Referenced by XCoffFile::findBasicBlock(). |
|
Definition at line 649 of file Function.C. References flowGraph. Referenced by TextSection::getAllBlocks(), TextSection::getNumberOfBlocks(), TextSection::getNumberOfFloatPOps(), and TextSection::getNumberOfMemoryOps(). |
|
Definition at line 251 of file Function.h. References hashCode. Referenced by print(), and FlowGraph::print(). |
|
Definition at line 219 of file Function.h. References index. Referenced by FlowGraph::buildLoops(), generateCFG(), FlowGraph::getIndex(), MemoryOperation::MemoryOperation(), and BasicBlock::setIndex(). |
|
Definition at line 234 of file Function.h. References insnSizeInBytes. Referenced by generateCFG(), and CountAllBlocks::printInstrumentationPoints(). |
|
Definition at line 235 of file Function.h. References baseAddress. Referenced by generateCFG(), and parseJumpTable(). |
|
Definition at line 958 of file Function.C. References baseAddress, insnSizeInBytes, and AddressIterator::newAddressIteratorWord(). Referenced by generateCFG(). |
|
Definition at line 226 of file Function.h. References insnSizeInBytes. Referenced by generateCFG(). |
|
|
Definition at line 257 of file Function.h. References numOfAllSymbols. |
|
Definition at line 221 of file Function.h. References rawSection. Referenced by FlowGraph::getRawSection(). |
|
Definition at line 225 of file Function.h. References sizeInBytes. Referenced by generateCFG(). |
|
Definition at line 962 of file Function.C. References RawSection::getXCoffFile(), and rawSection. Referenced by getJumpTableInformation(), FlowGraph::getXCoffFile(), and parseJumpTable(). |
|
Definition at line 228 of file Function.h. References baseAddress, and insnSizeInBytes. Referenced by generateCFG(), and parseJumpTable(). |
|
Definition at line 966 of file Function.C. References allSymbols, SymbolTable::getSymbolName(), RawSection::getSymbolTable(), numOfAllSymbols, and rawSection. Referenced by CountAllBlocks::findTerminationBlock(), and CommonMethods::findTerminationBlock(). |
|
|
Definition at line 460 of file Function.C. References allSymbols, baseAddress, DemangleWrapper::demangle_combined(), flowGraph, getHashCode(), SymbolTable::getStorageMapping(), SymbolTable::getSymbolLength(), SymbolTable::getSymbolName(), RawSection::getSymbolTable(), index, insnSizeInBytes, numOfAllSymbols, FlowGraph::print(), PRINT_INFOR, rawSection, and sizeInBytes. Referenced by generateCFG(), and TextSection::print(). |
|
Definition at line 487 of file Function.C. References getAddressIterator(), AddressIterator::getOffset(), AddressIterator::hasMore(), insnSizeInBytes, Instruction::isZero(), rawSection, RawSection::readInstruction(), and sizeInBytes. Referenced by TextSection::findFunctions(). |
|
Definition at line 213 of file Function.h. References sizeInBytes. Referenced by TextSection::findFunctions(). |
|
Definition at line 197 of file Function.h. Referenced by Function(), getAllSymbolNames(), isAnySymbolA(), print(), and ~Function(). |
|
Definition at line 199 of file Function.h. Referenced by Function(), getAddressIterator(), getBaseAddress(), getInstructionIndex(), getInstructionIterator(), instructionInRange(), and print(). |
|
Definition at line 204 of file Function.h. Referenced by buildLoops(), findMemoryFloatOps(), generateCFG(), getBlock(), getFlowGraph(), parseJumpTable(), and print(). |
|
Definition at line 206 of file Function.h. Referenced by Function(), and getHashCode(). |
|
Definition at line 194 of file Function.h. Referenced by Function(), generateCFG(), getIndex(), and print(). |
|
Definition at line 202 of file Function.h. Referenced by getInstructionCount(), getInstructionIterator(), getInstructionSize(), instructionInRange(), print(), and updateInstructionSize(). |
|
Definition at line 196 of file Function.h. Referenced by Function(), getAllSymbolNames(), getNumOfAllSymbols(), isAnySymbolA(), and print(). |
|
Definition at line 193 of file Function.h. Referenced by Function(), generateCFG(), getAllSymbolNames(), getJumpTableInformation(), getRawSection(), getXCoffFile(), isAnySymbolA(), parseJumpTable(), print(), and updateInstructionSize(). |
|
Definition at line 200 of file Function.h. Referenced by Function(), getAddressIterator(), getSize(), print(), updateInstructionSize(), and updateSize(). |