LLVM API Documentation

Classes | Namespaces | Typedefs | Functions
DebugInfo.h File Reference
#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/iterator_range.h"
#include "llvm/ADT/SmallPtrSet.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/IR/Metadata.h"
#include "llvm/Support/Casting.h"
#include "llvm/Support/Dwarf.h"
Include dependency graph for DebugInfo.h:

Go to the source code of this file.

Classes

class  llvm::DIDescriptor
class  llvm::DISubrange
 DISubrange - This is used to represent ranges, for array bounds. More...
class  llvm::DITypedArray< T >
 DITypedArray - This descriptor holds an array of nodes with type T. More...
class  llvm::DIEnumerator
class  llvm::DIScope
class  llvm::DIRef< T >
class  llvm::DIType
class  llvm::DIBasicType
 DIBasicType - A basic type, like 'int' or 'float'. More...
class  llvm::DIDerivedType
class  llvm::DICompositeType
class  llvm::DISubroutineType
class  llvm::DIFile
 DIFile - This is a wrapper for a file. More...
class  llvm::DICompileUnit
 DICompileUnit - A wrapper for a compile unit. More...
class  llvm::DISubprogram
 DISubprogram - This is a wrapper for a subprogram (e.g. a function). More...
class  llvm::DILexicalBlock
 DILexicalBlock - This is a wrapper for a lexical block. More...
class  llvm::DILexicalBlockFile
class  llvm::DINameSpace
 DINameSpace - A wrapper for a C++ style name space. More...
class  llvm::DITemplateTypeParameter
 DITemplateTypeParameter - This is a wrapper for template type parameter. More...
class  llvm::DITemplateValueParameter
 DITemplateValueParameter - This is a wrapper for template value parameter. More...
class  llvm::DIGlobalVariable
 DIGlobalVariable - This is a wrapper for a global variable. More...
class  llvm::DIVariable
class  llvm::DILocation
class  llvm::DIObjCProperty
class  llvm::DIImportedEntity
 An imported module (C++ using directive or similar). More...
class  llvm::DebugInfoFinder

Namespaces

namespace  llvm
 

List of target independent CodeGen pass IDs.


Typedefs

typedef DenseMap< const
MDString *, MDNode * > 
llvm::DITypeIdentifierMap
 Maps from type identifier to the actual MDNode.
typedef DITypedArray
< DIDescriptor > 
llvm::DIArray
typedef DIRef< DIScope > llvm::DIScopeRef
typedef DIRef< DIType > llvm::DITypeRef
typedef DITypedArray< DITypeRef > llvm::DITypeArray

Functions

DISubprogram llvm::getDISubprogram (const MDNode *Scope)
 getDISubprogram - Find subprogram that is enclosing this scope.
DICompositeType llvm::getDICompositeType (DIType T)
 getDICompositeType - Find underlying composite type.
NamedMDNodellvm::getOrInsertFnSpecificMDNode (Module &M, DISubprogram SP)
NamedMDNodellvm::getFnSpecificMDNode (const Module &M, DISubprogram SP)
DIVariable llvm::createInlinedVariable (MDNode *DV, MDNode *InlinedScope, LLVMContext &VMContext)
DIVariable llvm::cleanseInlinedVariable (MDNode *DV, LLVMContext &VMContext)
 cleanseInlinedVariable - Remove inlined scope from the variable.
DIVariable llvm::getEntireVariable (DIVariable DV)
 getEntireVariable - Remove OpPiece exprs from the variable.
DITypeIdentifierMap llvm::generateDITypeIdentifierMap (const NamedMDNode *CU_Nodes)
 Construct DITypeIdentifierMap by going through retained types of each CU.
bool llvm::StripDebugInfo (Module &M)
unsigned llvm::getDebugMetadataVersionFromModule (const Module &M)
 Return Debug Info Metadata Version by checking module flags.
DenseMap< const Function
*, DISubprogram
llvm::makeSubprogramMap (const Module &M)