module lib.llvm.c.Core

Code Map

module lib.llvm.c.Core;


enum LLVMOpcode
{
	Ret,
	Br,
	Switch,
	IndirectBr,
	Invoke,
	Unreachable,
	Add,
	FAdd,
	Sub,
	FSub,
	Mul,
	FMul,
	UDiv,
	SDiv,
	FDiv,
	URem,
	SRem,
	FRem,
	Shl,
	LShr,
	AShr,
	And,
	Or,
	Xor,
	Alloca,
	Load,
	Store,
	GetElementPtr,
	Trunc,
	ZExt,
	SExt,
	FPToUI,
	FPToSI,
	UIToFP,
	SIToFP,
	FPTrunc,
	FPExt,
	PtrToInt,
	IntToPtr,
	BitCast,
	AddrSpaceCast,
	ICmp,
	FCmp,
	PHI,
	Call,
	Select,
	UserOp1,
	UserOp2,
	VAArg,
	ExtractElement,
	InsertElement,
	ShuffleVector,
	ExtractValue,
	InsertValue,
	Fence,
	AtomicCmpXchg,
	AtomicRMW,
	Resume,
	LandingPad,
	CleanupRet,
	CatchRet,
	CatchPad,
	CleanupPad,
	CatchSwitch,
}

enum LLVMIntPredicate
{
	EQ,
	NE,
	UGT,
	UGE,
	ULT,
	ULE,
	SGT,
	SGE,
	SLT,
	SLE,
}

enum LLVMRealPredicate
{
	PredicateFalse,
	OEQ,
	OGT,
	OGE,
	OLT,
	OLE,
	ONE,
	ORD,
	UNO,
	UEQ,
	UGT,
	UGE,
	ULT,
	ULE,
	UNE,
	PredicateTrue,
}

enum LLVMThreadLocalMode
{
	NotThreadLocal,
	GeneralDynamic,
	LocalDynamic,
	InitialExec,
	LocalExec,
}

alias LLVMBool = i32;
alias LLVMContextRef = LLVMContext*;
alias LLVMModuleRef = LLVMModule*;
alias LLVMTypeRef = LLVMType*;
alias LLVMValueRef = LLVMValue*;
alias LLVMAttributeRef = LLVMAttributeImpl*;
alias LLVMBasicBlockRef = LLVMBasicBlock*;
alias LLVMBuilderRef = LLVMBuilder*;

struct LLVMContext
{
}

struct LLVMModule
{
}

struct LLVMType
{
}

struct LLVMValue
{
}

struct LLVMAttributeImpl
{
}

struct LLVMBasicBlock
{
}

struct LLVMBuilder
{
}

fn LLVMContextCreate() LLVMContextRef;
fn LLVMModuleCreateWithNameInContext(const(char)*, LLVMContextRef) LLVMModuleRef;
fn LLVMContextDispose(LLVMContextRef);
fn LLVMModuleCreateWithName(const(char)*) LLVMModuleRef;
fn LLVMDisposeModule(LLVMModuleRef);
fn LLVMSetDataLayout(LLVMModuleRef, const(char)*);
fn LLVMSetTarget(LLVMModuleRef, const(char)*);
fn LLVMDumpModule(LLVMModuleRef);
fn LLVMCreateMessage(const(char)*) const(char)*;
fn LLVMDisposeMessage(const(char)*);
fn LLVMAddFunction(LLVMModuleRef, const(char)*, LLVMTypeRef) LLVMValueRef;
fn LLVMGetParam(LLVMValueRef, u32) LLVMValueRef;
fn LLVMDumpType(LLVMTypeRef);
fn LLVMDumpValue(LLVMValueRef);
fn LLVMDumpModule(LLVMModuleRef);
fn LLVMPrintTypeToString(LLVMTypeRef) const(char)*;
fn LLVMPrintValueToString(LLVMValueRef) const(char)*;
fn LLVMPrintModuleToString(LLVMModuleRef) const(char)*;
fn LLVMVoidTypeInContext(LLVMContextRef) LLVMTypeRef;
fn LLVMInt1TypeInContext(LLVMContextRef) LLVMTypeRef;
fn LLVMInt8TypeInContext(LLVMContextRef) LLVMTypeRef;
fn LLVMInt16TypeInContext(LLVMContextRef) LLVMTypeRef;
fn LLVMInt32TypeInContext(LLVMContextRef) LLVMTypeRef;
fn LLVMInt64TypeInContext(LLVMContextRef) LLVMTypeRef;
fn LLVMInt128TypeInContext(LLVMContextRef) LLVMTypeRef;
fn LLVMIntTypeInContext(LLVMContextRef, u32) LLVMTypeRef;
fn LLVMGetIntTypeWidth(LLVMTypeRef) u32;
fn LLVMHalfTypeInContext(LLVMContextRef) LLVMTypeRef;
fn LLVMFloatTypeInContext(LLVMContextRef) LLVMTypeRef;
fn LLVMDoubleTypeInContext(LLVMContextRef) LLVMTypeRef;
fn LLVMX86FP80TypeInContext(LLVMContextRef) LLVMTypeRef;
fn LLVMFP128TypeInContext(LLVMContextRef) LLVMTypeRef;
fn LLVMPPCFP128TypeInContext(LLVMContextRef) LLVMTypeRef;
fn LLVMFunctionType(LLVMTypeRef, LLVMTypeRef*, u32, LLVMBool) LLVMTypeRef;
fn LLVMPointerType(LLVMTypeRef, u32) LLVMTypeRef;
fn LLVMGetPointerAddressSpace(LLVMTypeRef) u32;
fn LLVMVectorType(LLVMTypeRef, u32) LLVMTypeRef;
fn LLVMGetVectorSize(LLVMTypeRef) u32;
fn LLVMConstNull(LLVMTypeRef) LLVMValueRef;
fn LLVMConstInt(LLVMTypeRef, u64, LLVMBool) LLVMValueRef;
fn LLVMConstAllOnes(LLVMTypeRef) LLVMValueRef;
fn LLVMGetUndef(LLVMTypeRef) LLVMValueRef;
fn LLVMIsNull(LLVMValueRef) LLVMBool;
fn LLVMConstPointerNull(LLVMTypeRef) LLVMValueRef;
fn LLVMConstReal(LLVMTypeRef, f64) LLVMValueRef;
fn LLVMAddGlobal(LLVMModuleRef, LLVMTypeRef, const(char)*) LLVMValueRef;
fn LLVMAddGlobalInAddressSpace(LLVMModuleRef, LLVMTypeRef, const(char)*, u32) LLVMValueRef;
fn LLVMGetNamedGlobal(LLVMModuleRef, const(char)*) LLVMValueRef;
fn LLVMGetFirstGlobal(LLVMModuleRef) LLVMValueRef;
fn LLVMGetLastGlobal(LLVMModuleRef) LLVMValueRef;
fn LLVMGetNextGlobal(LLVMValueRef) LLVMValueRef;
fn LLVMGetPreviousGlobal(LLVMValueRef) LLVMValueRef;
fn LLVMDeleteGlobal(LLVMValueRef);
fn LLVMGetInitializer(LLVMValueRef) LLVMValueRef;
fn LLVMSetInitializer(LLVMValueRef, LLVMValueRef);
fn LLVMIsThreadLocal(LLVMValueRef) LLVMBool;
fn LLVMSetThreadLocal(LLVMValueRef, LLVMBool);
fn LLVMIsGlobalConstant(LLVMValueRef) LLVMBool;
fn LLVMSetGlobalConstant(LLVMValueRef, LLVMBool);
fn LLVMGetThreadLocalMode(LLVMValueRef) LLVMThreadLocalMode;
fn LLVMSetThreadLocalMode(LLVMValueRef, LLVMThreadLocalMode);
fn LLVMIsExternallyInitialized(LLVMValueRef) LLVMBool;
fn LLVMSetExternallyInitialized(LLVMValueRef, LLVMBool);
fn LLVMCreateBuilderInContext(LLVMContextRef) LLVMBuilderRef;
fn LLVMPositionBuilder(LLVMBuilderRef, LLVMBasicBlockRef, LLVMValueRef);
fn LLVMPositionBuilderBefore(LLVMBuilderRef, LLVMValueRef);
fn LLVMPositionBuilderAtEnd(LLVMBuilderRef, LLVMBasicBlockRef);
fn LLVMGetInsertBlock(LLVMBuilderRef) LLVMBasicBlockRef;
fn LLVMClearInsertionPosition(LLVMBuilderRef);
fn LLVMInsertIntoBuilder(LLVMBuilderRef, LLVMValueRef);
fn LLVMInsertIntoBuilderWithName(LLVMBuilderRef, LLVMValueRef, const(char)*);
fn LLVMDisposeBuilder(LLVMBuilderRef);
fn LLVMAppendBasicBlockInContext(LLVMContextRef, LLVMValueRef, const(char)*) LLVMBasicBlockRef;
fn LLVMAddIncoming(LLVMValueRef, LLVMValueRef*, LLVMBasicBlockRef*, u32);
fn LLVMMoveBasicBlockAfter(LLVMBasicBlockRef, LLVMBasicBlockRef);
fn LLVMMoveBasicBlockBefore(LLVMBasicBlockRef, LLVMBasicBlockRef);
fn LLVMCountBasicBlocks(LLVMValueRef) u32;
fn LLVMGetBasicBlocks(LLVMValueRef, LLVMBasicBlockRef*);
fn LLVMGetFirstBasicBlock(LLVMValueRef) LLVMBasicBlockRef;
fn LLVMGetLastBasicBlock(LLVMValueRef) LLVMBasicBlockRef;
fn LLVMBuildCall(LLVMBuilderRef, LLVMValueRef, LLVMValueRef*, u32, const(char)*) LLVMValueRef;
fn LLVMBuildRetVoid(LLVMBuilderRef) LLVMValueRef;
fn LLVMBuildRet(LLVMBuilderRef, LLVMValueRef) LLVMValueRef;
fn LLVMBuildAlloca(LLVMBuilderRef, LLVMTypeRef, const(char)*) LLVMValueRef;
fn LLVMBuildLoad(LLVMBuilderRef, LLVMValueRef, const(char)*) LLVMValueRef;
fn LLVMBuildStore(LLVMBuilderRef, LLVMValueRef, LLVMValueRef) LLVMValueRef;
fn LLVMBuildBinOp(LLVMBuilderRef, LLVMOpcode, LLVMValueRef, LLVMValueRef, const(char)*) LLVMValueRef;
fn LLVMBuildICmp(LLVMBuilderRef, LLVMIntPredicate, LLVMValueRef, LLVMValueRef, const(char)*) LLVMValueRef;
fn LLVMBuildFCmp(LLVMBuilderRef, LLVMRealPredicate, LLVMValueRef, LLVMValueRef, const(char)*) LLVMValueRef;
fn LLVMBuildUnreachable(LLVMBuilderRef) LLVMValueRef;
fn LLVMBuildBr(LLVMBuilderRef, LLVMBasicBlockRef) LLVMValueRef;
fn LLVMBuildCondBr(LLVMBuilderRef, LLVMValueRef, LLVMBasicBlockRef, LLVMBasicBlockRef) LLVMValueRef;
fn LLVMBuildPhi(LLVMBuilderRef, LLVMTypeRef, const(char)*) LLVMValueRef;
fn LLVMBuildSelect(LLVMBuilderRef, LLVMValueRef, LLVMValueRef, LLVMValueRef, const(char)*) LLVMValueRef;
fn LLVMBuildTrunc(LLVMBuilderRef, LLVMValueRef, LLVMTypeRef, const(char)*) LLVMValueRef;
fn LLVMBuildZExt(LLVMBuilderRef, LLVMValueRef, LLVMTypeRef, const(char)*) LLVMValueRef;
fn LLVMBuildSExt(LLVMBuilderRef, LLVMValueRef, LLVMTypeRef, const(char)*) LLVMValueRef;
fn LLVMBuildFPToUI(LLVMBuilderRef, LLVMValueRef, LLVMTypeRef, const(char)*) LLVMValueRef;
fn LLVMBuildFPToSI(LLVMBuilderRef, LLVMValueRef, LLVMTypeRef, const(char)*) LLVMValueRef;
fn LLVMBuildUIToFP(LLVMBuilderRef, LLVMValueRef, LLVMTypeRef, const(char)*) LLVMValueRef;
fn LLVMBuildSIToFP(LLVMBuilderRef, LLVMValueRef, LLVMTypeRef, const(char)*) LLVMValueRef;
fn LLVMBuildFPTrunc(LLVMBuilderRef, LLVMValueRef, LLVMTypeRef, const(char)*) LLVMValueRef;
fn LLVMBuildFPExt(LLVMBuilderRef, LLVMValueRef, LLVMTypeRef, const(char)*) LLVMValueRef;
fn LLVMBuildPtrToInt(LLVMBuilderRef, LLVMValueRef, LLVMTypeRef, const(char)*) LLVMValueRef;
fn LLVMBuildIntToPtr(LLVMBuilderRef, LLVMValueRef, LLVMTypeRef, const(char)*) LLVMValueRef;
fn LLVMBuildBitCast(LLVMBuilderRef, LLVMValueRef, LLVMTypeRef, const(char)*) LLVMValueRef;
fn LLVMBuildAddrSpaceCast(LLVMBuilderRef, LLVMValueRef, LLVMTypeRef, const(char)*) LLVMValueRef;
fn LLVMBuildZExtOrBitCast(LLVMBuilderRef, LLVMValueRef, LLVMTypeRef, const(char)*) LLVMValueRef;
fn LLVMBuildSExtOrBitCast(LLVMBuilderRef, LLVMValueRef, LLVMTypeRef, const(char)*) LLVMValueRef;
fn LLVMBuildTruncOrBitCast(LLVMBuilderRef, LLVMValueRef, LLVMTypeRef, const(char)*) LLVMValueRef;
fn LLVMBuildCast(LLVMBuilderRef, LLVMOpcode, LLVMValueRef, LLVMTypeRef, const(char)*) LLVMValueRef;
fn LLVMBuildPointerCast(LLVMBuilderRef, LLVMValueRef, LLVMTypeRef, const(char)*) LLVMValueRef;
fn LLVMBuildIntCast(LLVMBuilderRef, LLVMValueRef, LLVMTypeRef, const(char)*) LLVMValueRef;
fn LLVMBuildFPCast(LLVMBuilderRef, LLVMValueRef, LLVMTypeRef, const(char)*) LLVMValueRef;