about summary refs log tree commit diff
path: root/src/bootstrap/llvm.pry
diff options
context:
space:
mode:
Diffstat (limited to 'src/bootstrap/llvm.pry')
-rw-r--r--src/bootstrap/llvm.pry13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/bootstrap/llvm.pry b/src/bootstrap/llvm.pry
index 8cd600f..f958286 100644
--- a/src/bootstrap/llvm.pry
+++ b/src/bootstrap/llvm.pry
@@ -258,6 +258,7 @@ let LLVMTargetRef = newtype *void;
 
 let LLVMValueRef = newtype *void;
 let LLVMTypeRef = newtype *void;
+let LLVMBasicBlockRef = newtype *void;
 
 extern LLVMConstInt = (LLVMTypeRef, i64, i64) => LLVMValueRef;
 extern LLVMInt64Type = () => LLVMTypeRef;
@@ -269,6 +270,8 @@ extern LLVMDisposeModule = (LLVMModuleRef) => void;
 extern LLVMShutdown = () => void;
 extern LLVMDisposeBuilder = (LLVMBuilderRef) => void;
 
+extern LLVMGetInsertBlock = (LLVMBuilderRef) => LLVMBasicBlockRef;
+
 extern LLVMDumpModule = (LLVMModuleRef) => void;
 extern LLVMGetDefaultTargetTriple = () => *i8;
 extern LLVMGetTargetFromTriple = (*i8, *LLVMTargetRef, **i8) => i64;
@@ -287,3 +290,13 @@ let LLVMAbortProcessAction = 0;
 extern LLVMTargetMachineEmitToFile = (LLVMTargetMachineRef, LLVMModuleRef, *i8, i64, **i8) => i64;
 
 let LLVMObjectFile = 1;
+
+extern LLVMFunctionType = (LLVMTypeRef, *LLVMTypeRef, i64, i64) => LLVMTypeRef;
+extern LLVMAddFunction = (LLVMModuleRef, *i8, LLVMTypeRef) => LLVMValueRef;
+extern LLVMAppendBasicBlock = (LLVMValueRef, *i8) => LLVMBasicBlockRef;
+extern LLVMPositionBuilderAtEnd = (LLVMBuilderRef, LLVMBasicBlockRef) => void;
+
+extern LLVMGetParams = (LLVMValueRef, *LLVMValueRef) => void;
+
+extern LLVMBuildRetVoid = (LLVMBuilderRef) => void;
+extern LLVMBuildRet = (LLVMBuilderRef, LLVMValueRef) => void;