mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-07-29 10:25:12 +00:00
Expose most of the rest of IRBuilder's functions to llvm-c.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79159 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -643,6 +643,8 @@ void LLVMDisposeBuilder(LLVMBuilderRef Builder);
|
|||||||
/* Terminators */
|
/* Terminators */
|
||||||
LLVMValueRef LLVMBuildRetVoid(LLVMBuilderRef);
|
LLVMValueRef LLVMBuildRetVoid(LLVMBuilderRef);
|
||||||
LLVMValueRef LLVMBuildRet(LLVMBuilderRef, LLVMValueRef V);
|
LLVMValueRef LLVMBuildRet(LLVMBuilderRef, LLVMValueRef V);
|
||||||
|
LLVMValueRef LLVMBuildAggregateRet(LLVMBuilderRef, LLVMValueRef RetVals,
|
||||||
|
unsigned N);
|
||||||
LLVMValueRef LLVMBuildBr(LLVMBuilderRef, LLVMBasicBlockRef Dest);
|
LLVMValueRef LLVMBuildBr(LLVMBuilderRef, LLVMBasicBlockRef Dest);
|
||||||
LLVMValueRef LLVMBuildCondBr(LLVMBuilderRef, LLVMValueRef If,
|
LLVMValueRef LLVMBuildCondBr(LLVMBuilderRef, LLVMValueRef If,
|
||||||
LLVMBasicBlockRef Then, LLVMBasicBlockRef Else);
|
LLVMBasicBlockRef Then, LLVMBasicBlockRef Else);
|
||||||
@@ -662,14 +664,24 @@ void LLVMAddCase(LLVMValueRef Switch, LLVMValueRef OnVal,
|
|||||||
/* Arithmetic */
|
/* Arithmetic */
|
||||||
LLVMValueRef LLVMBuildAdd(LLVMBuilderRef, LLVMValueRef LHS, LLVMValueRef RHS,
|
LLVMValueRef LLVMBuildAdd(LLVMBuilderRef, LLVMValueRef LHS, LLVMValueRef RHS,
|
||||||
const char *Name);
|
const char *Name);
|
||||||
|
LLVMValueRef LLVMBuildNSWAdd(LLVMBuilderRef, LLVMValueRef LHS, LLVMValueRef RHS,
|
||||||
|
const char *Name);
|
||||||
|
LLVMValueRef LLVMBuildFAdd(LLVMBuilderRef, LLVMValueRef LHS, LLVMValueRef RHS,
|
||||||
|
const char *Name);
|
||||||
LLVMValueRef LLVMBuildSub(LLVMBuilderRef, LLVMValueRef LHS, LLVMValueRef RHS,
|
LLVMValueRef LLVMBuildSub(LLVMBuilderRef, LLVMValueRef LHS, LLVMValueRef RHS,
|
||||||
const char *Name);
|
const char *Name);
|
||||||
|
LLVMValueRef LLVMBuildFSub(LLVMBuilderRef, LLVMValueRef LHS, LLVMValueRef RHS,
|
||||||
|
const char *Name);
|
||||||
LLVMValueRef LLVMBuildMul(LLVMBuilderRef, LLVMValueRef LHS, LLVMValueRef RHS,
|
LLVMValueRef LLVMBuildMul(LLVMBuilderRef, LLVMValueRef LHS, LLVMValueRef RHS,
|
||||||
const char *Name);
|
const char *Name);
|
||||||
|
LLVMValueRef LLVMBuildFMul(LLVMBuilderRef, LLVMValueRef LHS, LLVMValueRef RHS,
|
||||||
|
const char *Name);
|
||||||
LLVMValueRef LLVMBuildUDiv(LLVMBuilderRef, LLVMValueRef LHS, LLVMValueRef RHS,
|
LLVMValueRef LLVMBuildUDiv(LLVMBuilderRef, LLVMValueRef LHS, LLVMValueRef RHS,
|
||||||
const char *Name);
|
const char *Name);
|
||||||
LLVMValueRef LLVMBuildSDiv(LLVMBuilderRef, LLVMValueRef LHS, LLVMValueRef RHS,
|
LLVMValueRef LLVMBuildSDiv(LLVMBuilderRef, LLVMValueRef LHS, LLVMValueRef RHS,
|
||||||
const char *Name);
|
const char *Name);
|
||||||
|
LLVMValueRef LLVMBuildExactSDiv(LLVMBuilderRef, LLVMValueRef LHS, LLVMValueRef RHS,
|
||||||
|
const char *Name);
|
||||||
LLVMValueRef LLVMBuildFDiv(LLVMBuilderRef, LLVMValueRef LHS, LLVMValueRef RHS,
|
LLVMValueRef LLVMBuildFDiv(LLVMBuilderRef, LLVMValueRef LHS, LLVMValueRef RHS,
|
||||||
const char *Name);
|
const char *Name);
|
||||||
LLVMValueRef LLVMBuildURem(LLVMBuilderRef, LLVMValueRef LHS, LLVMValueRef RHS,
|
LLVMValueRef LLVMBuildURem(LLVMBuilderRef, LLVMValueRef LHS, LLVMValueRef RHS,
|
||||||
@@ -707,6 +719,15 @@ LLVMValueRef LLVMBuildStore(LLVMBuilderRef, LLVMValueRef Val, LLVMValueRef Ptr);
|
|||||||
LLVMValueRef LLVMBuildGEP(LLVMBuilderRef B, LLVMValueRef Pointer,
|
LLVMValueRef LLVMBuildGEP(LLVMBuilderRef B, LLVMValueRef Pointer,
|
||||||
LLVMValueRef *Indices, unsigned NumIndices,
|
LLVMValueRef *Indices, unsigned NumIndices,
|
||||||
const char *Name);
|
const char *Name);
|
||||||
|
LLVMValueRef LLVMBuildInBoundsGEP(LLVMBuilderRef B, LLVMValueRef Pointer,
|
||||||
|
LLVMValueRef *Indices, unsigned NumIndices,
|
||||||
|
const char *Name);
|
||||||
|
LLVMValueRef LLVMBuildStructGEP(LLVMBuilderRef B, LLVMValueRef Pointer,
|
||||||
|
unsigned Idx, const char *Name);
|
||||||
|
LLVMValueRef LLVMBuildGlobalString(LLVMBuilderRef B, const char *Str,
|
||||||
|
const char *Name);
|
||||||
|
LLVMValueRef LLVMBuildGlobalStringPtr(LLVMBuilderRef B, const char *Str,
|
||||||
|
const char *Name);
|
||||||
|
|
||||||
/* Casts */
|
/* Casts */
|
||||||
LLVMValueRef LLVMBuildTrunc(LLVMBuilderRef, LLVMValueRef Val,
|
LLVMValueRef LLVMBuildTrunc(LLVMBuilderRef, LLVMValueRef Val,
|
||||||
@@ -733,6 +754,18 @@ LLVMValueRef LLVMBuildIntToPtr(LLVMBuilderRef, LLVMValueRef Val,
|
|||||||
LLVMTypeRef DestTy, const char *Name);
|
LLVMTypeRef DestTy, const char *Name);
|
||||||
LLVMValueRef LLVMBuildBitCast(LLVMBuilderRef, LLVMValueRef Val,
|
LLVMValueRef LLVMBuildBitCast(LLVMBuilderRef, LLVMValueRef Val,
|
||||||
LLVMTypeRef DestTy, const char *Name);
|
LLVMTypeRef DestTy, const char *Name);
|
||||||
|
LLVMValueRef LLVMBuildZExtOrBitCast(LLVMBuilderRef, LLVMValueRef Val,
|
||||||
|
LLVMTypeRef DestTy, const char *Name);
|
||||||
|
LLVMValueRef LLVMBuildSExtOrBitCast(LLVMBuilderRef, LLVMValueRef Val,
|
||||||
|
LLVMTypeRef DestTy, const char *Name);
|
||||||
|
LLVMValueRef LLVMBuildTruncOrBitCast(LLVMBuilderRef, LLVMValueRef Val,
|
||||||
|
LLVMTypeRef DestTy, const char *Name);
|
||||||
|
LLVMValueRef LLVMBuildPointerCast(LLVMBuilderRef, LLVMValueRef Val,
|
||||||
|
LLVMTypeRef DestTy, const char *Name);
|
||||||
|
LLVMValueRef LLVMBuildIntCast(LLVMBuilderRef, LLVMValueRef Val,
|
||||||
|
LLVMTypeRef DestTy, const char *Name);
|
||||||
|
LLVMValueRef LLVMBuildFPCast(LLVMBuilderRef, LLVMValueRef Val,
|
||||||
|
LLVMTypeRef DestTy, const char *Name);
|
||||||
|
|
||||||
/* Comparisons */
|
/* Comparisons */
|
||||||
LLVMValueRef LLVMBuildICmp(LLVMBuilderRef, LLVMIntPredicate Op,
|
LLVMValueRef LLVMBuildICmp(LLVMBuilderRef, LLVMIntPredicate Op,
|
||||||
@@ -766,6 +799,13 @@ LLVMValueRef LLVMBuildInsertValue(LLVMBuilderRef, LLVMValueRef AggVal,
|
|||||||
LLVMValueRef EltVal, unsigned Index,
|
LLVMValueRef EltVal, unsigned Index,
|
||||||
const char *Name);
|
const char *Name);
|
||||||
|
|
||||||
|
LLVMValueRef LLVMBuildIsNull(LLVMBuilderRef, LLVMValueRef Val,
|
||||||
|
const char *Name);
|
||||||
|
LLVMValueRef LLVMBuildIsNotNull(LLVMBuilderRef, LLVMValueRef Val,
|
||||||
|
const char *Name);
|
||||||
|
LLVMValueRef LLVMBuildPtrDiff(LLVMBuilderRef, LLVMValueRef LHS,
|
||||||
|
LLVMValueRef RHS, const char *Name);
|
||||||
|
|
||||||
|
|
||||||
/*===-- Module providers --------------------------------------------------===*/
|
/*===-- Module providers --------------------------------------------------===*/
|
||||||
|
|
||||||
|
@@ -1392,6 +1392,11 @@ LLVMValueRef LLVMBuildRet(LLVMBuilderRef B, LLVMValueRef V) {
|
|||||||
return wrap(unwrap(B)->CreateRet(unwrap(V)));
|
return wrap(unwrap(B)->CreateRet(unwrap(V)));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
LLVMValueRef LLVMBuildAggregateRet(LLVMBuilderRef B, LLVMValueRef *RetVals,
|
||||||
|
unsigned N) {
|
||||||
|
return wrap(unwrap(B)->CreateAggregateRet(unwrap(RetVals), N));
|
||||||
|
}
|
||||||
|
|
||||||
LLVMValueRef LLVMBuildBr(LLVMBuilderRef B, LLVMBasicBlockRef Dest) {
|
LLVMValueRef LLVMBuildBr(LLVMBuilderRef B, LLVMBasicBlockRef Dest) {
|
||||||
return wrap(unwrap(B)->CreateBr(unwrap(Dest)));
|
return wrap(unwrap(B)->CreateBr(unwrap(Dest)));
|
||||||
}
|
}
|
||||||
@@ -1435,16 +1440,36 @@ LLVMValueRef LLVMBuildAdd(LLVMBuilderRef B, LLVMValueRef LHS, LLVMValueRef RHS,
|
|||||||
return wrap(unwrap(B)->CreateAdd(unwrap(LHS), unwrap(RHS), Name));
|
return wrap(unwrap(B)->CreateAdd(unwrap(LHS), unwrap(RHS), Name));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
LLVMValueRef LLVMBuildNSWAdd(LLVMBuilderRef B, LLVMValueRef LHS, LLVMValueRef RHS,
|
||||||
|
const char *Name) {
|
||||||
|
return wrap(unwrap(B)->CreateNSWAdd(unwrap(LHS), unwrap(RHS), Name));
|
||||||
|
}
|
||||||
|
|
||||||
|
LLVMValueRef LLVMBuildFAdd(LLVMBuilderRef B, LLVMValueRef LHS, LLVMValueRef RHS,
|
||||||
|
const char *Name) {
|
||||||
|
return wrap(unwrap(B)->CreateFAdd(unwrap(LHS), unwrap(RHS), Name));
|
||||||
|
}
|
||||||
|
|
||||||
LLVMValueRef LLVMBuildSub(LLVMBuilderRef B, LLVMValueRef LHS, LLVMValueRef RHS,
|
LLVMValueRef LLVMBuildSub(LLVMBuilderRef B, LLVMValueRef LHS, LLVMValueRef RHS,
|
||||||
const char *Name) {
|
const char *Name) {
|
||||||
return wrap(unwrap(B)->CreateSub(unwrap(LHS), unwrap(RHS), Name));
|
return wrap(unwrap(B)->CreateSub(unwrap(LHS), unwrap(RHS), Name));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
LLVMValueRef LLVMBuildFSub(LLVMBuilderRef B, LLVMValueRef LHS, LLVMValueRef RHS,
|
||||||
|
const char *Name) {
|
||||||
|
return wrap(unwrap(B)->CreateFSub(unwrap(LHS), unwrap(RHS), Name));
|
||||||
|
}
|
||||||
|
|
||||||
LLVMValueRef LLVMBuildMul(LLVMBuilderRef B, LLVMValueRef LHS, LLVMValueRef RHS,
|
LLVMValueRef LLVMBuildMul(LLVMBuilderRef B, LLVMValueRef LHS, LLVMValueRef RHS,
|
||||||
const char *Name) {
|
const char *Name) {
|
||||||
return wrap(unwrap(B)->CreateMul(unwrap(LHS), unwrap(RHS), Name));
|
return wrap(unwrap(B)->CreateMul(unwrap(LHS), unwrap(RHS), Name));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
LLVMValueRef LLVMBuildFMul(LLVMBuilderRef B, LLVMValueRef LHS, LLVMValueRef RHS,
|
||||||
|
const char *Name) {
|
||||||
|
return wrap(unwrap(B)->CreateFMul(unwrap(LHS), unwrap(RHS), Name));
|
||||||
|
}
|
||||||
|
|
||||||
LLVMValueRef LLVMBuildUDiv(LLVMBuilderRef B, LLVMValueRef LHS, LLVMValueRef RHS,
|
LLVMValueRef LLVMBuildUDiv(LLVMBuilderRef B, LLVMValueRef LHS, LLVMValueRef RHS,
|
||||||
const char *Name) {
|
const char *Name) {
|
||||||
return wrap(unwrap(B)->CreateUDiv(unwrap(LHS), unwrap(RHS), Name));
|
return wrap(unwrap(B)->CreateUDiv(unwrap(LHS), unwrap(RHS), Name));
|
||||||
@@ -1455,6 +1480,11 @@ LLVMValueRef LLVMBuildSDiv(LLVMBuilderRef B, LLVMValueRef LHS, LLVMValueRef RHS,
|
|||||||
return wrap(unwrap(B)->CreateSDiv(unwrap(LHS), unwrap(RHS), Name));
|
return wrap(unwrap(B)->CreateSDiv(unwrap(LHS), unwrap(RHS), Name));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
LLVMValueRef LLVMBuildExactSDiv(LLVMBuilderRef B, LLVMValueRef LHS,
|
||||||
|
LLVMValueRef RHS, const char *Name) {
|
||||||
|
return wrap(unwrap(B)->CreateExactSDiv(unwrap(LHS), unwrap(RHS), Name));
|
||||||
|
}
|
||||||
|
|
||||||
LLVMValueRef LLVMBuildFDiv(LLVMBuilderRef B, LLVMValueRef LHS, LLVMValueRef RHS,
|
LLVMValueRef LLVMBuildFDiv(LLVMBuilderRef B, LLVMValueRef LHS, LLVMValueRef RHS,
|
||||||
const char *Name) {
|
const char *Name) {
|
||||||
return wrap(unwrap(B)->CreateFDiv(unwrap(LHS), unwrap(RHS), Name));
|
return wrap(unwrap(B)->CreateFDiv(unwrap(LHS), unwrap(RHS), Name));
|
||||||
@@ -1557,6 +1587,28 @@ LLVMValueRef LLVMBuildGEP(LLVMBuilderRef B, LLVMValueRef Pointer,
|
|||||||
unwrap(Indices) + NumIndices, Name));
|
unwrap(Indices) + NumIndices, Name));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
LLVMValueRef LLVMBuildInBoundsGEP(LLVMBuilderRef B, LLVMValueRef Pointer,
|
||||||
|
LLVMValueRef *Indices, unsigned NumIndices,
|
||||||
|
const char *Name) {
|
||||||
|
return wrap(unwrap(B)->CreateInBoundsGEP(unwrap(Pointer), unwrap(Indices),
|
||||||
|
unwrap(Indices) + NumIndices, Name));
|
||||||
|
}
|
||||||
|
|
||||||
|
LLVMValueRef LLVMBuildStructGEP(LLVMBuilderRef B, LLVMValueRef Pointer,
|
||||||
|
unsigned Idx, const char *Name) {
|
||||||
|
return wrap(unwrap(B)->CreateStructGEP(unwrap(Pointer), Idx, Name));
|
||||||
|
}
|
||||||
|
|
||||||
|
LLVMValueRef LLVMBuildGlobalString(LLVMBuilderRef B, const char *Str,
|
||||||
|
const char *Name) {
|
||||||
|
return wrap(unwrap(B)->CreateGlobalString(Str, Name));
|
||||||
|
}
|
||||||
|
|
||||||
|
LLVMValueRef LLVMBuildGlobalStringPtr(LLVMBuilderRef B, const char *Str,
|
||||||
|
const char *Name) {
|
||||||
|
return wrap(unwrap(B)->CreateGlobalStringPtr(Str, Name));
|
||||||
|
}
|
||||||
|
|
||||||
/*--.. Casts ...............................................................--*/
|
/*--.. Casts ...............................................................--*/
|
||||||
|
|
||||||
LLVMValueRef LLVMBuildTrunc(LLVMBuilderRef B, LLVMValueRef Val,
|
LLVMValueRef LLVMBuildTrunc(LLVMBuilderRef B, LLVMValueRef Val,
|
||||||
@@ -1619,6 +1671,39 @@ LLVMValueRef LLVMBuildBitCast(LLVMBuilderRef B, LLVMValueRef Val,
|
|||||||
return wrap(unwrap(B)->CreateBitCast(unwrap(Val), unwrap(DestTy), Name));
|
return wrap(unwrap(B)->CreateBitCast(unwrap(Val), unwrap(DestTy), Name));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
LLVMValueRef LLVMBuildZExtOrBitCast(LLVMBuilderRef B, LLVMValueRef Val,
|
||||||
|
LLVMTypeRef DestTy, const char *Name) {
|
||||||
|
return wrap(unwrap(B)->CreateZExtOrBitCast(unwrap(Val), unwrap(DestTy),
|
||||||
|
Name));
|
||||||
|
}
|
||||||
|
|
||||||
|
LLVMValueRef LLVMBuildSExtOrBitCast(LLVMBuilderRef B, LLVMValueRef Val,
|
||||||
|
LLVMTypeRef DestTy, const char *Name) {
|
||||||
|
return wrap(unwrap(B)->CreateSExtOrBitCast(unwrap(Val), unwrap(DestTy),
|
||||||
|
Name));
|
||||||
|
}
|
||||||
|
|
||||||
|
LLVMValueRef LLVMBuildTruncOrBitCast(LLVMBuilderRef B, LLVMValueRef Val,
|
||||||
|
LLVMTypeRef DestTy, const char *Name) {
|
||||||
|
return wrap(unwrap(B)->CreateTruncOrBitCast(unwrap(Val), unwrap(DestTy),
|
||||||
|
Name));
|
||||||
|
}
|
||||||
|
|
||||||
|
LLVMValueRef LLVMBuildPointerCast(LLVMBuilderRef B, LLVMValueRef Val,
|
||||||
|
LLVMTypeRef DestTy, const char *Name) {
|
||||||
|
return wrap(unwrap(B)->CreatePointerCast(unwrap(Val), unwrap(DestTy), Name));
|
||||||
|
}
|
||||||
|
|
||||||
|
LLVMValueRef LLVMBuildIntCast(LLVMBuilderRef B, LLVMValueRef Val,
|
||||||
|
LLVMTypeRef DestTy, const char *Name) {
|
||||||
|
return wrap(unwrap(B)->CreateIntCast(unwrap(Val), unwrap(DestTy), Name));
|
||||||
|
}
|
||||||
|
|
||||||
|
LLVMValueRef LLVMBuildFPCast(LLVMBuilderRef B, LLVMValueRef Val,
|
||||||
|
LLVMTypeRef DestTy, const char *Name) {
|
||||||
|
return wrap(unwrap(B)->CreateFPCast(unwrap(Val), unwrap(DestTy), Name));
|
||||||
|
}
|
||||||
|
|
||||||
/*--.. Comparisons .........................................................--*/
|
/*--.. Comparisons .........................................................--*/
|
||||||
|
|
||||||
LLVMValueRef LLVMBuildICmp(LLVMBuilderRef B, LLVMIntPredicate Op,
|
LLVMValueRef LLVMBuildICmp(LLVMBuilderRef B, LLVMIntPredicate Op,
|
||||||
@@ -1692,6 +1777,21 @@ LLVMValueRef LLVMBuildInsertValue(LLVMBuilderRef B, LLVMValueRef AggVal,
|
|||||||
Index, Name));
|
Index, Name));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
LLVMValueRef LLVMBuildIsNull(LLVMBuilderRef B, LLVMValueRef Val,
|
||||||
|
const char *Name) {
|
||||||
|
return wrap(unwrap(B)->CreateIsNull(unwrap(Val), Name));
|
||||||
|
}
|
||||||
|
|
||||||
|
LLVMValueRef LLVMBuildIsNotNull(LLVMBuilderRef B, LLVMValueRef Val,
|
||||||
|
const char *Name) {
|
||||||
|
return wrap(unwrap(B)->CreateIsNotNull(unwrap(Val), Name));
|
||||||
|
}
|
||||||
|
|
||||||
|
LLVMValueRef LLVMBuildPtrDiff(LLVMBuilderRef B, LLVMValueRef LHS,
|
||||||
|
LLVMValueRef RHS, const char *Name) {
|
||||||
|
return wrap(unwrap(B)->CreatePtrDiff(unwrap(LHS), unwrap(RHS), Name));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/*===-- Module providers --------------------------------------------------===*/
|
/*===-- Module providers --------------------------------------------------===*/
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user