#include <DebugInfo.h>
Public Types | |
| enum | ComplexAddrKind { OpPlus = 1, OpDeref } |
Public Member Functions | |
| DIFactory (Module &m) | |
| DIArray | GetOrCreateArray (DIDescriptor *Tys, unsigned NumTys) |
| DISubrange | GetOrCreateSubrange (int64_t Lo, int64_t Hi) |
| DICompileUnit | CreateCompileUnit (unsigned LangID, StringRef Filename, StringRef Directory, StringRef Producer, bool isMain=false, bool isOptimized=false, StringRef Flags="", unsigned RunTimeVer=0) |
| DIFile | CreateFile (StringRef Filename, StringRef Directory, DICompileUnit CU) |
| CreateFile - Create a new descriptor for the specified file. | |
| DIEnumerator | CreateEnumerator (StringRef Name, uint64_t Val) |
| CreateEnumerator - Create a single enumerator value. | |
| DIBasicType | CreateBasicType (DIDescriptor Context, StringRef Name, DIFile F, unsigned LineNumber, uint64_t SizeInBits, uint64_t AlignInBits, uint64_t OffsetInBits, unsigned Flags, unsigned Encoding) |
| CreateBasicType - Create a basic type like int, float, etc. | |
| DIBasicType | CreateBasicTypeEx (DIDescriptor Context, StringRef Name, DIFile F, unsigned LineNumber, Constant *SizeInBits, Constant *AlignInBits, Constant *OffsetInBits, unsigned Flags, unsigned Encoding) |
| CreateBasicType - Create a basic type like int, float, etc. | |
| DIDerivedType | CreateDerivedType (unsigned Tag, DIDescriptor Context, StringRef Name, DIFile F, unsigned LineNumber, uint64_t SizeInBits, uint64_t AlignInBits, uint64_t OffsetInBits, unsigned Flags, DIType DerivedFrom) |
| DIDerivedType | CreateDerivedTypeEx (unsigned Tag, DIDescriptor Context, StringRef Name, DIFile F, unsigned LineNumber, Constant *SizeInBits, Constant *AlignInBits, Constant *OffsetInBits, unsigned Flags, DIType DerivedFrom) |
| DICompositeType | CreateCompositeType (unsigned Tag, DIDescriptor Context, StringRef Name, DIFile F, unsigned LineNumber, uint64_t SizeInBits, uint64_t AlignInBits, uint64_t OffsetInBits, unsigned Flags, DIType DerivedFrom, DIArray Elements, unsigned RunTimeLang=0, MDNode *ContainingType=0) |
| CreateCompositeType - Create a composite type like array, struct, etc. | |
| DIType | CreateArtificialType (DIType Ty) |
| CreateArtificialType - Create a new DIType with "artificial" flag set. | |
| DICompositeType | CreateCompositeTypeEx (unsigned Tag, DIDescriptor Context, StringRef Name, DIFile F, unsigned LineNumber, Constant *SizeInBits, Constant *AlignInBits, Constant *OffsetInBits, unsigned Flags, DIType DerivedFrom, DIArray Elements, unsigned RunTimeLang=0) |
| CreateCompositeType - Create a composite type like array, struct, etc. | |
| DISubprogram | CreateSubprogram (DIDescriptor Context, StringRef Name, StringRef DisplayName, StringRef LinkageName, DIFile F, unsigned LineNo, DIType Ty, bool isLocalToUnit, bool isDefinition, unsigned VK=0, unsigned VIndex=0, DIType=DIType(), bool isArtificial=0) |
| DISubprogram | CreateSubprogramDefinition (DISubprogram &SPDeclaration) |
| DIGlobalVariable | CreateGlobalVariable (DIDescriptor Context, StringRef Name, StringRef DisplayName, StringRef LinkageName, DIFile F, unsigned LineNo, DIType Ty, bool isLocalToUnit, bool isDefinition, llvm::GlobalVariable *GV) |
| CreateGlobalVariable - Create a new descriptor for the specified global. | |
| DIVariable | CreateVariable (unsigned Tag, DIDescriptor Context, StringRef Name, DIFile F, unsigned LineNo, DIType Ty) |
| CreateVariable - Create a new descriptor for the specified variable. | |
| DIVariable | CreateComplexVariable (unsigned Tag, DIDescriptor Context, const std::string &Name, DIFile F, unsigned LineNo, DIType Ty, SmallVector< Value *, 9 > &addr) |
| DILexicalBlock | CreateLexicalBlock (DIDescriptor Context, unsigned Line=0, unsigned Col=0) |
| DINameSpace | CreateNameSpace (DIDescriptor Context, StringRef Name, DIFile F, unsigned LineNo) |
| DILocation | CreateLocation (unsigned LineNo, unsigned ColumnNo, DIScope S, DILocation OrigLoc) |
| CreateLocation - Creates a debug info location. | |
| DILocation | CreateLocation (unsigned LineNo, unsigned ColumnNo, DIScope S, MDNode *OrigLoc=0) |
| CreateLocation - Creates a debug info location. | |
| Instruction * | InsertDeclare (llvm::Value *Storage, DIVariable D, BasicBlock *InsertAtEnd) |
| InsertDeclare - Insert a new llvm.dbg.declare intrinsic call. | |
| Instruction * | InsertDeclare (llvm::Value *Storage, DIVariable D, Instruction *InsertBefore) |
| InsertDeclare - Insert a new llvm.dbg.declare intrinsic call. | |
| Instruction * | InsertDbgValueIntrinsic (llvm::Value *V, uint64_t Offset, DIVariable D, BasicBlock *InsertAtEnd) |
| InsertDbgValueIntrinsic - Insert a new llvm.dbg.value intrinsic call. | |
| Instruction * | InsertDbgValueIntrinsic (llvm::Value *V, uint64_t Offset, DIVariable D, Instruction *InsertBefore) |
| InsertDbgValueIntrinsic - Insert a new llvm.dbg.value intrinsic call. | |
| DICompileUnit llvm::DIFactory::CreateCompileUnit | ( | unsigned | LangID, | |
| StringRef | Filename, | |||
| StringRef | Directory, | |||
| StringRef | Producer, | |||
| bool | isMain = false, |
|||
| bool | isOptimized = false, |
|||
| StringRef | Flags = "", |
|||
| unsigned | RunTimeVer = 0 | |||
| ) |
CreateCompileUnit - Create a new descriptor for the specified compile unit.
| DIVariable llvm::DIFactory::CreateComplexVariable | ( | unsigned | Tag, | |
| DIDescriptor | Context, | |||
| const std::string & | Name, | |||
| DIFile | F, | |||
| unsigned | LineNo, | |||
| DIType | Ty, | |||
| SmallVector< Value *, 9 > & | addr | |||
| ) |
CreateComplexVariable - Create a new descriptor for the specified variable which has a complex address expression for its address.
| DIDerivedType llvm::DIFactory::CreateDerivedType | ( | unsigned | Tag, | |
| DIDescriptor | Context, | |||
| StringRef | Name, | |||
| DIFile | F, | |||
| unsigned | LineNumber, | |||
| uint64_t | SizeInBits, | |||
| uint64_t | AlignInBits, | |||
| uint64_t | OffsetInBits, | |||
| unsigned | Flags, | |||
| DIType | DerivedFrom | |||
| ) |
CreateDerivedType - Create a derived type like const qualified type, pointer, typedef, etc.
| DIDerivedType llvm::DIFactory::CreateDerivedTypeEx | ( | unsigned | Tag, | |
| DIDescriptor | Context, | |||
| StringRef | Name, | |||
| DIFile | F, | |||
| unsigned | LineNumber, | |||
| Constant * | SizeInBits, | |||
| Constant * | AlignInBits, | |||
| Constant * | OffsetInBits, | |||
| unsigned | Flags, | |||
| DIType | DerivedFrom | |||
| ) |
CreateDerivedType - Create a derived type like const qualified type, pointer, typedef, etc.
| DILexicalBlock llvm::DIFactory::CreateLexicalBlock | ( | DIDescriptor | Context, | |
| unsigned | Line = 0, |
|||
| unsigned | Col = 0 | |||
| ) |
CreateLexicalBlock - This creates a descriptor for a lexical block with the specified parent context.
| DINameSpace llvm::DIFactory::CreateNameSpace | ( | DIDescriptor | Context, | |
| StringRef | Name, | |||
| DIFile | F, | |||
| unsigned | LineNo | |||
| ) |
CreateNameSpace - This creates new descriptor for a namespace with the specified parent context.
| DISubprogram llvm::DIFactory::CreateSubprogram | ( | DIDescriptor | Context, | |
| StringRef | Name, | |||
| StringRef | DisplayName, | |||
| StringRef | LinkageName, | |||
| DIFile | F, | |||
| unsigned | LineNo, | |||
| DIType | Ty, | |||
| bool | isLocalToUnit, | |||
| bool | isDefinition, | |||
| unsigned | VK = 0, |
|||
| unsigned | VIndex = 0, |
|||
| DIType | = DIType(), |
|||
| bool | isArtificial = 0 | |||
| ) |
CreateSubprogram - Create a new descriptor for the specified subprogram. See comments in DISubprogram for descriptions of these fields.
| DISubprogram llvm::DIFactory::CreateSubprogramDefinition | ( | DISubprogram & | SPDeclaration | ) |
CreateSubprogramDefinition - Create new subprogram descriptor for the given declaration.
| DIArray llvm::DIFactory::GetOrCreateArray | ( | DIDescriptor * | Tys, | |
| unsigned | NumTys | |||
| ) |
GetOrCreateArray - Create an descriptor for an array of descriptors. This implicitly uniques the arrays created.
| DISubrange llvm::DIFactory::GetOrCreateSubrange | ( | int64_t | Lo, | |
| int64_t | Hi | |||
| ) |
GetOrCreateSubrange - Create a descriptor for a value range. This implicitly uniques the values returned.
1.5.8