Lines Matching defs:DIBuilder
1 //===--- DIBuilder.cpp - Debug Information Builder ------------------------===//
9 // This file implements the DIBuilder.
13 #include "llvm/IR/DIBuilder.h"
28 DIBuilder::DIBuilder(Module &m, bool AllowUnresolvedNodes, DICompileUnit *CU)
46 void DIBuilder::trackIfUnresolved(MDNode *N) {
56 void DIBuilder::finalizeSubprogram(DISubprogram *SP) {
64 void DIBuilder::finalize() {
135 DICompileUnit *DIBuilder::createCompileUnit(
147 assert(!CUNode && "Can only make one compile unit per DIBuilder instance");
178 DIImportedEntity *DIBuilder::createImportedModule(DIScope *Context,
187 DIImportedEntity *DIBuilder::createImportedModule(DIScope *Context,
196 DIImportedEntity *DIBuilder::createImportedModule(DIScope *Context, DIModule *M,
205 DIBuilder::createImportedDeclaration(DIScope *Context, DINode *Decl,
215 DIFile *DIBuilder::createFile(StringRef Filename, StringRef Directory,
221 DIMacro *DIBuilder::createMacro(DIMacroFile *Parent, unsigned LineNumber,
233 DIMacroFile *DIBuilder::createTempMacroFile(DIMacroFile *Parent,
241 // the map. Otherwise, it will not be resolved in DIBuilder::finalize().
246 DIEnumerator *DIBuilder::createEnumerator(StringRef Name, uint64_t Val,
253 DIEnumerator *DIBuilder::createEnumerator(StringRef Name, const APSInt &Value) {
258 DIBasicType *DIBuilder::createUnspecifiedType(StringRef Name) {
263 DIBasicType *DIBuilder::createNullPtrType() {
267 DIBasicType *DIBuilder::createBasicType(StringRef Name, uint64_t SizeInBits,
275 DIStringType *DIBuilder::createStringType(StringRef Name, uint64_t SizeInBits) {
281 DIStringType *DIBuilder::createStringType(StringRef Name,
289 DIStringType *DIBuilder::createStringType(StringRef Name,
297 DIDerivedType *DIBuilder::createQualifiedType(unsigned Tag, DIType *FromTy) {
302 DIDerivedType *DIBuilder::createPtrAuthQualifiedType(
316 DIBuilder::createPointerType(DIType *PointeeTy, uint64_t SizeInBits,
327 DIDerivedType *DIBuilder::createMemberPointerType(DIType *PointeeTy,
339 DIBuilder::createReferenceType(unsigned Tag, DIType *RTy, uint64_t SizeInBits,
348 DIDerivedType *DIBuilder::createTypedef(DIType *Ty, StringRef Name,
360 DIBuilder::createTemplateAlias(DIType *Ty, StringRef Name, DIFile *File,
370 DIDerivedType *DIBuilder::createFriend(DIType *Ty, DIType *FriendTy) {
378 DIDerivedType *DIBuilder::createInheritance(DIType *Ty, DIType *BaseTy,
390 DIDerivedType *DIBuilder::createMemberType(
406 DIDerivedType *DIBuilder::createVariantMemberType(
416 DIDerivedType *DIBuilder::createBitFieldMemberType(
431 DIBuilder::createStaticMemberType(DIScope *Scope, StringRef Name, DIFile *File,
443 DIBuilder::createObjCIVar(StringRef Name, DIFile *File, unsigned LineNumber,
454 DIBuilder::createObjCProperty(StringRef Name, DIFile *File, unsigned LineNumber,
462 DIBuilder::createTemplateTypeParameter(DIScope *Context, StringRef Name,
477 DIBuilder::createTemplateValueParameter(DIScope *Context, StringRef Name,
486 DIBuilder::createTemplateTemplateParameter(DIScope *Context, StringRef Name,
495 DIBuilder::createTemplateParameterPack(DIScope *Context, StringRef Name,
502 DICompositeType *DIBuilder::createClassType(
520 DICompositeType *DIBuilder::createStructType(
533 DICompositeType *DIBuilder::createUnionType(
546 DIBuilder::createVariantPart(DIScope *Scope, StringRef Name, DIFile *File,
559 DISubroutineType *DIBuilder::createSubroutineType(DITypeRefArray ParameterTypes,
566 DIBuilder::createEnumerationType(DIScope *Scope, StringRef Name, DIFile *File,
581 DIDerivedType *DIBuilder::createSetType(DIScope *Scope, StringRef Name,
594 DIBuilder::createArrayType(uint64_t Size, uint32_t AlignInBits, DIType *Ty,
616 DICompositeType *DIBuilder::createVectorType(uint64_t Size,
626 DISubprogram *DIBuilder::createArtificialSubprogram(DISubprogram *SP) {
637 DIType *DIBuilder::createArtificialType(DIType *Ty) {
644 DIType *DIBuilder::createObjectPointerType(DIType *Ty) {
652 void DIBuilder::retainType(DIScope *T) {
660 DIBasicType *DIBuilder::createUnspecifiedParameter() { return nullptr; }
663 DIBuilder::createForwardDecl(unsigned Tag, StringRef Name, DIScope *Scope,
677 DICompositeType *DIBuilder::createReplaceableCompositeType(
693 DINodeArray DIBuilder::getOrCreateArray(ArrayRef<Metadata *> Elements) {
698 DIBuilder::getOrCreateMacroArray(ArrayRef<Metadata *> Elements) {
702 DITypeRefArray DIBuilder::getOrCreateTypeArray(ArrayRef<Metadata *> Elements) {
713 DISubrange *DIBuilder::getOrCreateSubrange(int64_t Lo, int64_t Count) {
721 DISubrange *DIBuilder::getOrCreateSubrange(int64_t Lo, Metadata *CountNode) {
727 DISubrange *DIBuilder::getOrCreateSubrange(Metadata *CountNode, Metadata *LB,
732 DIGenericSubrange *DIBuilder::getOrCreateGenericSubrange(
753 DIGlobalVariableExpression *DIBuilder::createGlobalVariableExpression(
772 DIGlobalVariable *DIBuilder::createTempGlobalVariableFwdDecl(
806 DILocalVariable *DIBuilder::createAutoVariable(DIScope *Scope, StringRef Name,
818 DILocalVariable *DIBuilder::createParameterVariable(
830 DILabel *DIBuilder::createLabel(DIScope *Context, StringRef Name, DIFile *File,
844 DIExpression *DIBuilder::createExpression(ArrayRef<uint64_t> Addr) {
855 DISubprogram *DIBuilder::createFunction(
875 DISubprogram *DIBuilder::createTempFunctionFwdDecl(
890 DISubprogram *DIBuilder::createMethod(
913 DICommonBlock *DIBuilder::createCommonBlock(DIScope *Scope,
920 DINamespace *DIBuilder::createNameSpace(DIScope *Scope, StringRef Name,
932 DIModule *DIBuilder::createModule(DIScope *Scope, StringRef Name,
941 DILexicalBlockFile *DIBuilder::createLexicalBlockFile(DIScope *Scope,
947 DILexicalBlock *DIBuilder::createLexicalBlock(DIScope *Scope, DIFile *File,
955 DbgInstPtr DIBuilder::insertDeclare(Value *Storage, DILocalVariable *VarInfo,
962 DbgInstPtr DIBuilder::insertDeclare(Value *Storage, DILocalVariable *VarInfo,
971 DbgInstPtr DIBuilder::insertDbgAssign(Instruction *LinkedInstr, Value *Val,
1013 DbgInstPtr DIBuilder::insertLabel(DILabel *LabelInfo, const DILocation *DL,
1020 DbgInstPtr DIBuilder::insertLabel(DILabel *LabelInfo, const DILocation *DL,
1025 DbgInstPtr DIBuilder::insertDbgValueIntrinsic(Value *V,
1038 DbgInstPtr DIBuilder::insertDbgValueIntrinsic(Value *V,
1066 DbgInstPtr DIBuilder::insertDbgValueIntrinsic(
1082 DbgInstPtr DIBuilder::insertDeclare(Value *Storage, DILocalVariable *VarInfo,
1113 void DIBuilder::insertDbgVariableRecord(DbgVariableRecord *DVR,
1132 Instruction *DIBuilder::insertDbgIntrinsic(llvm::Function *IntrinsicFn,
1158 DbgInstPtr DIBuilder::insertLabel(DILabel *LabelInfo, const DILocation *DL,
1187 void DIBuilder::replaceVTableHolder(DICompositeType *&T, DIType *VTableHolder) {
1206 void DIBuilder::replaceArrays(DICompositeType *&T, DINodeArray Elements,