LLVM API Documentation

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Friends | List of all members
llvm::MCModule Class Reference

A completely disassembled object file or executable. It comprises a list of MCAtom's, each representing a contiguous range of either instructions or data. An MCModule is created using MCObjectDisassembler::buildModule. More...

#include <MCModule.h>

Public Member Functions

 MCModule ()
 
 ~MCModule ()
 
MCFunctioncreateFunction (StringRef Name)
 Create a new MCFunction. More...
 
uint64_t getEntrypoint () const
 Get the address of the entrypoint function, or 0 if there is none. More...
 
Create a new MCAtom covering the specified offset range.
MCTextAtomcreateTextAtom (uint64_t Begin, uint64_t End)
 
MCDataAtomcreateDataAtom (uint64_t Begin, uint64_t End)
 

Friends

class MCObjectDisassembler
 

Atom tracking

class MCAtom
 

Basic block tracking

class MCBasicBlock
 
class MCTextAtom
 

Access to the owned atom list, ordered by begin address.

typedef AtomListTy::const_iterator const_atom_iterator
 
typedef AtomListTy::iterator atom_iterator
 
const MCAtomfindAtomContaining (uint64_t Addr) const
 
MCAtomfindAtomContaining (uint64_t Addr)
 
const MCAtomfindFirstAtomAfter (uint64_t Addr) const
 
MCAtomfindFirstAtomAfter (uint64_t Addr)
 
const_atom_iterator atom_begin () const
 
atom_iterator atom_begin ()
 
const_atom_iterator atom_end () const
 
atom_iterator atom_end ()
 

Access to the owned function list.

typedef
FunctionListTy::const_iterator 
const_func_iterator
 
typedef FunctionListTy::iterator func_iterator
 
const_func_iterator func_begin () const
 
func_iterator func_begin ()
 
const_func_iterator func_end () const
 
func_iterator func_end ()
 

Detailed Description

A completely disassembled object file or executable. It comprises a list of MCAtom's, each representing a contiguous range of either instructions or data. An MCModule is created using MCObjectDisassembler::buildModule.

Definition at line 36 of file MCModule.h.

Member Typedef Documentation

typedef AtomListTy:: iterator llvm::MCModule::atom_iterator

Definition at line 107 of file MCModule.h.

typedef AtomListTy::const_iterator llvm::MCModule::const_atom_iterator

Definition at line 106 of file MCModule.h.

typedef FunctionListTy::const_iterator llvm::MCModule::const_func_iterator

Definition at line 119 of file MCModule.h.

typedef FunctionListTy:: iterator llvm::MCModule::func_iterator

Definition at line 120 of file MCModule.h.

Constructor & Destructor Documentation

llvm::MCModule::MCModule ( )
inline

Definition at line 90 of file MCModule.h.

MCModule::~MCModule ( )

Definition at line 133 of file MCModule.cpp.

References atom_begin(), atom_end(), func_begin(), and func_end().

Member Function Documentation

const_atom_iterator llvm::MCModule::atom_begin ( ) const
inline

Definition at line 108 of file MCModule.h.

Referenced by findAtomContaining(), findFirstAtomAfter(), and ~MCModule().

atom_iterator llvm::MCModule::atom_begin ( )
inline

Definition at line 109 of file MCModule.h.

const_atom_iterator llvm::MCModule::atom_end ( ) const
inline

Definition at line 110 of file MCModule.h.

Referenced by findAtomContaining(), findFirstAtomAfter(), and ~MCModule().

atom_iterator llvm::MCModule::atom_end ( )
inline

Definition at line 111 of file MCModule.h.

MCDataAtom * MCModule::createDataAtom ( uint64_t  Begin,
uint64_t  End 
)

Definition at line 46 of file MCModule.cpp.

Referenced by llvm::MCDataAtom::split().

MCFunction * MCModule::createFunction ( StringRef  Name)

Create a new MCFunction.

Definition at line 101 of file MCModule.cpp.

Referenced by llvm::MCObjectDisassembler::createFunction().

MCTextAtom * MCModule::createTextAtom ( uint64_t  Begin,
uint64_t  End 
)

Definition at line 40 of file MCModule.cpp.

References MCTextAtom.

Referenced by llvm::MCTextAtom::split().

const MCAtom * MCModule::findAtomContaining ( uint64_t  Addr) const

Definition at line 75 of file MCModule.cpp.

References atom_begin(), atom_end(), and AtomComp().

Referenced by findAtomContaining().

MCAtom * MCModule::findAtomContaining ( uint64_t  Addr)

Definition at line 83 of file MCModule.cpp.

References findAtomContaining().

const MCAtom * MCModule::findFirstAtomAfter ( uint64_t  Addr) const

Definition at line 88 of file MCModule.cpp.

References atom_begin(), atom_end(), AtomCompInv(), and I.

Referenced by findFirstAtomAfter().

MCAtom * MCModule::findFirstAtomAfter ( uint64_t  Addr)

Definition at line 96 of file MCModule.cpp.

References findFirstAtomAfter().

const_func_iterator llvm::MCModule::func_begin ( ) const
inline

Definition at line 121 of file MCModule.h.

Referenced by llvm::MCObjectDisassembler::createFunction(), and ~MCModule().

func_iterator llvm::MCModule::func_begin ( )
inline

Definition at line 122 of file MCModule.h.

const_func_iterator llvm::MCModule::func_end ( ) const
inline

Definition at line 123 of file MCModule.h.

Referenced by llvm::MCObjectDisassembler::createFunction(), and ~MCModule().

func_iterator llvm::MCModule::func_end ( )
inline

Definition at line 124 of file MCModule.h.

uint64_t llvm::MCModule::getEntrypoint ( ) const
inline

Get the address of the entrypoint function, or 0 if there is none.

Definition at line 128 of file MCModule.h.

Friends And Related Function Documentation

friend class MCAtom
friend

Definition at line 47 of file MCModule.h.

friend class MCBasicBlock
friend

Definition at line 65 of file MCModule.h.

friend class MCObjectDisassembler
friend

Definition at line 87 of file MCModule.h.

friend class MCTextAtom
friend

Definition at line 66 of file MCModule.h.

Referenced by createTextAtom().


The documentation for this class was generated from the following files: