module volt.llvm.debugInfo
Backend | LLVM Backend

Debug info generation code.

Code Map

//! Debug info generation code.
module volt.llvm.debugInfo;


fn diCreateDIBuilder(mod: LLVMModuleRef) LLVMDIBuilderRef { }
fn diDisposeDIBuilder(LLVMDIBuilderRef) { }
fn diSetPosition(state: State, loc: Location) { }
fn diUnsetPosition(state: State) { }
fn diCompileUnit(state: State) LLVMMetadataRef { }
fn diFinalize(state: State) { }
fn diUnspecifiedType(state: State, t: Type) LLVMMetadataRef { }
fn diBaseType(state: State, pt: ir.PrimitiveType) LLVMMetadataRef { }
fn diPointerType(state: State, pt: ir.PointerType, base: Type) LLVMMetadataRef { }
fn diStaticArrayType(state: State, sat: ir.StaticArrayType, type: Type) LLVMMetadataRef { }
fn diForwardDeclareAggregate(state: State, t: ir.Type) LLVMMetadataRef { }
fn diUnionReplace(state: State, diType: LLVMMetadataRef, p: Type, elms: ir.Variable[]) { }
fn diStructReplace(state: State, diType: LLVMMetadataRef, irType: ir.Type, elms: ir.Variable[]) { }
fn diStructReplace(state: State, diType: LLVMMetadataRef, p: Type, t: Type[2], names: string[2]) { }
fn diFunctionType(state: State, ret: Type, args: Type[], mangledName: string, diCallType: LLVMMetadataRef) LLVMMetadataRef { }
fn diFunction(state: State, irFn: ir.Function, func: LLVMValueRef, ft: FunctionType) LLVMMetadataRef { }
fn diGlobalVariable(state: State, var: ir.Variable, type: Type, val: LLVMValueRef) { }
fn diLocalVariable(state: State, var: ir.Variable, type: Type, val: LLVMValueRef) { }
fn diParameterVariable(state: State, var: ir.FunctionParam, type: Type, val: LLVMValueRef) { }
fn getSizeAndAlignment(t: ir.Type, target: TargetInfo, s: size_t, a: size_t)

Retrive size and alignment for type in bits (not in bytes as the rest of the compiler keep track of it).