LLVM API Documentation

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

#include <DebugInfo.h>

Public Types

typedef SmallVectorImpl
< MDNode * >::const_iterator 
iterator
 

Public Member Functions

 DebugInfoFinder ()
 
void processModule (const Module &M)
 processModule - Process entire module and collect debug info. More...
 
void processDeclare (const Module &M, const DbgDeclareInst *DDI)
 processDeclare - Process DbgDeclareInst. More...
 
void processValue (const Module &M, const DbgValueInst *DVI)
 Process DbgValueInst. More...
 
void processLocation (const Module &M, DILocation Loc)
 processLocation - Process DILocation. More...
 
void reset ()
 Clear all lists. More...
 
iterator compile_unit_begin () const
 
iterator compile_unit_end () const
 
iterator subprogram_begin () const
 
iterator subprogram_end () const
 
iterator global_variable_begin () const
 
iterator global_variable_end () const
 
iterator type_begin () const
 
iterator type_end () const
 
iterator scope_begin () const
 
iterator scope_end () const
 
unsigned compile_unit_count () const
 
unsigned global_variable_count () const
 
unsigned subprogram_count () const
 
unsigned type_count () const
 
unsigned scope_count () const
 

Detailed Description

DebugInfoFinder tries to list all debug info MDNodes used in a module. To list debug info MDNodes used by an instruction, DebugInfoFinder uses processDeclare, processValue and processLocation to handle DbgDeclareInst, DbgValueInst and DbgLoc attached to instructions. processModule will go through all DICompileUnits in llvm.dbg.cu and list debug info MDNodes used by the CUs.

Definition at line 762 of file DebugInfo.h.

Member Typedef Documentation

Definition at line 810 of file DebugInfo.h.

Constructor & Destructor Documentation

llvm::DebugInfoFinder::DebugInfoFinder ( )
inline

Definition at line 764 of file DebugInfo.h.

Member Function Documentation

iterator llvm::DebugInfoFinder::compile_unit_begin ( ) const
inline

Definition at line 811 of file DebugInfo.h.

unsigned llvm::DebugInfoFinder::compile_unit_count ( ) const
inline

Definition at line 822 of file DebugInfo.h.

iterator llvm::DebugInfoFinder::compile_unit_end ( ) const
inline

Definition at line 812 of file DebugInfo.h.

iterator llvm::DebugInfoFinder::global_variable_begin ( ) const
inline

Definition at line 815 of file DebugInfo.h.

unsigned llvm::DebugInfoFinder::global_variable_count ( ) const
inline

Definition at line 823 of file DebugInfo.h.

iterator llvm::DebugInfoFinder::global_variable_end ( ) const
inline

Definition at line 816 of file DebugInfo.h.

void DebugInfoFinder::processDeclare ( const Module M,
const DbgDeclareInst DDI 
)
void DebugInfoFinder::processLocation ( const Module M,
DILocation  Loc 
)

processLocation - Process DILocation.

Definition at line 1005 of file DebugInfo.cpp.

References llvm::DILocation::getOrigLocation(), and llvm::DILocation::getScope().

void DebugInfoFinder::processModule ( const Module M)

processModule - Process entire module and collect debug info.

processModule - Process entire module and collect debug info anchors.

Definition at line 966 of file DebugInfo.cpp.

References llvm::DINameSpace::getContext(), llvm::DIArray::getElement(), llvm::DIImportedEntity::getEntity(), llvm::Module::getNamedMetadata(), and llvm::DIArray::getNumElements().

void DebugInfoFinder::processValue ( const Module M,
const DbgValueInst DVI 
)
void DebugInfoFinder::reset ( )

Clear all lists.

Definition at line 946 of file DebugInfo.cpp.

iterator llvm::DebugInfoFinder::scope_begin ( ) const
inline

Definition at line 819 of file DebugInfo.h.

unsigned llvm::DebugInfoFinder::scope_count ( ) const
inline

Definition at line 826 of file DebugInfo.h.

iterator llvm::DebugInfoFinder::scope_end ( ) const
inline

Definition at line 820 of file DebugInfo.h.

iterator llvm::DebugInfoFinder::subprogram_begin ( ) const
inline

Definition at line 813 of file DebugInfo.h.

unsigned llvm::DebugInfoFinder::subprogram_count ( ) const
inline

Definition at line 824 of file DebugInfo.h.

iterator llvm::DebugInfoFinder::subprogram_end ( ) const
inline

Definition at line 814 of file DebugInfo.h.

iterator llvm::DebugInfoFinder::type_begin ( ) const
inline

Definition at line 817 of file DebugInfo.h.

unsigned llvm::DebugInfoFinder::type_count ( ) const
inline

Definition at line 825 of file DebugInfo.h.

iterator llvm::DebugInfoFinder::type_end ( ) const
inline

Definition at line 818 of file DebugInfo.h.


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