module lib.llvm.c.DebugInfo
Code Map
module lib.llvm.c.DebugInfo;
enum LLVMDIFlags
{
Zero,
Private,
Protected,
Public,
FwdDecl,
AppleBlock,
BlockByrefStruct,
Virtual,
Artificial,
Explicit,
Prototyped,
ObjcClassComplete,
ObjectPointer,
Vector,
StaticMember,
LValueReference,
RValueReference,
Reserved,
SingleInheritance,
MultipleInheritance,
VirtualInheritance,
IntroducedVirtual,
BitField,
NoReturn,
MainSubprogram,
TypePassByValue,
TypePassByReference,
FixedEnum,
Thunk,
Trivial,
BigEndian,
LittleEndian,
IndirectVirtualBase,
Accessibility,
PtrToMemberRep,
}
enum LLVMDWARFSourceLanguage
{
C89,
C,
Ada83,
C_plus_plus,
Cobol74,
Cobol85,
Fortran77,
Fortran90,
Pascal83,
Modula2,
Java,
C99,
Ada95,
Fortran95,
PLI,
ObjC,
ObjC_plus_plus,
UPC,
D,
Python,
OpenCL,
Go,
Modula3,
Haskell,
C_plus_plus_03,
C_plus_plus_11,
OCaml,
Rust,
C11,
Swift,
Julia,
Dylan,
C_plus_plus_14,
Fortran03,
Fortran08,
RenderScript,
BLISS,
Mips_Assembler,
GOOGLE_RenderScript,
BORLAND_Delphi,
}
enum LLVMDWARFEmissionKind
{
None,
Full,
LineTablesOnly,
}
alias LLVMDWARFTypeEncoding = u32;
fn LLVMDebugMetadataVersion() u32;
fn LLVMGetModuleDebugMetadataVersion(Module: LLVMModuleRef) u32;
fn LLVMStripModuleDebugInfo(Module: LLVMModuleRef) LLVMBool;
fn LLVMCreateDIBuilderDisallowUnresolved(M: LLVMModuleRef) LLVMDIBuilderRef;
fn LLVMCreateDIBuilder(M: LLVMModuleRef) LLVMDIBuilderRef;
fn LLVMDisposeDIBuilder(Builder: LLVMDIBuilderRef);
fn LLVMDIBuilderFinalize(Builder: LLVMDIBuilderRef);
fn LLVMDIBuilderCreateCompileUnit(Builder: LLVMDIBuilderRef, Lang: LLVMDWARFSourceLanguage, FileRef: LLVMMetadataRef, Producer: const(char)*, ProducerLen: size_t, isOptimized: LLVMBool, Flags: const(char)*, FlagsLen: size_t, RuntimeVer: u32, SplitName: const(char)*, SplitNameLen: size_t, Kind: LLVMDWARFEmissionKind, DWOId: u32, SplitDebugInlining: LLVMBool, DebugInfoForProfiling: LLVMBool) LLVMMetadataRef;
fn LLVMDIBuilderCreateFile(Builder: LLVMDIBuilderRef, Filename: const(char)*, FilenameLen: size_t, Directory: const(char)*, DirectoryLen: size_t) LLVMMetadataRef;
fn LLVMDIBuilderCreateModule(Builder: LLVMDIBuilderRef, ParentScope: LLVMMetadataRef, Name: const(char)*, NameLen: size_t, ConfigMacros: const(char)*, ConfigMacrosLen: size_t, IncludePath: const(char)*, IncludePathLen: size_t, ISysRoot: const(char)*, ISysRootLen: size_t) LLVMMetadataRef;
fn LLVMDIBuilderCreateNameSpace(Builder: LLVMDIBuilderRef, ParentScope: LLVMMetadataRef, Name: const(char)*, NameLen: size_t, ExportSymbols: LLVMBool) LLVMMetadataRef;
fn LLVMDIBuilderCreateFunction(Builder: LLVMDIBuilderRef, Scope: LLVMMetadataRef, Name: const(char)*, NameLen: size_t, LinkageName: const(char)*, LinkageNameLen: size_t, File: LLVMMetadataRef, LineNo: u32, Ty: LLVMMetadataRef, IsLocalToUnit: LLVMBool, IsDefinition: LLVMBool, ScopeLine: u32, Flags: LLVMDIFlags, IsOptimized: LLVMBool) LLVMMetadataRef;
fn LLVMDIBuilderCreateLexicalBlock(Builder: LLVMDIBuilderRef, Scope: LLVMMetadataRef, File: LLVMMetadataRef, Line: u32, Column: u32) LLVMMetadataRef;
fn LLVMDIBuilderCreateLexicalBlockFile(Builder: LLVMDIBuilderRef, Scope: LLVMMetadataRef, File: LLVMMetadataRef, Discriminator: u32) LLVMMetadataRef;
fn LLVMDIBuilderCreateImportedModuleFromNamespace(Builder: LLVMDIBuilderRef, Scope: LLVMMetadataRef, NS: LLVMMetadataRef, File: LLVMMetadataRef, Line: u32) LLVMMetadataRef;
fn LLVMDIBuilderCreateImportedModuleFromAlias(Builder: LLVMDIBuilderRef, Scope: LLVMMetadataRef, ImportedEntity: LLVMMetadataRef, File: LLVMMetadataRef, Line: u32) LLVMMetadataRef;
fn LLVMDIBuilderCreateImportedModuleFromModule(Builder: LLVMDIBuilderRef, Scope: LLVMMetadataRef, M: LLVMMetadataRef, File: LLVMMetadataRef, Line: u32) LLVMMetadataRef;
fn LLVMDIBuilderCreateImportedDeclaration(Builder: LLVMDIBuilderRef, Scope: LLVMMetadataRef, Decl: LLVMMetadataRef, File: LLVMMetadataRef, Line: u32, Name: const(char)*, NameLen: size_t) LLVMMetadataRef;
fn LLVMDIBuilderCreateDebugLocation(Ctx: LLVMContextRef, Line: u32, Column: u32, Scope: LLVMMetadataRef, InlinedAt: LLVMMetadataRef) LLVMMetadataRef;
fn LLVMDILocationGetLine(Location: LLVMMetadataRef) u32;
fn LLVMDILocationGetColumn(Location: LLVMMetadataRef) u32;
fn LLVMDILocationGetScope(Location: LLVMMetadataRef) LLVMMetadataRef;
fn LLVMDIBuilderGetOrCreateTypeArray(Builder: LLVMDIBuilderRef, Data: LLVMMetadataRef*, NumElements: size_t) LLVMMetadataRef;
fn LLVMDIBuilderCreateSubroutineType(Builder: LLVMDIBuilderRef, File: LLVMMetadataRef, ParameterTypes: LLVMMetadataRef*, NumParameterTypes: u32, Flags: LLVMDIFlags) LLVMMetadataRef;
fn LLVMDIBuilderCreateEnumerationType(Builder: LLVMDIBuilderRef, Scope: LLVMMetadataRef, Name: const(char)*, NameLen: size_t, File: LLVMMetadataRef, LineNumber: u32, SizeInBits: u64, AlignInBits: u32, Elements: LLVMMetadataRef*, NumElements: u32, ClassTy: LLVMMetadataRef) LLVMMetadataRef;
fn LLVMDIBuilderCreateUnionType(Builder: LLVMDIBuilderRef, Scope: LLVMMetadataRef, Name: const(char)*, NameLen: size_t, File: LLVMMetadataRef, LineNumber: u32, SizeInBits: u64, AlignInBits: u32, Flags: LLVMDIFlags, Elements: LLVMMetadataRef*, NumElements: u32, RunTimeLang: u32, UniqueId: const(char)*, UniqueIdLen: size_t) LLVMMetadataRef;
fn LLVMDIBuilderCreateArrayType(Builder: LLVMDIBuilderRef, Size: u64, AlignInBits: u32, Ty: LLVMMetadataRef, Subscripts: LLVMMetadataRef*, NumSubscripts: u32) LLVMMetadataRef;
fn LLVMDIBuilderCreateVectorType(Builder: LLVMDIBuilderRef, Size: u64, AlignInBits: u32, Ty: LLVMMetadataRef, Subscripts: LLVMMetadataRef*, NumSubscripts: u32) LLVMMetadataRef;
fn LLVMDIBuilderCreateUnspecifiedType(Builder: LLVMDIBuilderRef, Name: const(char)*, NameLen: size_t) LLVMMetadataRef;
fn LLVMDIBuilderCreateBasicType(Builder: LLVMDIBuilderRef, Name: const(char)*, NameLen: size_t, SizeInBits: u64, Encoding: LLVMDWARFTypeEncoding, Flags: LLVMDIFlags) LLVMMetadataRef;
fn LLVMDIBuilderCreatePointerType(Builder: LLVMDIBuilderRef, PointeeTy: LLVMMetadataRef, SizeInBits: u64, AlignInBits: u32, AddressSpace: u32, Name: const(char)*, NameLen: size_t) LLVMMetadataRef;
fn LLVMDIBuilderCreateStructType(Builder: LLVMDIBuilderRef, Scope: LLVMMetadataRef, Name: const(char)*, NameLen: size_t, File: LLVMMetadataRef, LineNumber: u32, SizeInBits: u64, AlignInBits: u32, Flags: LLVMDIFlags, DerivedFrom: LLVMMetadataRef, Elements: LLVMMetadataRef*, NumElements: u32, RunTimeLang: u32, VTableHolder: LLVMMetadataRef, UniqueId: const(char)*, UniqueIdLen: size_t) LLVMMetadataRef;
fn LLVMDIBuilderCreateMemberType(Builder: LLVMDIBuilderRef, Scope: LLVMMetadataRef, Name: const(char)*, NameLen: size_t, File: LLVMMetadataRef, LineNo: u32, SizeInBits: u64, AlignInBits: u32, OffsetInBits: u64, Flags: LLVMDIFlags, Ty: LLVMMetadataRef) LLVMMetadataRef;
fn LLVMDIBuilderCreateStaticMemberType(Builder: LLVMDIBuilderRef, Scope: LLVMMetadataRef, Name: const(char)*, NameLen: size_t, File: LLVMMetadataRef, LineNumber: u32, Type: LLVMMetadataRef, Flags: LLVMDIFlags, ConstantVal: LLVMValueRef, AlignInBits: u32) LLVMMetadataRef;
fn LLVMDIBuilderCreateMemberPointerType(Builder: LLVMDIBuilderRef, PointeeType: LLVMMetadataRef, ClassType: LLVMMetadataRef, SizeInBits: u64, AlignInBits: u32, Flags: LLVMDIFlags) LLVMMetadataRef;
fn LLVMDIBuilderCreateObjCIVar(Builder: LLVMDIBuilderRef, Name: const(char)*, NameLen: size_t, File: LLVMMetadataRef, LineNo: u32, SizeInBits: u64, AlignInBits: u32, OffsetInBits: u64, Flags: LLVMDIFlags, Ty: LLVMMetadataRef, PropertyNode: LLVMMetadataRef) LLVMMetadataRef;
fn LLVMDIBuilderCreateObjCProperty(Builder: LLVMDIBuilderRef, Name: const(char)*, NameLen: size_t, File: LLVMMetadataRef, LineNo: u32, GetterName: const(char)*, GetterNameLen: size_t, SetterName: const(char)*, SetterNameLen: size_t, PropertyAttributes: u32, Ty: LLVMMetadataRef) LLVMMetadataRef;
fn LLVMDIBuilderCreateObjectPointerType(Builder: LLVMDIBuilderRef, Type: LLVMMetadataRef) LLVMMetadataRef;
fn LLVMDIBuilderCreateQualifiedType(Builder: LLVMDIBuilderRef, Tag: u32, Type: LLVMMetadataRef) LLVMMetadataRef;
fn LLVMDIBuilderCreateReferenceType(Builder: LLVMDIBuilderRef, Tag: u32, Type: LLVMMetadataRef) LLVMMetadataRef;
fn LLVMDIBuilderCreateNullPtrType(Builder: LLVMDIBuilderRef) LLVMMetadataRef;
fn LLVMDIBuilderCreateTypedef(Builder: LLVMDIBuilderRef, Type: LLVMMetadataRef, Name: const(char)*, NameLen: size_t, File: LLVMMetadataRef, LineNo: u32, Scope: LLVMMetadataRef) LLVMMetadataRef;
fn LLVMDIBuilderCreateInheritance(Builder: LLVMDIBuilderRef, Ty: LLVMMetadataRef, BaseTy: LLVMMetadataRef, BaseOffset: u64, VBPtrOffset: u32, Flags: LLVMDIFlags) LLVMMetadataRef;
fn LLVMDIBuilderCreateForwardDecl(Builder: LLVMDIBuilderRef, Tag: u32, Name: const(char)*, NameLen: size_t, Scope: LLVMMetadataRef, File: LLVMMetadataRef, Line: u32, RuntimeLang: u32, SizeInBits: u64, AlignInBits: u32, UniqueIdentifier: const(char)*, UniqueIdentifierLen: size_t) LLVMMetadataRef;
fn LLVMDIBuilderCreateReplaceableCompositeType(Builder: LLVMDIBuilderRef, Tag: u32, Name: const(char)*, NameLen: size_t, Scope: LLVMMetadataRef, File: LLVMMetadataRef, Line: u32, RuntimeLang: u32, SizeInBits: u64, AlignInBits: u32, Flags: LLVMDIFlags, UniqueIdentifier: const(char)*, UniqueIdentifierLen: size_t) LLVMMetadataRef;
fn LLVMDIBuilderCreateBitFieldMemberType(Builder: LLVMDIBuilderRef, Scope: LLVMMetadataRef, Name: const(char)*, NameLen: size_t, File: LLVMMetadataRef, LineNumber: u32, SizeInBits: u64, OffsetInBits: u64, StorageOffsetInBits: u64, Flags: LLVMDIFlags, Type: LLVMMetadataRef) LLVMMetadataRef;
fn LLVMDIBuilderCreateClassType(Builder: LLVMDIBuilderRef, Scope: LLVMMetadataRef, Name: const(char)*, NameLen: size_t, File: LLVMMetadataRef, LineNumber: u32, SizeInBits: u64, AlignInBits: u32, OffsetInBits: u64, Flags: LLVMDIFlags, DerivedFrom: LLVMMetadataRef, Elements: LLVMMetadataRef*, NumElements: u32, VTableHolder: LLVMMetadataRef, TemplateParamsNode: LLVMMetadataRef, UniqueIdentifier: const(char)*, UniqueIdentifierLen: size_t) LLVMMetadataRef;
fn LLVMDIBuilderCreateArtificialType(Builder: LLVMDIBuilderRef, Type: LLVMMetadataRef) LLVMMetadataRef;
fn LLVMDITypeGetName(DType: LLVMMetadataRef, Length: size_t*) const(char)*;
fn LLVMDITypeGetSizeInBits(DType: LLVMMetadataRef) u64;
fn LLVMDITypeGetOffsetInBits(DType: LLVMMetadataRef) u64;
fn LLVMDITypeGetAlignInBits(DType: LLVMMetadataRef) u32;
fn LLVMDITypeGetLine(DType: LLVMMetadataRef) u32;
fn LLVMDITypeGetFlags(DType: LLVMMetadataRef) LLVMDIFlags;
fn LLVMDIBuilderGetOrCreateSubrange(Builder: LLVMDIBuilderRef, LowerBound: i64, Count: i64) LLVMMetadataRef;
fn LLVMDIBuilderGetOrCreateArray(Builder: LLVMDIBuilderRef, Data: LLVMMetadataRef*, NumElements: size_t) LLVMMetadataRef;
fn LLVMDIBuilderCreateExpression(Builder: LLVMDIBuilderRef, Addr: i64*, Length: size_t) LLVMMetadataRef;
fn LLVMDIBuilderCreateConstantValueExpression(Builder: LLVMDIBuilderRef, Value: i64) LLVMMetadataRef;
fn LLVMDIBuilderCreateGlobalVariableExpression(Builder: LLVMDIBuilderRef, Scope: LLVMMetadataRef, Name: const(char)*, NameLen: size_t, Linkage: const(char)*, LinkLen: size_t, File: LLVMMetadataRef, LineNo: u32, Ty: LLVMMetadataRef, LocalToUnit: LLVMBool, Expr: LLVMMetadataRef, Decl: LLVMMetadataRef, AlignInBits: u32) LLVMMetadataRef;
fn LLVMTemporaryMDNode(Ctx: LLVMContextRef, Data: LLVMMetadataRef*, NumElements: size_t) LLVMMetadataRef;
fn LLVMDisposeTemporaryMDNode(TempNode: LLVMMetadataRef);
fn LLVMMetadataReplaceAllUsesWith(TempTargetMetadata: LLVMMetadataRef, Replacement: LLVMMetadataRef);
fn LLVMDIBuilderCreateTempGlobalVariableFwdDecl(Builder: LLVMDIBuilderRef, Scope: LLVMMetadataRef, Name: const(char)*, NameLen: size_t, Linkage: const(char)*, LnkLen: size_t, File: LLVMMetadataRef, LineNo: u32, Ty: LLVMMetadataRef, LocalToUnit: LLVMBool, Decl: LLVMMetadataRef, AlignInBits: u32) LLVMMetadataRef;
fn LLVMDIBuilderInsertDeclareBefore(Builder: LLVMDIBuilderRef, Storage: LLVMValueRef, VarInfo: LLVMMetadataRef, Expr: LLVMMetadataRef, DebugLoc: LLVMMetadataRef, Instr: LLVMValueRef) LLVMValueRef;
fn LLVMDIBuilderInsertDeclareAtEnd(Builder: LLVMDIBuilderRef, Storage: LLVMValueRef, VarInfo: LLVMMetadataRef, Expr: LLVMMetadataRef, DebugLoc: LLVMMetadataRef, Block: LLVMBasicBlockRef) LLVMValueRef;
fn LLVMDIBuilderInsertDbgValueBefore(Builder: LLVMDIBuilderRef, Val: LLVMValueRef, VarInfo: LLVMMetadataRef, Expr: LLVMMetadataRef, DebugLoc: LLVMMetadataRef, Instr: LLVMValueRef) LLVMValueRef;
fn LLVMDIBuilderInsertDbgValueAtEnd(Builder: LLVMDIBuilderRef, Val: LLVMValueRef, VarInfo: LLVMMetadataRef, Expr: LLVMMetadataRef, DebugLoc: LLVMMetadataRef, Block: LLVMBasicBlockRef) LLVMValueRef;
fn LLVMDIBuilderCreateAutoVariable(Builder: LLVMDIBuilderRef, Scope: LLVMMetadataRef, Name: const(char)*, NameLen: size_t, File: LLVMMetadataRef, LineNo: u32, Ty: LLVMMetadataRef, AlwaysPreserve: LLVMBool, Flags: LLVMDIFlags, AlignInBits: u32) LLVMMetadataRef;
fn LLVMDIBuilderCreateParameterVariable(Builder: LLVMDIBuilderRef, Scope: LLVMMetadataRef, Name: const(char)*, NameLen: size_t, ArgNo: u32, File: LLVMMetadataRef, LineNo: u32, Ty: LLVMMetadataRef, AlwaysPreserve: LLVMBool, Flags: LLVMDIFlags) LLVMMetadataRef;
fn LLVMGetSubprogram(Func: LLVMValueRef) LLVMMetadataRef;
fn LLVMSetSubprogram(Func: LLVMValueRef, SP: LLVMMetadataRef);