LLVM API Documentation

Functions
DIBuilder.cpp File Reference
#include "llvm/IR/DIBuilder.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/IR/Constants.h"
#include "llvm/IR/DebugInfo.h"
#include "llvm/IR/IntrinsicInst.h"
#include "llvm/IR/Module.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/Dwarf.h"
Include dependency graph for DIBuilder.cpp:

Go to the source code of this file.

Functions

static Constant * GetTagConstant (LLVMContext &VMContext, unsigned Tag)
static MDNode * getNonCompileUnitScope (MDNode *N)
static MDNode * createFilePathPair (LLVMContext &VMContext, StringRef Filename, StringRef Directory)
static DIImportedEntity createImportedModule (LLVMContext &C, dwarf::Tag Tag, DIScope Context, Value *NS, unsigned Line, StringRef Name, SmallVectorImpl< TrackingVH< MDNode >> &AllImportedModules)
static DIGlobalVariable createStaticVariableHelper (LLVMContext &VMContext, DIDescriptor Context, StringRef Name, StringRef LinkageName, DIFile F, unsigned LineNumber, DITypeRef Ty, bool isLocalToUnit, Value *Val, MDNode *Decl, bool isDefinition, std::function< MDNode *(ArrayRef< Value * >)> CreateFunc)
static DISubprogram createFunctionHelper (LLVMContext &VMContext, DIDescriptor Context, StringRef Name, StringRef LinkageName, DIFile File, unsigned LineNo, DICompositeType Ty, bool isLocalToUnit, bool isDefinition, unsigned ScopeLine, unsigned Flags, bool isOptimized, Function *Fn, MDNode *TParams, MDNode *Decl, std::function< MDNode *(ArrayRef< Value * >)> CreateFunc)

Function Documentation

static MDNode* createFilePathPair ( LLVMContext &  VMContext,
StringRef  Filename,
StringRef  Directory 
) [static]
static DISubprogram createFunctionHelper ( LLVMContext &  VMContext,
DIDescriptor  Context,
StringRef  Name,
StringRef  LinkageName,
DIFile  File,
unsigned  LineNo,
DICompositeType  Ty,
bool  isLocalToUnit,
bool  isDefinition,
unsigned  ScopeLine,
unsigned  Flags,
bool  isOptimized,
Function *  Fn,
MDNode *  TParams,
MDNode *  Decl,
std::function< MDNode *(ArrayRef< Value * >)>  CreateFunc 
) [static]
static DIImportedEntity createImportedModule ( LLVMContext &  C,
dwarf::Tag  Tag,
DIScope  Context,
Value *  NS,
unsigned  Line,
StringRef  Name,
SmallVectorImpl< TrackingVH< MDNode >> &  AllImportedModules 
) [static]
static DIGlobalVariable createStaticVariableHelper ( LLVMContext &  VMContext,
DIDescriptor  Context,
StringRef  Name,
StringRef  LinkageName,
DIFile  F,
unsigned  LineNumber,
DITypeRef  Ty,
bool  isLocalToUnit,
Value *  Val,
MDNode *  Decl,
bool  isDefinition,
std::function< MDNode *(ArrayRef< Value * >)>  CreateFunc 
) [static]
static MDNode* getNonCompileUnitScope ( MDNode *  N) [static]
static Constant* GetTagConstant ( LLVMContext &  VMContext,
unsigned  Tag 
) [static]

Definition at line 26 of file DIBuilder.cpp.

References llvm::ConstantInt::get(), llvm::Type::getInt32Ty(), llvm::LLVMDebugVersion, and llvm::LLVMDebugVersionMask.

Referenced by llvm::DIBuilder::createArrayType(), llvm::DIBuilder::createBasicType(), llvm::DIBuilder::createClassType(), llvm::DIBuilder::createCompileUnit(), llvm::DIBuilder::createComplexVariable(), llvm::DIBuilder::createEnumerationType(), llvm::DIBuilder::createEnumerator(), llvm::DIBuilder::createFile(), llvm::DIBuilder::createForwardDecl(), llvm::DIBuilder::createFriend(), createFunctionHelper(), llvm::DIBuilder::createGlobalVariable(), createImportedModule(), llvm::DIBuilder::createInheritance(), llvm::DIBuilder::createLexicalBlock(), llvm::DIBuilder::createLexicalBlockFile(), llvm::DIBuilder::createLocalVariable(), llvm::DIBuilder::createMemberPointerType(), llvm::DIBuilder::createMemberType(), llvm::DIBuilder::createMethod(), llvm::DIBuilder::createNameSpace(), llvm::DIBuilder::createObjCIVar(), llvm::DIBuilder::createObjCProperty(), llvm::DIBuilder::createPointerType(), llvm::DIBuilder::createQualifiedType(), llvm::DIBuilder::createReferenceType(), llvm::DIBuilder::createReplaceableForwardDecl(), llvm::DIBuilder::createStaticMemberType(), createStaticVariableHelper(), llvm::DIBuilder::createStructType(), llvm::DIBuilder::createSubroutineType(), llvm::DIBuilder::createTemplateTypeParameter(), llvm::DIBuilder::createTypedef(), llvm::DIBuilder::createUnionType(), llvm::DIBuilder::createUnspecifiedType(), llvm::DIBuilder::createVectorType(), and llvm::DIBuilder::getOrCreateSubrange().