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 ConstantGetTagConstant (LLVMContext &VMContext, unsigned Tag)
static MDNodegetNonCompileUnitScope (MDNode *N)
static MDNodecreateFilePathPair (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().