1 ;;; This file was automatically generated by SWIG (http://www.swig.org).
4 ;;; Do not make changes to this file unless you know what you are doing--modify
5 ;;; the SWIG interface file instead.
10 (cffi:defctype uint8_t
:unsigned-char
)
12 ;; A little hack make the Name argument for LLVMBuild* be optional and
13 ;; default to the empty string.
14 (defmacro wrap-defcfun
((c-name lisp-name
&rest options
) return-type
&body args
)
15 (if (and (eql (mismatch "LLVMBuild" c-name
) 9)
16 (equal (last args
) '((Name :string
))))
17 (let ((real-lisp-name (intern (concatenate 'string
"%" (symbol-name lisp-name
))
18 (symbol-package lisp-name
)))
19 (mod-args (map 'list
#'car
(butlast args
))))
21 ( cffi
:defcfun
(,c-name
,real-lisp-name
,@options
) ,return-type
,@args
)
22 (defmacro ,lisp-name
(,@mod-args
&optional
(name ""))
23 `(,',real-lisp-name
,,@mod-args
,name
))))
24 `( cffi
:defcfun
(,c-name
,lisp-name
,@options
) ,return-type
,@args
)))
27 (cffi:defctype LLVMBool
:int
)
29 (cffi:defctype LLVMContextRef
:pointer
)
31 (cffi:defctype LLVMModuleRef
:pointer
)
33 (cffi:defctype LLVMTypeRef
:pointer
)
35 (cffi:defctype LLVMTypeHandleRef
:pointer
)
37 (cffi:defctype LLVMValueRef
:pointer
)
39 (cffi:defctype LLVMBasicBlockRef
:pointer
)
41 (cffi:defctype LLVMBuilderRef
:pointer
)
43 (cffi:defctype LLVMModuleProviderRef
:pointer
)
45 (cffi:defctype LLVMMemoryBufferRef
:pointer
)
47 (cffi:defctype LLVMPassManagerRef
:pointer
)
49 (cffi:defctype LLVMUseIteratorRef
:pointer
)
51 (cffi:defbitfield LLVMAttribute
52 (:LLVMZExtAttribute
#.
(cl:ash
1 0))
53 (:LLVMSExtAttribute
#.
(cl:ash
1 1))
54 (:LLVMNoReturnAttribute
#.
(cl:ash
1 2))
55 (:LLVMInRegAttribute
#.
(cl:ash
1 3))
56 (:LLVMStructRetAttribute
#.
(cl:ash
1 4))
57 (:LLVMNoUnwindAttribute
#.
(cl:ash
1 5))
58 (:LLVMNoAliasAttribute
#.
(cl:ash
1 6))
59 (:LLVMByValAttribute
#.
(cl:ash
1 7))
60 (:LLVMNestAttribute
#.
(cl:ash
1 8))
61 (:LLVMReadNoneAttribute
#.
(cl:ash
1 9))
62 (:LLVMReadOnlyAttribute
#.
(cl:ash
1 10))
63 (:LLVMNoInlineAttribute
#.
(cl:ash
1 11))
64 (:LLVMAlwaysInlineAttribute
#.
(cl:ash
1 12))
65 (:LLVMOptimizeForSizeAttribute
#.
(cl:ash
1 13))
66 (:LLVMStackProtectAttribute
#.
(cl:ash
1 14))
67 (:LLVMStackProtectReqAttribute
#.
(cl:ash
1 15))
68 (:LLVMNoCaptureAttribute
#.
(cl:ash
1 21))
69 (:LLVMNoRedZoneAttribute
#.
(cl:ash
1 22))
70 (:LLVMNoImplicitFloatAttribute
#.
(cl:ash
1 23))
71 (:LLVMNakedAttribute
#.
(cl:ash
1 24))
72 (:LLVMInlineHintAttribute
#.
(cl:ash
1 25)))
74 (cffi:defcenum LLVMOpcode
80 (:LLVMUnreachable
#.6)
104 (:LLVMGetElementPtr
#.30)
123 (:LLVMExtractElement
#.51)
124 (:LLVMInsertElement
#.52)
125 (:LLVMShuffleVector
#.53)
126 (:LLVMExtractValue
#.54)
127 (:LLVMInsertValue
#.55))
129 (cffi:defcenum LLVMTypeKind
133 :LLVMX86_FP80TypeKind
135 :LLVMPPC_FP128TypeKind
138 :LLVMFunctionTypeKind
144 :LLVMMetadataTypeKind
)
146 (cffi:defcenum LLVMLinkage
148 :LLVMAvailableExternallyLinkage
149 :LLVMLinkOnceAnyLinkage
150 :LLVMLinkOnceODRLinkage
153 :LLVMAppendingLinkage
156 :LLVMDLLImportLinkage
157 :LLVMDLLExportLinkage
158 :LLVMExternalWeakLinkage
161 :LLVMLinkerPrivateLinkage
)
163 (cffi:defcenum LLVMVisibility
164 :LLVMDefaultVisibility
165 :LLVMHiddenVisibility
166 :LLVMProtectedVisibility
)
168 (cffi:defcenum LLVMCallConv
170 (:LLVMFastCallConv
#.8)
171 (:LLVMColdCallConv
#.9)
172 (:LLVMX86StdcallCallConv
#.64)
173 (:LLVMX86FastcallCallConv
#.65))
175 (cffi:defcenum LLVMIntPredicate
187 (cffi:defcenum LLVMRealPredicate
188 :LLVMRealPredicateFalse
203 :LLVMRealPredicateTrue
)
205 (wrap-defcfun ("LLVMDisposeMessage" LLVMDisposeMessage
) :void
208 (wrap-defcfun ("LLVMContextCreate" LLVMContextCreate
) LLVMContextRef
)
210 (wrap-defcfun ("LLVMGetGlobalContext" LLVMGetGlobalContext
) LLVMContextRef
)
212 (wrap-defcfun ("LLVMContextDispose" LLVMContextDispose
) :void
215 (wrap-defcfun ("LLVMModuleCreateWithNameInContext" %LLVMModuleCreateWithNameInContext
) LLVMModuleRef
219 (wrap-defcfun ("LLVMDisposeModule" LLVMDisposeModule
) :void
222 (wrap-defcfun ("LLVMGetDataLayout" LLVMGetDataLayout
) :string
225 (wrap-defcfun ("LLVMSetDataLayout" LLVMSetDataLayout
) :void
229 (wrap-defcfun ("LLVMGetTarget" LLVMGetTarget
) :string
232 (wrap-defcfun ("LLVMSetTarget" LLVMSetTarget
) :void
236 (wrap-defcfun ("LLVMAddTypeName" LLVMAddTypeName
) :boolean
241 (wrap-defcfun ("LLVMDeleteTypeName" LLVMDeleteTypeName
) :void
245 (wrap-defcfun ("LLVMGetTypeByName" LLVMGetTypeByName
) LLVMTypeRef
249 (wrap-defcfun ("LLVMDumpModule" LLVMDumpModule
) :void
252 (wrap-defcfun ("LLVMGetTypeKind" LLVMGetTypeKind
) LLVMTypeKind
255 (wrap-defcfun ("LLVMGetTypeContext" LLVMGetTypeContext
) LLVMContextRef
258 (wrap-defcfun ("LLVMInt1TypeInContext" %LLVMInt1TypeInContext
) LLVMTypeRef
261 (wrap-defcfun ("LLVMInt8TypeInContext" %LLVMInt8TypeInContext
) LLVMTypeRef
264 (wrap-defcfun ("LLVMInt16TypeInContext" %LLVMInt16TypeInContext
) LLVMTypeRef
267 (wrap-defcfun ("LLVMInt32TypeInContext" %LLVMInt32TypeInContext
) LLVMTypeRef
270 (wrap-defcfun ("LLVMInt64TypeInContext" %LLVMInt64TypeInContext
) LLVMTypeRef
273 (wrap-defcfun ("LLVMIntTypeInContext" %LLVMIntTypeInContext
) LLVMTypeRef
275 (NumBits :unsigned-int
))
277 (wrap-defcfun ("LLVMGetIntTypeWidth" LLVMGetIntTypeWidth
) :unsigned-int
278 (IntegerTy LLVMTypeRef
))
280 (wrap-defcfun ("LLVMFloatTypeInContext" %LLVMFloatTypeInContext
) LLVMTypeRef
283 (wrap-defcfun ("LLVMDoubleTypeInContext" %LLVMDoubleTypeInContext
) LLVMTypeRef
286 (wrap-defcfun ("LLVMX86FP80TypeInContext" %LLVMX86FP80TypeInContext
) LLVMTypeRef
289 (wrap-defcfun ("LLVMFP128TypeInContext" %LLVMFP128TypeInContext
) LLVMTypeRef
292 (wrap-defcfun ("LLVMPPCFP128TypeInContext" %LLVMPPCFP128TypeInContext
) LLVMTypeRef
295 (wrap-defcfun ("LLVMFunctionType" %LLVMFunctionType
) LLVMTypeRef
296 (ReturnType LLVMTypeRef
)
297 (ParamTypes :pointer
)
298 (ParamCount :unsigned-int
)
301 (wrap-defcfun ("LLVMIsFunctionVarArg" LLVMIsFunctionVarArg
) :boolean
302 (FunctionTy LLVMTypeRef
))
304 (wrap-defcfun ("LLVMGetReturnType" LLVMGetReturnType
) LLVMTypeRef
305 (FunctionTy LLVMTypeRef
))
307 (wrap-defcfun ("LLVMCountParamTypes" LLVMCountParamTypes
) :unsigned-int
308 (FunctionTy LLVMTypeRef
))
310 (wrap-defcfun ("LLVMGetParamTypes" %LLVMGetParamTypes
) :void
311 (FunctionTy LLVMTypeRef
)
314 (wrap-defcfun ("LLVMStructTypeInContext" %LLVMStructTypeInContext
) LLVMTypeRef
316 (ElementTypes :pointer
)
317 (ElementCount :unsigned-int
)
320 (wrap-defcfun ("LLVMCountStructElementTypes" LLVMCountStructElementTypes
) :unsigned-int
321 (StructTy LLVMTypeRef
))
323 (wrap-defcfun ("LLVMGetStructElementTypes" %LLVMGetStructElementTypes
) :void
324 (StructTy LLVMTypeRef
)
327 (wrap-defcfun ("LLVMIsPackedStruct" LLVMIsPackedStruct
) :boolean
328 (StructTy LLVMTypeRef
))
330 (wrap-defcfun ("LLVMArrayType" LLVMArrayType
) LLVMTypeRef
331 (ElementType LLVMTypeRef
)
332 (ElementCount :unsigned-int
))
334 (wrap-defcfun ("LLVMPointerType" LLVMPointerType
) LLVMTypeRef
335 (ElementType LLVMTypeRef
)
336 (AddressSpace :unsigned-int
))
338 (wrap-defcfun ("LLVMVectorType" LLVMVectorType
) LLVMTypeRef
339 (ElementType LLVMTypeRef
)
340 (ElementCount :unsigned-int
))
342 (wrap-defcfun ("LLVMGetElementType" LLVMGetElementType
) LLVMTypeRef
345 (wrap-defcfun ("LLVMGetArrayLength" LLVMGetArrayLength
) :unsigned-int
346 (ArrayTy LLVMTypeRef
))
348 (wrap-defcfun ("LLVMGetPointerAddressSpace" LLVMGetPointerAddressSpace
) :unsigned-int
349 (PointerTy LLVMTypeRef
))
351 (wrap-defcfun ("LLVMGetVectorSize" LLVMGetVectorSize
) :unsigned-int
352 (VectorTy LLVMTypeRef
))
354 (wrap-defcfun ("LLVMVoidTypeInContext" %LLVMVoidTypeInContext
) LLVMTypeRef
357 (wrap-defcfun ("LLVMLabelTypeInContext" %LLVMLabelTypeInContext
) LLVMTypeRef
360 (wrap-defcfun ("LLVMOpaqueTypeInContext" %LLVMOpaqueTypeInContext
) LLVMTypeRef
363 (wrap-defcfun ("LLVMCreateTypeHandle" LLVMCreateTypeHandle
) LLVMTypeHandleRef
364 (PotentiallyAbstractTy LLVMTypeRef
))
366 (wrap-defcfun ("LLVMRefineType" LLVMRefineType
) :void
367 (AbstractTy LLVMTypeRef
)
368 (ConcreteTy LLVMTypeRef
))
370 (wrap-defcfun ("LLVMResolveTypeHandle" LLVMResolveTypeHandle
) LLVMTypeRef
371 (TypeHandle LLVMTypeHandleRef
))
373 (wrap-defcfun ("LLVMDisposeTypeHandle" LLVMDisposeTypeHandle
) :void
374 (TypeHandle LLVMTypeHandleRef
))
376 (wrap-defcfun ("LLVMTypeOf" LLVMTypeOf
) LLVMTypeRef
379 (wrap-defcfun ("LLVMGetValueName" LLVMGetValueName
) :string
382 (wrap-defcfun ("LLVMSetValueName" LLVMSetValueName
) :void
386 (wrap-defcfun ("LLVMDumpValue" LLVMDumpValue
) :void
389 (wrap-defcfun ("LLVMReplaceAllUsesWith" LLVMReplaceAllUsesWith
) :void
390 (OldVal LLVMValueRef
)
391 (NewVal LLVMValueRef
))
393 (wrap-defcfun ("LLVMIsAArgument" LLVMIsAArgument
) LLVMValueRef
396 (wrap-defcfun ("LLVMIsABasicBlock" LLVMIsABasicBlock
) LLVMValueRef
399 (wrap-defcfun ("LLVMIsAInlineAsm" LLVMIsAInlineAsm
) LLVMValueRef
402 (wrap-defcfun ("LLVMIsAUser" LLVMIsAUser
) LLVMValueRef
405 (wrap-defcfun ("LLVMIsAConstant" LLVMIsAConstant
) LLVMValueRef
408 (wrap-defcfun ("LLVMIsAConstantAggregateZero" LLVMIsAConstantAggregateZero
) LLVMValueRef
411 (wrap-defcfun ("LLVMIsAConstantArray" LLVMIsAConstantArray
) LLVMValueRef
414 (wrap-defcfun ("LLVMIsAConstantExpr" LLVMIsAConstantExpr
) LLVMValueRef
417 (wrap-defcfun ("LLVMIsAConstantFP" LLVMIsAConstantFP
) LLVMValueRef
420 (wrap-defcfun ("LLVMIsAConstantInt" LLVMIsAConstantInt
) LLVMValueRef
423 (wrap-defcfun ("LLVMIsAConstantPointerNull" LLVMIsAConstantPointerNull
) LLVMValueRef
426 (wrap-defcfun ("LLVMIsAConstantStruct" LLVMIsAConstantStruct
) LLVMValueRef
429 (wrap-defcfun ("LLVMIsAConstantVector" LLVMIsAConstantVector
) LLVMValueRef
432 (wrap-defcfun ("LLVMIsAGlobalValue" LLVMIsAGlobalValue
) LLVMValueRef
435 (wrap-defcfun ("LLVMIsAFunction" LLVMIsAFunction
) LLVMValueRef
438 (wrap-defcfun ("LLVMIsAGlobalAlias" LLVMIsAGlobalAlias
) LLVMValueRef
441 (wrap-defcfun ("LLVMIsAGlobalVariable" LLVMIsAGlobalVariable
) LLVMValueRef
444 (wrap-defcfun ("LLVMIsAUndefValue" LLVMIsAUndefValue
) LLVMValueRef
447 (wrap-defcfun ("LLVMIsAInstruction" LLVMIsAInstruction
) LLVMValueRef
450 (wrap-defcfun ("LLVMIsABinaryOperator" LLVMIsABinaryOperator
) LLVMValueRef
453 (wrap-defcfun ("LLVMIsACallInst" LLVMIsACallInst
) LLVMValueRef
456 (wrap-defcfun ("LLVMIsAIntrinsicInst" LLVMIsAIntrinsicInst
) LLVMValueRef
459 (wrap-defcfun ("LLVMIsADbgInfoIntrinsic" LLVMIsADbgInfoIntrinsic
) LLVMValueRef
462 (wrap-defcfun ("LLVMIsADbgDeclareInst" LLVMIsADbgDeclareInst
) LLVMValueRef
465 (wrap-defcfun ("LLVMIsADbgFuncStartInst" LLVMIsADbgFuncStartInst
) LLVMValueRef
468 (wrap-defcfun ("LLVMIsADbgRegionEndInst" LLVMIsADbgRegionEndInst
) LLVMValueRef
471 (wrap-defcfun ("LLVMIsADbgRegionStartInst" LLVMIsADbgRegionStartInst
) LLVMValueRef
474 (wrap-defcfun ("LLVMIsADbgStopPointInst" LLVMIsADbgStopPointInst
) LLVMValueRef
477 (wrap-defcfun ("LLVMIsAEHSelectorInst" LLVMIsAEHSelectorInst
) LLVMValueRef
480 (wrap-defcfun ("LLVMIsAMemIntrinsic" LLVMIsAMemIntrinsic
) LLVMValueRef
483 (wrap-defcfun ("LLVMIsAMemCpyInst" LLVMIsAMemCpyInst
) LLVMValueRef
486 (wrap-defcfun ("LLVMIsAMemMoveInst" LLVMIsAMemMoveInst
) LLVMValueRef
489 (wrap-defcfun ("LLVMIsAMemSetInst" LLVMIsAMemSetInst
) LLVMValueRef
492 (wrap-defcfun ("LLVMIsACmpInst" LLVMIsACmpInst
) LLVMValueRef
495 (wrap-defcfun ("LLVMIsAFCmpInst" LLVMIsAFCmpInst
) LLVMValueRef
498 (wrap-defcfun ("LLVMIsAICmpInst" LLVMIsAICmpInst
) LLVMValueRef
501 (wrap-defcfun ("LLVMIsAExtractElementInst" LLVMIsAExtractElementInst
) LLVMValueRef
504 (wrap-defcfun ("LLVMIsAGetElementPtrInst" LLVMIsAGetElementPtrInst
) LLVMValueRef
507 (wrap-defcfun ("LLVMIsAInsertElementInst" LLVMIsAInsertElementInst
) LLVMValueRef
510 (wrap-defcfun ("LLVMIsAInsertValueInst" LLVMIsAInsertValueInst
) LLVMValueRef
513 (wrap-defcfun ("LLVMIsAPHINode" LLVMIsAPHINode
) LLVMValueRef
516 (wrap-defcfun ("LLVMIsASelectInst" LLVMIsASelectInst
) LLVMValueRef
519 (wrap-defcfun ("LLVMIsAShuffleVectorInst" LLVMIsAShuffleVectorInst
) LLVMValueRef
522 (wrap-defcfun ("LLVMIsAStoreInst" LLVMIsAStoreInst
) LLVMValueRef
525 (wrap-defcfun ("LLVMIsATerminatorInst" LLVMIsATerminatorInst
) LLVMValueRef
528 (wrap-defcfun ("LLVMIsABranchInst" LLVMIsABranchInst
) LLVMValueRef
531 (wrap-defcfun ("LLVMIsAInvokeInst" LLVMIsAInvokeInst
) LLVMValueRef
534 (wrap-defcfun ("LLVMIsAReturnInst" LLVMIsAReturnInst
) LLVMValueRef
537 (wrap-defcfun ("LLVMIsASwitchInst" LLVMIsASwitchInst
) LLVMValueRef
540 (wrap-defcfun ("LLVMIsAUnreachableInst" LLVMIsAUnreachableInst
) LLVMValueRef
543 (wrap-defcfun ("LLVMIsAUnwindInst" LLVMIsAUnwindInst
) LLVMValueRef
546 (wrap-defcfun ("LLVMIsAUnaryInstruction" LLVMIsAUnaryInstruction
) LLVMValueRef
549 (wrap-defcfun ("LLVMIsAAllocaInst" LLVMIsAAllocaInst
) LLVMValueRef
552 (wrap-defcfun ("LLVMIsACastInst" LLVMIsACastInst
) LLVMValueRef
555 (wrap-defcfun ("LLVMIsABitCastInst" LLVMIsABitCastInst
) LLVMValueRef
558 (wrap-defcfun ("LLVMIsAFPExtInst" LLVMIsAFPExtInst
) LLVMValueRef
561 (wrap-defcfun ("LLVMIsAFPToSIInst" LLVMIsAFPToSIInst
) LLVMValueRef
564 (wrap-defcfun ("LLVMIsAFPToUIInst" LLVMIsAFPToUIInst
) LLVMValueRef
567 (wrap-defcfun ("LLVMIsAFPTruncInst" LLVMIsAFPTruncInst
) LLVMValueRef
570 (wrap-defcfun ("LLVMIsAIntToPtrInst" LLVMIsAIntToPtrInst
) LLVMValueRef
573 (wrap-defcfun ("LLVMIsAPtrToIntInst" LLVMIsAPtrToIntInst
) LLVMValueRef
576 (wrap-defcfun ("LLVMIsASExtInst" LLVMIsASExtInst
) LLVMValueRef
579 (wrap-defcfun ("LLVMIsASIToFPInst" LLVMIsASIToFPInst
) LLVMValueRef
582 (wrap-defcfun ("LLVMIsATruncInst" LLVMIsATruncInst
) LLVMValueRef
585 (wrap-defcfun ("LLVMIsAUIToFPInst" LLVMIsAUIToFPInst
) LLVMValueRef
588 (wrap-defcfun ("LLVMIsAZExtInst" LLVMIsAZExtInst
) LLVMValueRef
591 (wrap-defcfun ("LLVMIsAExtractValueInst" LLVMIsAExtractValueInst
) LLVMValueRef
594 (wrap-defcfun ("LLVMIsALoadInst" LLVMIsALoadInst
) LLVMValueRef
597 (wrap-defcfun ("LLVMIsAVAArgInst" LLVMIsAVAArgInst
) LLVMValueRef
600 (wrap-defcfun ("LLVMGetFirstUse" LLVMGetFirstUse
) LLVMUseIteratorRef
603 (wrap-defcfun ("LLVMGetNextUse" LLVMGetNextUse
) LLVMUseIteratorRef
604 (U LLVMUseIteratorRef
))
606 (wrap-defcfun ("LLVMGetUser" LLVMGetUser
) LLVMValueRef
607 (U LLVMUseIteratorRef
))
609 (wrap-defcfun ("LLVMGetUsedValue" LLVMGetUsedValue
) LLVMValueRef
610 (U LLVMUseIteratorRef
))
612 (wrap-defcfun ("LLVMGetOperand" LLVMGetOperand
) LLVMValueRef
614 (Index :unsigned-int
))
616 (wrap-defcfun ("LLVMConstNull" LLVMConstNull
) LLVMValueRef
619 (wrap-defcfun ("LLVMConstAllOnes" LLVMConstAllOnes
) LLVMValueRef
622 (wrap-defcfun ("LLVMGetUndef" LLVMGetUndef
) LLVMValueRef
625 (wrap-defcfun ("LLVMIsConstant" LLVMIsConstant
) :boolean
628 (wrap-defcfun ("LLVMIsNull" LLVMIsNull
) :boolean
631 (wrap-defcfun ("LLVMIsUndef" LLVMIsUndef
) :boolean
634 (wrap-defcfun ("LLVMConstPointerNull" LLVMConstPointerNull
) LLVMValueRef
637 (wrap-defcfun ("LLVMConstInt" LLVMConstInt
) LLVMValueRef
639 (N :unsigned-long-long
)
640 (SignExtend :boolean
))
642 (wrap-defcfun ("LLVMConstIntOfString" LLVMConstIntOfString
) LLVMValueRef
645 (Radix :unsigned-char
))
647 (wrap-defcfun ("LLVMConstIntOfStringAndSize" LLVMConstIntOfStringAndSize
) LLVMValueRef
651 (Radix :unsigned-char
))
653 (wrap-defcfun ("LLVMConstReal" LLVMConstReal
) LLVMValueRef
657 (wrap-defcfun ("LLVMConstRealOfString" LLVMConstRealOfString
) LLVMValueRef
661 (wrap-defcfun ("LLVMConstRealOfStringAndSize" LLVMConstRealOfStringAndSize
) LLVMValueRef
664 (SLen :unsigned-int
))
666 (wrap-defcfun ("LLVMConstIntGetZExtValue" LLVMConstIntGetZExtValue
) :unsigned-long-long
667 (ConstantVal LLVMValueRef
))
669 (wrap-defcfun ("LLVMConstIntGetSExtValue" LLVMConstIntGetSExtValue
) :long-long
670 (ConstantVal LLVMValueRef
))
672 (wrap-defcfun ("LLVMConstStringInContext" %LLVMConstStringInContext
) LLVMValueRef
675 (Length :unsigned-int
)
676 (DontNullTerminate :boolean
))
678 (wrap-defcfun ("LLVMConstStructInContext" %LLVMConstStructInContext
) LLVMValueRef
680 (ConstantVals :pointer
)
681 (Count :unsigned-int
)
684 (wrap-defcfun ("LLVMConstArray" %LLVMConstArray
) LLVMValueRef
685 (ElementTy LLVMTypeRef
)
686 (ConstantVals :pointer
)
687 (Length :unsigned-int
))
689 (wrap-defcfun ("LLVMConstVector" %LLVMConstVector
) LLVMValueRef
690 (ScalarConstantVals :pointer
)
691 (Size :unsigned-int
))
693 (wrap-defcfun ("LLVMGetConstOpcode" LLVMGetConstOpcode
) LLVMOpcode
694 (ConstantVal LLVMValueRef
))
696 (wrap-defcfun ("LLVMAlignOf" LLVMAlignOf
) LLVMValueRef
699 (wrap-defcfun ("LLVMSizeOf" LLVMSizeOf
) LLVMValueRef
702 (wrap-defcfun ("LLVMConstNeg" LLVMConstNeg
) LLVMValueRef
703 (ConstantVal LLVMValueRef
))
705 (wrap-defcfun ("LLVMConstFNeg" LLVMConstFNeg
) LLVMValueRef
706 (ConstantVal LLVMValueRef
))
708 (wrap-defcfun ("LLVMConstNot" LLVMConstNot
) LLVMValueRef
709 (ConstantVal LLVMValueRef
))
711 (wrap-defcfun ("LLVMConstAdd" LLVMConstAdd
) LLVMValueRef
712 (LHSConstant LLVMValueRef
)
713 (RHSConstant LLVMValueRef
))
715 (wrap-defcfun ("LLVMConstNSWAdd" LLVMConstNSWAdd
) LLVMValueRef
716 (LHSConstant LLVMValueRef
)
717 (RHSConstant LLVMValueRef
))
719 (wrap-defcfun ("LLVMConstFAdd" LLVMConstFAdd
) LLVMValueRef
720 (LHSConstant LLVMValueRef
)
721 (RHSConstant LLVMValueRef
))
723 (wrap-defcfun ("LLVMConstSub" LLVMConstSub
) LLVMValueRef
724 (LHSConstant LLVMValueRef
)
725 (RHSConstant LLVMValueRef
))
727 (wrap-defcfun ("LLVMConstFSub" LLVMConstFSub
) LLVMValueRef
728 (LHSConstant LLVMValueRef
)
729 (RHSConstant LLVMValueRef
))
731 (wrap-defcfun ("LLVMConstMul" LLVMConstMul
) LLVMValueRef
732 (LHSConstant LLVMValueRef
)
733 (RHSConstant LLVMValueRef
))
735 (wrap-defcfun ("LLVMConstFMul" LLVMConstFMul
) LLVMValueRef
736 (LHSConstant LLVMValueRef
)
737 (RHSConstant LLVMValueRef
))
739 (wrap-defcfun ("LLVMConstUDiv" LLVMConstUDiv
) LLVMValueRef
740 (LHSConstant LLVMValueRef
)
741 (RHSConstant LLVMValueRef
))
743 (wrap-defcfun ("LLVMConstSDiv" LLVMConstSDiv
) LLVMValueRef
744 (LHSConstant LLVMValueRef
)
745 (RHSConstant LLVMValueRef
))
747 (wrap-defcfun ("LLVMConstExactSDiv" LLVMConstExactSDiv
) LLVMValueRef
748 (LHSConstant LLVMValueRef
)
749 (RHSConstant LLVMValueRef
))
751 (wrap-defcfun ("LLVMConstFDiv" LLVMConstFDiv
) LLVMValueRef
752 (LHSConstant LLVMValueRef
)
753 (RHSConstant LLVMValueRef
))
755 (wrap-defcfun ("LLVMConstURem" LLVMConstURem
) LLVMValueRef
756 (LHSConstant LLVMValueRef
)
757 (RHSConstant LLVMValueRef
))
759 (wrap-defcfun ("LLVMConstSRem" LLVMConstSRem
) LLVMValueRef
760 (LHSConstant LLVMValueRef
)
761 (RHSConstant LLVMValueRef
))
763 (wrap-defcfun ("LLVMConstFRem" LLVMConstFRem
) LLVMValueRef
764 (LHSConstant LLVMValueRef
)
765 (RHSConstant LLVMValueRef
))
767 (wrap-defcfun ("LLVMConstAnd" LLVMConstAnd
) LLVMValueRef
768 (LHSConstant LLVMValueRef
)
769 (RHSConstant LLVMValueRef
))
771 (wrap-defcfun ("LLVMConstOr" LLVMConstOr
) LLVMValueRef
772 (LHSConstant LLVMValueRef
)
773 (RHSConstant LLVMValueRef
))
775 (wrap-defcfun ("LLVMConstXor" LLVMConstXor
) LLVMValueRef
776 (LHSConstant LLVMValueRef
)
777 (RHSConstant LLVMValueRef
))
779 (wrap-defcfun ("LLVMConstICmp" LLVMConstICmp
) LLVMValueRef
780 (Predicate LLVMIntPredicate
)
781 (LHSConstant LLVMValueRef
)
782 (RHSConstant LLVMValueRef
))
784 (wrap-defcfun ("LLVMConstFCmp" LLVMConstFCmp
) LLVMValueRef
785 (Predicate LLVMRealPredicate
)
786 (LHSConstant LLVMValueRef
)
787 (RHSConstant LLVMValueRef
))
789 (wrap-defcfun ("LLVMConstShl" LLVMConstShl
) LLVMValueRef
790 (LHSConstant LLVMValueRef
)
791 (RHSConstant LLVMValueRef
))
793 (wrap-defcfun ("LLVMConstLShr" LLVMConstLShr
) LLVMValueRef
794 (LHSConstant LLVMValueRef
)
795 (RHSConstant LLVMValueRef
))
797 (wrap-defcfun ("LLVMConstAShr" LLVMConstAShr
) LLVMValueRef
798 (LHSConstant LLVMValueRef
)
799 (RHSConstant LLVMValueRef
))
801 (wrap-defcfun ("LLVMConstGEP" %LLVMConstGEP
) LLVMValueRef
802 (ConstantVal LLVMValueRef
)
803 (ConstantIndices :pointer
)
804 (NumIndices :unsigned-int
))
806 (wrap-defcfun ("LLVMConstInBoundsGEP" %LLVMConstInBoundsGEP
) LLVMValueRef
807 (ConstantVal LLVMValueRef
)
808 (ConstantIndices :pointer
)
809 (NumIndices :unsigned-int
))
811 (wrap-defcfun ("LLVMConstTrunc" LLVMConstTrunc
) LLVMValueRef
812 (ConstantVal LLVMValueRef
)
813 (ToType LLVMTypeRef
))
815 (wrap-defcfun ("LLVMConstSExt" LLVMConstSExt
) LLVMValueRef
816 (ConstantVal LLVMValueRef
)
817 (ToType LLVMTypeRef
))
819 (wrap-defcfun ("LLVMConstZExt" LLVMConstZExt
) LLVMValueRef
820 (ConstantVal LLVMValueRef
)
821 (ToType LLVMTypeRef
))
823 (wrap-defcfun ("LLVMConstFPTrunc" LLVMConstFPTrunc
) LLVMValueRef
824 (ConstantVal LLVMValueRef
)
825 (ToType LLVMTypeRef
))
827 (wrap-defcfun ("LLVMConstFPExt" LLVMConstFPExt
) LLVMValueRef
828 (ConstantVal LLVMValueRef
)
829 (ToType LLVMTypeRef
))
831 (wrap-defcfun ("LLVMConstUIToFP" LLVMConstUIToFP
) LLVMValueRef
832 (ConstantVal LLVMValueRef
)
833 (ToType LLVMTypeRef
))
835 (wrap-defcfun ("LLVMConstSIToFP" LLVMConstSIToFP
) LLVMValueRef
836 (ConstantVal LLVMValueRef
)
837 (ToType LLVMTypeRef
))
839 (wrap-defcfun ("LLVMConstFPToUI" LLVMConstFPToUI
) LLVMValueRef
840 (ConstantVal LLVMValueRef
)
841 (ToType LLVMTypeRef
))
843 (wrap-defcfun ("LLVMConstFPToSI" LLVMConstFPToSI
) LLVMValueRef
844 (ConstantVal LLVMValueRef
)
845 (ToType LLVMTypeRef
))
847 (wrap-defcfun ("LLVMConstPtrToInt" LLVMConstPtrToInt
) LLVMValueRef
848 (ConstantVal LLVMValueRef
)
849 (ToType LLVMTypeRef
))
851 (wrap-defcfun ("LLVMConstIntToPtr" LLVMConstIntToPtr
) LLVMValueRef
852 (ConstantVal LLVMValueRef
)
853 (ToType LLVMTypeRef
))
855 (wrap-defcfun ("LLVMConstBitCast" LLVMConstBitCast
) LLVMValueRef
856 (ConstantVal LLVMValueRef
)
857 (ToType LLVMTypeRef
))
859 (wrap-defcfun ("LLVMConstZExtOrBitCast" LLVMConstZExtOrBitCast
) LLVMValueRef
860 (ConstantVal LLVMValueRef
)
861 (ToType LLVMTypeRef
))
863 (wrap-defcfun ("LLVMConstSExtOrBitCast" LLVMConstSExtOrBitCast
) LLVMValueRef
864 (ConstantVal LLVMValueRef
)
865 (ToType LLVMTypeRef
))
867 (wrap-defcfun ("LLVMConstTruncOrBitCast" LLVMConstTruncOrBitCast
) LLVMValueRef
868 (ConstantVal LLVMValueRef
)
869 (ToType LLVMTypeRef
))
871 (wrap-defcfun ("LLVMConstPointerCast" LLVMConstPointerCast
) LLVMValueRef
872 (ConstantVal LLVMValueRef
)
873 (ToType LLVMTypeRef
))
875 (wrap-defcfun ("LLVMConstIntCast" LLVMConstIntCast
) LLVMValueRef
876 (ConstantVal LLVMValueRef
)
880 (wrap-defcfun ("LLVMConstFPCast" LLVMConstFPCast
) LLVMValueRef
881 (ConstantVal LLVMValueRef
)
882 (ToType LLVMTypeRef
))
884 (wrap-defcfun ("LLVMConstSelect" LLVMConstSelect
) LLVMValueRef
885 (ConstantCondition LLVMValueRef
)
886 (ConstantIfTrue LLVMValueRef
)
887 (ConstantIfFalse LLVMValueRef
))
889 (wrap-defcfun ("LLVMConstExtractElement" LLVMConstExtractElement
) LLVMValueRef
890 (VectorConstant LLVMValueRef
)
891 (IndexConstant LLVMValueRef
))
893 (wrap-defcfun ("LLVMConstInsertElement" LLVMConstInsertElement
) LLVMValueRef
894 (VectorConstant LLVMValueRef
)
895 (ElementValueConstant LLVMValueRef
)
896 (IndexConstant LLVMValueRef
))
898 (wrap-defcfun ("LLVMConstShuffleVector" LLVMConstShuffleVector
) LLVMValueRef
899 (VectorAConstant LLVMValueRef
)
900 (VectorBConstant LLVMValueRef
)
901 (MaskConstant LLVMValueRef
))
903 (wrap-defcfun ("LLVMConstExtractValue" %LLVMConstExtractValue
) LLVMValueRef
904 (AggConstant LLVMValueRef
)
906 (NumIdx :unsigned-int
))
908 (wrap-defcfun ("LLVMConstInsertValue" %LLVMConstInsertValue
) LLVMValueRef
909 (AggConstant LLVMValueRef
)
910 (ElementValueConstant LLVMValueRef
)
912 (NumIdx :unsigned-int
))
914 (wrap-defcfun ("LLVMConstInlineAsm" LLVMConstInlineAsm
) LLVMValueRef
917 (Constraints :string
)
918 (HasSideEffects :boolean
)
919 (IsAlignStack :boolean
))
921 (wrap-defcfun ("LLVMGetGlobalParent" LLVMGetGlobalParent
) LLVMModuleRef
922 (Global LLVMValueRef
))
924 (wrap-defcfun ("LLVMIsDeclaration" LLVMIsDeclaration
) :boolean
925 (Global LLVMValueRef
))
927 (wrap-defcfun ("LLVMGetLinkage" LLVMGetLinkage
) LLVMLinkage
928 (Global LLVMValueRef
))
930 (wrap-defcfun ("LLVMSetLinkage" LLVMSetLinkage
) :void
931 (Global LLVMValueRef
)
932 (Linkage LLVMLinkage
))
934 (wrap-defcfun ("LLVMGetSection" LLVMGetSection
) :string
935 (Global LLVMValueRef
))
937 (wrap-defcfun ("LLVMSetSection" LLVMSetSection
) :void
938 (Global LLVMValueRef
)
941 (wrap-defcfun ("LLVMGetVisibility" LLVMGetVisibility
) LLVMVisibility
942 (Global LLVMValueRef
))
944 (wrap-defcfun ("LLVMSetVisibility" LLVMSetVisibility
) :void
945 (Global LLVMValueRef
)
946 (Viz LLVMVisibility
))
948 (wrap-defcfun ("LLVMGetAlignment" LLVMGetAlignment
) :unsigned-int
949 (Global LLVMValueRef
))
951 (wrap-defcfun ("LLVMSetAlignment" LLVMSetAlignment
) :void
952 (Global LLVMValueRef
)
953 (Bytes :unsigned-int
))
955 (wrap-defcfun ("LLVMAddGlobal" LLVMAddGlobal
) LLVMValueRef
960 (wrap-defcfun ("LLVMGetNamedGlobal" LLVMGetNamedGlobal
) LLVMValueRef
964 (wrap-defcfun ("LLVMGetFirstGlobal" LLVMGetFirstGlobal
) LLVMValueRef
967 (wrap-defcfun ("LLVMGetLastGlobal" LLVMGetLastGlobal
) LLVMValueRef
970 (wrap-defcfun ("LLVMGetNextGlobal" LLVMGetNextGlobal
) LLVMValueRef
971 (GlobalVar LLVMValueRef
))
973 (wrap-defcfun ("LLVMGetPreviousGlobal" LLVMGetPreviousGlobal
) LLVMValueRef
974 (GlobalVar LLVMValueRef
))
976 (wrap-defcfun ("LLVMDeleteGlobal" LLVMDeleteGlobal
) :void
977 (GlobalVar LLVMValueRef
))
979 (wrap-defcfun ("LLVMGetInitializer" LLVMGetInitializer
) LLVMValueRef
980 (GlobalVar LLVMValueRef
))
982 (wrap-defcfun ("LLVMSetInitializer" LLVMSetInitializer
) :void
983 (GlobalVar LLVMValueRef
)
984 (ConstantVal LLVMValueRef
))
986 (wrap-defcfun ("LLVMIsThreadLocal" LLVMIsThreadLocal
) :boolean
987 (GlobalVar LLVMValueRef
))
989 (wrap-defcfun ("LLVMSetThreadLocal" LLVMSetThreadLocal
) :void
990 (GlobalVar LLVMValueRef
)
991 (IsThreadLocal :boolean
))
993 (wrap-defcfun ("LLVMIsGlobalConstant" LLVMIsGlobalConstant
) :boolean
994 (GlobalVar LLVMValueRef
))
996 (wrap-defcfun ("LLVMSetGlobalConstant" LLVMSetGlobalConstant
) :void
997 (GlobalVar LLVMValueRef
)
998 (IsConstant :boolean
))
1000 (wrap-defcfun ("LLVMAddAlias" LLVMAddAlias
) LLVMValueRef
1003 (Aliasee LLVMValueRef
)
1006 (wrap-defcfun ("LLVMAddFunction" LLVMAddFunction
) LLVMValueRef
1009 (FunctionTy LLVMTypeRef
))
1011 (wrap-defcfun ("LLVMGetNamedFunction" LLVMGetNamedFunction
) LLVMValueRef
1015 (wrap-defcfun ("LLVMGetFirstFunction" LLVMGetFirstFunction
) LLVMValueRef
1018 (wrap-defcfun ("LLVMGetLastFunction" LLVMGetLastFunction
) LLVMValueRef
1021 (wrap-defcfun ("LLVMGetNextFunction" LLVMGetNextFunction
) LLVMValueRef
1024 (wrap-defcfun ("LLVMGetPreviousFunction" LLVMGetPreviousFunction
) LLVMValueRef
1027 (wrap-defcfun ("LLVMDeleteFunction" LLVMDeleteFunction
) :void
1030 (wrap-defcfun ("LLVMGetIntrinsicID" LLVMGetIntrinsicID
) :unsigned-int
1033 (wrap-defcfun ("LLVMGetFunctionCallConv" LLVMGetFunctionCallConv
) :unsigned-int
1036 (wrap-defcfun ("LLVMSetFunctionCallConv" LLVMSetFunctionCallConv
) :void
1040 (wrap-defcfun ("LLVMGetGC" LLVMGetGC
) :string
1043 (wrap-defcfun ("LLVMSetGC" LLVMSetGC
) :void
1047 (wrap-defcfun ("LLVMGetFunctionAttr" LLVMGetFunctionAttr
) LLVMAttribute
1050 (wrap-defcfun ("LLVMCountParams" LLVMCountParams
) :unsigned-int
1053 (wrap-defcfun ("LLVMGetParams" %LLVMGetParams
) :void
1057 (wrap-defcfun ("LLVMGetParam" LLVMGetParam
) LLVMValueRef
1059 (Index :unsigned-int
))
1061 (wrap-defcfun ("LLVMGetParamParent" LLVMGetParamParent
) LLVMValueRef
1062 (Inst LLVMValueRef
))
1064 (wrap-defcfun ("LLVMGetFirstParam" LLVMGetFirstParam
) LLVMValueRef
1067 (wrap-defcfun ("LLVMGetLastParam" LLVMGetLastParam
) LLVMValueRef
1070 (wrap-defcfun ("LLVMGetNextParam" LLVMGetNextParam
) LLVMValueRef
1073 (wrap-defcfun ("LLVMGetPreviousParam" LLVMGetPreviousParam
) LLVMValueRef
1076 (wrap-defcfun ("LLVMAddAttribute" LLVMAddAttribute
) :void
1080 (wrap-defcfun ("LLVMRemoveAttribute" LLVMRemoveAttribute
) :void
1084 (wrap-defcfun ("LLVMGetAttribute" LLVMGetAttribute
) LLVMAttribute
1087 (wrap-defcfun ("LLVMSetParamAlignment" LLVMSetParamAlignment
) :void
1089 (align :unsigned-int
))
1091 (wrap-defcfun ("LLVMBasicBlockAsValue" LLVMBasicBlockAsValue
) LLVMValueRef
1092 (BB LLVMBasicBlockRef
))
1094 (wrap-defcfun ("LLVMValueIsBasicBlock" LLVMValueIsBasicBlock
) :boolean
1097 (wrap-defcfun ("LLVMValueAsBasicBlock" LLVMValueAsBasicBlock
) LLVMBasicBlockRef
1100 (wrap-defcfun ("LLVMGetBasicBlockParent" LLVMGetBasicBlockParent
) LLVMValueRef
1101 (BB LLVMBasicBlockRef
))
1103 (wrap-defcfun ("LLVMCountBasicBlocks" LLVMCountBasicBlocks
) :unsigned-int
1106 (wrap-defcfun ("LLVMGetBasicBlocks" LLVMGetBasicBlocks
) :void
1108 (BasicBlocks :pointer
))
1110 (wrap-defcfun ("LLVMGetFirstBasicBlock" LLVMGetFirstBasicBlock
) LLVMBasicBlockRef
1113 (wrap-defcfun ("LLVMGetLastBasicBlock" LLVMGetLastBasicBlock
) LLVMBasicBlockRef
1116 (wrap-defcfun ("LLVMGetNextBasicBlock" LLVMGetNextBasicBlock
) LLVMBasicBlockRef
1117 (BB LLVMBasicBlockRef
))
1119 (wrap-defcfun ("LLVMGetPreviousBasicBlock" LLVMGetPreviousBasicBlock
) LLVMBasicBlockRef
1120 (BB LLVMBasicBlockRef
))
1122 (wrap-defcfun ("LLVMGetEntryBasicBlock" LLVMGetEntryBasicBlock
) LLVMBasicBlockRef
1125 (wrap-defcfun ("LLVMAppendBasicBlockInContext" %LLVMAppendBasicBlockInContext
) LLVMBasicBlockRef
1130 (wrap-defcfun ("LLVMInsertBasicBlockInContext" %LLVMInsertBasicBlockInContext
) LLVMBasicBlockRef
1132 (BB LLVMBasicBlockRef
)
1135 (wrap-defcfun ("LLVMDeleteBasicBlock" LLVMDeleteBasicBlock
) :void
1136 (BB LLVMBasicBlockRef
))
1138 (wrap-defcfun ("LLVMGetInstructionParent" LLVMGetInstructionParent
) LLVMBasicBlockRef
1139 (Inst LLVMValueRef
))
1141 (wrap-defcfun ("LLVMGetFirstInstruction" LLVMGetFirstInstruction
) LLVMValueRef
1142 (BB LLVMBasicBlockRef
))
1144 (wrap-defcfun ("LLVMGetLastInstruction" LLVMGetLastInstruction
) LLVMValueRef
1145 (BB LLVMBasicBlockRef
))
1147 (wrap-defcfun ("LLVMGetNextInstruction" LLVMGetNextInstruction
) LLVMValueRef
1148 (Inst LLVMValueRef
))
1150 (wrap-defcfun ("LLVMGetPreviousInstruction" LLVMGetPreviousInstruction
) LLVMValueRef
1151 (Inst LLVMValueRef
))
1153 (wrap-defcfun ("LLVMSetInstructionCallConv" LLVMSetInstructionCallConv
) :void
1154 (Instr LLVMValueRef
)
1157 (wrap-defcfun ("LLVMGetInstructionCallConv" LLVMGetInstructionCallConv
) :unsigned-int
1158 (Instr LLVMValueRef
))
1160 (wrap-defcfun ("LLVMAddInstrAttribute" LLVMAddInstrAttribute
) :void
1161 (Instr LLVMValueRef
)
1162 (index :unsigned-int
)
1163 (arg2 LLVMAttribute
))
1165 (wrap-defcfun ("LLVMRemoveInstrAttribute" LLVMRemoveInstrAttribute
) :void
1166 (Instr LLVMValueRef
)
1167 (index :unsigned-int
)
1168 (arg2 LLVMAttribute
))
1170 (wrap-defcfun ("LLVMSetInstrParamAlignment" LLVMSetInstrParamAlignment
) :void
1171 (Instr LLVMValueRef
)
1172 (index :unsigned-int
)
1173 (align :unsigned-int
))
1175 (wrap-defcfun ("LLVMIsTailCall" LLVMIsTailCall
) :boolean
1176 (CallInst LLVMValueRef
))
1178 (wrap-defcfun ("LLVMSetTailCall" LLVMSetTailCall
) :void
1179 (CallInst LLVMValueRef
)
1180 (IsTailCall :boolean
))
1182 (wrap-defcfun ("LLVMAddIncoming" %LLVMAddIncoming
) :void
1183 (PhiNode LLVMValueRef
)
1184 (IncomingValues :pointer
)
1185 (IncomingBlocks :pointer
)
1186 (Count :unsigned-int
))
1188 (wrap-defcfun ("LLVMCountIncoming" LLVMCountIncoming
) :unsigned-int
1189 (PhiNode LLVMValueRef
))
1191 (wrap-defcfun ("LLVMGetIncomingValue" LLVMGetIncomingValue
) LLVMValueRef
1192 (PhiNode LLVMValueRef
)
1193 (Index :unsigned-int
))
1195 (wrap-defcfun ("LLVMGetIncomingBlock" LLVMGetIncomingBlock
) LLVMBasicBlockRef
1196 (PhiNode LLVMValueRef
)
1197 (Index :unsigned-int
))
1199 (wrap-defcfun ("LLVMCreateBuilderInContext" %LLVMCreateBuilderInContext
) LLVMBuilderRef
1202 (wrap-defcfun ("LLVMPositionBuilder" LLVMPositionBuilder
) :void
1203 (Builder LLVMBuilderRef
)
1204 (Block LLVMBasicBlockRef
)
1205 (Instr LLVMValueRef
))
1207 (wrap-defcfun ("LLVMPositionBuilderBefore" LLVMPositionBuilderBefore
) :void
1208 (Builder LLVMBuilderRef
)
1209 (Instr LLVMValueRef
))
1211 (wrap-defcfun ("LLVMPositionBuilderAtEnd" LLVMPositionBuilderAtEnd
) :void
1212 (Builder LLVMBuilderRef
)
1213 (Block LLVMBasicBlockRef
))
1215 (wrap-defcfun ("LLVMGetInsertBlock" LLVMGetInsertBlock
) LLVMBasicBlockRef
1216 (Builder LLVMBuilderRef
))
1218 (wrap-defcfun ("LLVMClearInsertionPosition" LLVMClearInsertionPosition
) :void
1219 (Builder LLVMBuilderRef
))
1221 (wrap-defcfun ("LLVMInsertIntoBuilder" LLVMInsertIntoBuilder
) :void
1222 (Builder LLVMBuilderRef
)
1223 (Instr LLVMValueRef
))
1225 (wrap-defcfun ("LLVMInsertIntoBuilderWithName" LLVMInsertIntoBuilderWithName
) :void
1226 (Builder LLVMBuilderRef
)
1227 (Instr LLVMValueRef
)
1230 (wrap-defcfun ("LLVMDisposeBuilder" LLVMDisposeBuilder
) :void
1231 (Builder LLVMBuilderRef
))
1233 (wrap-defcfun ("LLVMBuildRetVoid" LLVMBuildRetVoid
) LLVMValueRef
1234 (arg0 LLVMBuilderRef
))
1236 (wrap-defcfun ("LLVMBuildRet" LLVMBuildRet
) LLVMValueRef
1237 (arg0 LLVMBuilderRef
)
1240 (wrap-defcfun ("LLVMBuildAggregateRet" %LLVMBuildAggregateRet
) LLVMValueRef
1241 (arg0 LLVMBuilderRef
)
1245 (wrap-defcfun ("LLVMBuildBr" LLVMBuildBr
) LLVMValueRef
1246 (arg0 LLVMBuilderRef
)
1247 (Dest LLVMBasicBlockRef
))
1249 (wrap-defcfun ("LLVMBuildCondBr" LLVMBuildCondBr
) LLVMValueRef
1250 (arg0 LLVMBuilderRef
)
1252 (Then LLVMBasicBlockRef
)
1253 (Else LLVMBasicBlockRef
))
1255 (wrap-defcfun ("LLVMBuildSwitch" LLVMBuildSwitch
) LLVMValueRef
1256 (arg0 LLVMBuilderRef
)
1258 (Else LLVMBasicBlockRef
)
1259 (NumCases :unsigned-int
))
1261 (wrap-defcfun ("LLVMBuildInvoke" %LLVMBuildInvoke
) LLVMValueRef
1262 (arg0 LLVMBuilderRef
)
1265 (NumArgs :unsigned-int
)
1266 (Then LLVMBasicBlockRef
)
1267 (Catch LLVMBasicBlockRef
)
1270 (wrap-defcfun ("LLVMBuildUnwind" LLVMBuildUnwind
) LLVMValueRef
1271 (arg0 LLVMBuilderRef
))
1273 (wrap-defcfun ("LLVMBuildUnreachable" LLVMBuildUnreachable
) LLVMValueRef
1274 (arg0 LLVMBuilderRef
))
1276 (wrap-defcfun ("LLVMAddCase" LLVMAddCase
) :void
1277 (Switch LLVMValueRef
)
1278 (OnVal LLVMValueRef
)
1279 (Dest LLVMBasicBlockRef
))
1281 (wrap-defcfun ("LLVMBuildAdd" LLVMBuildAdd
) LLVMValueRef
1282 (arg0 LLVMBuilderRef
)
1287 (wrap-defcfun ("LLVMBuildNSWAdd" LLVMBuildNSWAdd
) LLVMValueRef
1288 (arg0 LLVMBuilderRef
)
1293 (wrap-defcfun ("LLVMBuildFAdd" LLVMBuildFAdd
) LLVMValueRef
1294 (arg0 LLVMBuilderRef
)
1299 (wrap-defcfun ("LLVMBuildSub" LLVMBuildSub
) LLVMValueRef
1300 (arg0 LLVMBuilderRef
)
1305 (wrap-defcfun ("LLVMBuildFSub" LLVMBuildFSub
) LLVMValueRef
1306 (arg0 LLVMBuilderRef
)
1311 (wrap-defcfun ("LLVMBuildMul" LLVMBuildMul
) LLVMValueRef
1312 (arg0 LLVMBuilderRef
)
1317 (wrap-defcfun ("LLVMBuildFMul" LLVMBuildFMul
) LLVMValueRef
1318 (arg0 LLVMBuilderRef
)
1323 (wrap-defcfun ("LLVMBuildUDiv" LLVMBuildUDiv
) LLVMValueRef
1324 (arg0 LLVMBuilderRef
)
1329 (wrap-defcfun ("LLVMBuildSDiv" LLVMBuildSDiv
) LLVMValueRef
1330 (arg0 LLVMBuilderRef
)
1335 (wrap-defcfun ("LLVMBuildExactSDiv" LLVMBuildExactSDiv
) LLVMValueRef
1336 (arg0 LLVMBuilderRef
)
1341 (wrap-defcfun ("LLVMBuildFDiv" LLVMBuildFDiv
) LLVMValueRef
1342 (arg0 LLVMBuilderRef
)
1347 (wrap-defcfun ("LLVMBuildURem" LLVMBuildURem
) LLVMValueRef
1348 (arg0 LLVMBuilderRef
)
1353 (wrap-defcfun ("LLVMBuildSRem" LLVMBuildSRem
) LLVMValueRef
1354 (arg0 LLVMBuilderRef
)
1359 (wrap-defcfun ("LLVMBuildFRem" LLVMBuildFRem
) LLVMValueRef
1360 (arg0 LLVMBuilderRef
)
1365 (wrap-defcfun ("LLVMBuildShl" LLVMBuildShl
) LLVMValueRef
1366 (arg0 LLVMBuilderRef
)
1371 (wrap-defcfun ("LLVMBuildLShr" LLVMBuildLShr
) LLVMValueRef
1372 (arg0 LLVMBuilderRef
)
1377 (wrap-defcfun ("LLVMBuildAShr" LLVMBuildAShr
) LLVMValueRef
1378 (arg0 LLVMBuilderRef
)
1383 (wrap-defcfun ("LLVMBuildAnd" LLVMBuildAnd
) LLVMValueRef
1384 (arg0 LLVMBuilderRef
)
1389 (wrap-defcfun ("LLVMBuildOr" LLVMBuildOr
) LLVMValueRef
1390 (arg0 LLVMBuilderRef
)
1395 (wrap-defcfun ("LLVMBuildXor" LLVMBuildXor
) LLVMValueRef
1396 (arg0 LLVMBuilderRef
)
1401 (wrap-defcfun ("LLVMBuildNeg" LLVMBuildNeg
) LLVMValueRef
1402 (arg0 LLVMBuilderRef
)
1406 (wrap-defcfun ("LLVMBuildFNeg" LLVMBuildFNeg
) LLVMValueRef
1407 (arg0 LLVMBuilderRef
)
1411 (wrap-defcfun ("LLVMBuildNot" LLVMBuildNot
) LLVMValueRef
1412 (arg0 LLVMBuilderRef
)
1416 (wrap-defcfun ("LLVMBuildMalloc" LLVMBuildMalloc
) LLVMValueRef
1417 (arg0 LLVMBuilderRef
)
1421 (wrap-defcfun ("LLVMBuildArrayMalloc" LLVMBuildArrayMalloc
) LLVMValueRef
1422 (arg0 LLVMBuilderRef
)
1427 (wrap-defcfun ("LLVMBuildAlloca" LLVMBuildAlloca
) LLVMValueRef
1428 (arg0 LLVMBuilderRef
)
1432 (wrap-defcfun ("LLVMBuildArrayAlloca" LLVMBuildArrayAlloca
) LLVMValueRef
1433 (arg0 LLVMBuilderRef
)
1438 (wrap-defcfun ("LLVMBuildFree" LLVMBuildFree
) LLVMValueRef
1439 (arg0 LLVMBuilderRef
)
1440 (PointerVal LLVMValueRef
))
1442 (wrap-defcfun ("LLVMBuildLoad" LLVMBuildLoad
) LLVMValueRef
1443 (arg0 LLVMBuilderRef
)
1444 (PointerVal LLVMValueRef
)
1447 (wrap-defcfun ("LLVMBuildStore" LLVMBuildStore
) LLVMValueRef
1448 (arg0 LLVMBuilderRef
)
1452 (wrap-defcfun ("LLVMBuildGEP" %LLVMBuildGEP
) LLVMValueRef
1454 (Pointer LLVMValueRef
)
1456 (NumIndices :unsigned-int
)
1459 (wrap-defcfun ("LLVMBuildInBoundsGEP" %LLVMBuildInBoundsGEP
) LLVMValueRef
1461 (Pointer LLVMValueRef
)
1463 (NumIndices :unsigned-int
)
1466 (wrap-defcfun ("LLVMBuildStructGEP" LLVMBuildStructGEP
) LLVMValueRef
1468 (Pointer LLVMValueRef
)
1472 (wrap-defcfun ("LLVMBuildGlobalString" LLVMBuildGlobalString
) LLVMValueRef
1477 (wrap-defcfun ("LLVMBuildGlobalStringPtr" LLVMBuildGlobalStringPtr
) LLVMValueRef
1482 (wrap-defcfun ("LLVMBuildTrunc" LLVMBuildTrunc
) LLVMValueRef
1483 (arg0 LLVMBuilderRef
)
1485 (DestTy LLVMTypeRef
)
1488 (wrap-defcfun ("LLVMBuildZExt" LLVMBuildZExt
) LLVMValueRef
1489 (arg0 LLVMBuilderRef
)
1491 (DestTy LLVMTypeRef
)
1494 (wrap-defcfun ("LLVMBuildSExt" LLVMBuildSExt
) LLVMValueRef
1495 (arg0 LLVMBuilderRef
)
1497 (DestTy LLVMTypeRef
)
1500 (wrap-defcfun ("LLVMBuildFPToUI" LLVMBuildFPToUI
) LLVMValueRef
1501 (arg0 LLVMBuilderRef
)
1503 (DestTy LLVMTypeRef
)
1506 (wrap-defcfun ("LLVMBuildFPToSI" LLVMBuildFPToSI
) LLVMValueRef
1507 (arg0 LLVMBuilderRef
)
1509 (DestTy LLVMTypeRef
)
1512 (wrap-defcfun ("LLVMBuildUIToFP" LLVMBuildUIToFP
) LLVMValueRef
1513 (arg0 LLVMBuilderRef
)
1515 (DestTy LLVMTypeRef
)
1518 (wrap-defcfun ("LLVMBuildSIToFP" LLVMBuildSIToFP
) LLVMValueRef
1519 (arg0 LLVMBuilderRef
)
1521 (DestTy LLVMTypeRef
)
1524 (wrap-defcfun ("LLVMBuildFPTrunc" LLVMBuildFPTrunc
) LLVMValueRef
1525 (arg0 LLVMBuilderRef
)
1527 (DestTy LLVMTypeRef
)
1530 (wrap-defcfun ("LLVMBuildFPExt" LLVMBuildFPExt
) LLVMValueRef
1531 (arg0 LLVMBuilderRef
)
1533 (DestTy LLVMTypeRef
)
1536 (wrap-defcfun ("LLVMBuildPtrToInt" LLVMBuildPtrToInt
) LLVMValueRef
1537 (arg0 LLVMBuilderRef
)
1539 (DestTy LLVMTypeRef
)
1542 (wrap-defcfun ("LLVMBuildIntToPtr" LLVMBuildIntToPtr
) LLVMValueRef
1543 (arg0 LLVMBuilderRef
)
1545 (DestTy LLVMTypeRef
)
1548 (wrap-defcfun ("LLVMBuildBitCast" LLVMBuildBitCast
) LLVMValueRef
1549 (arg0 LLVMBuilderRef
)
1551 (DestTy LLVMTypeRef
)
1554 (wrap-defcfun ("LLVMBuildZExtOrBitCast" LLVMBuildZExtOrBitCast
) LLVMValueRef
1555 (arg0 LLVMBuilderRef
)
1557 (DestTy LLVMTypeRef
)
1560 (wrap-defcfun ("LLVMBuildSExtOrBitCast" LLVMBuildSExtOrBitCast
) LLVMValueRef
1561 (arg0 LLVMBuilderRef
)
1563 (DestTy LLVMTypeRef
)
1566 (wrap-defcfun ("LLVMBuildTruncOrBitCast" LLVMBuildTruncOrBitCast
) LLVMValueRef
1567 (arg0 LLVMBuilderRef
)
1569 (DestTy LLVMTypeRef
)
1572 (wrap-defcfun ("LLVMBuildPointerCast" LLVMBuildPointerCast
) LLVMValueRef
1573 (arg0 LLVMBuilderRef
)
1575 (DestTy LLVMTypeRef
)
1578 (wrap-defcfun ("LLVMBuildIntCast" LLVMBuildIntCast
) LLVMValueRef
1579 (arg0 LLVMBuilderRef
)
1581 (DestTy LLVMTypeRef
)
1584 (wrap-defcfun ("LLVMBuildFPCast" LLVMBuildFPCast
) LLVMValueRef
1585 (arg0 LLVMBuilderRef
)
1587 (DestTy LLVMTypeRef
)
1590 (wrap-defcfun ("LLVMBuildICmp" LLVMBuildICmp
) LLVMValueRef
1591 (arg0 LLVMBuilderRef
)
1592 (Op LLVMIntPredicate
)
1597 (wrap-defcfun ("LLVMBuildFCmp" LLVMBuildFCmp
) LLVMValueRef
1598 (arg0 LLVMBuilderRef
)
1599 (Op LLVMRealPredicate
)
1604 (wrap-defcfun ("LLVMBuildPhi" LLVMBuildPhi
) LLVMValueRef
1605 (arg0 LLVMBuilderRef
)
1609 (wrap-defcfun ("LLVMBuildCall" %LLVMBuildCall
) LLVMValueRef
1610 (arg0 LLVMBuilderRef
)
1613 (NumArgs :unsigned-int
)
1616 (wrap-defcfun ("LLVMBuildSelect" LLVMBuildSelect
) LLVMValueRef
1617 (arg0 LLVMBuilderRef
)
1623 (wrap-defcfun ("LLVMBuildVAArg" LLVMBuildVAArg
) LLVMValueRef
1624 (arg0 LLVMBuilderRef
)
1629 (wrap-defcfun ("LLVMBuildExtractElement" LLVMBuildExtractElement
) LLVMValueRef
1630 (arg0 LLVMBuilderRef
)
1631 (VecVal LLVMValueRef
)
1632 (Index LLVMValueRef
)
1635 (wrap-defcfun ("LLVMBuildInsertElement" LLVMBuildInsertElement
) LLVMValueRef
1636 (arg0 LLVMBuilderRef
)
1637 (VecVal LLVMValueRef
)
1638 (EltVal LLVMValueRef
)
1639 (Index LLVMValueRef
)
1642 (wrap-defcfun ("LLVMBuildShuffleVector" LLVMBuildShuffleVector
) LLVMValueRef
1643 (arg0 LLVMBuilderRef
)
1649 (wrap-defcfun ("LLVMBuildExtractValue" LLVMBuildExtractValue
) LLVMValueRef
1650 (arg0 LLVMBuilderRef
)
1651 (AggVal LLVMValueRef
)
1652 (Index :unsigned-int
)
1655 (wrap-defcfun ("LLVMBuildInsertValue" LLVMBuildInsertValue
) LLVMValueRef
1656 (arg0 LLVMBuilderRef
)
1657 (AggVal LLVMValueRef
)
1658 (EltVal LLVMValueRef
)
1659 (Index :unsigned-int
)
1662 (wrap-defcfun ("LLVMBuildIsNull" LLVMBuildIsNull
) LLVMValueRef
1663 (arg0 LLVMBuilderRef
)
1667 (wrap-defcfun ("LLVMBuildIsNotNull" LLVMBuildIsNotNull
) LLVMValueRef
1668 (arg0 LLVMBuilderRef
)
1672 (wrap-defcfun ("LLVMBuildPtrDiff" LLVMBuildPtrDiff
) LLVMValueRef
1673 (arg0 LLVMBuilderRef
)
1678 (wrap-defcfun ("LLVMCreateModuleProviderForExistingModule" LLVMCreateModuleProviderForExistingModule
) LLVMModuleProviderRef
1681 (wrap-defcfun ("LLVMDisposeModuleProvider" LLVMDisposeModuleProvider
) :void
1682 (MP LLVMModuleProviderRef
))
1684 (wrap-defcfun ("LLVMCreateMemoryBufferWithContentsOfFile" LLVMCreateMemoryBufferWithContentsOfFile
) :boolean
1686 (OutMemBuf :pointer
)
1687 (OutMessage :pointer
))
1689 (wrap-defcfun ("LLVMCreateMemoryBufferWithSTDIN" LLVMCreateMemoryBufferWithSTDIN
) :boolean
1690 (OutMemBuf :pointer
)
1691 (OutMessage :pointer
))
1693 (wrap-defcfun ("LLVMDisposeMemoryBuffer" LLVMDisposeMemoryBuffer
) :void
1694 (MemBuf LLVMMemoryBufferRef
))
1696 (wrap-defcfun ("LLVMCreatePassManager" LLVMCreatePassManager
) LLVMPassManagerRef
)
1698 (wrap-defcfun ("LLVMCreateFunctionPassManager" LLVMCreateFunctionPassManager
) LLVMPassManagerRef
1699 (MP LLVMModuleProviderRef
))
1701 (wrap-defcfun ("LLVMRunPassManager" LLVMRunPassManager
) :boolean
1702 (PM LLVMPassManagerRef
)
1705 (wrap-defcfun ("LLVMInitializeFunctionPassManager" LLVMInitializeFunctionPassManager
) :boolean
1706 (FPM LLVMPassManagerRef
))
1708 (wrap-defcfun ("LLVMRunFunctionPassManager" LLVMRunFunctionPassManager
) :boolean
1709 (FPM LLVMPassManagerRef
)
1712 (wrap-defcfun ("LLVMFinalizeFunctionPassManager" LLVMFinalizeFunctionPassManager
) :boolean
1713 (FPM LLVMPassManagerRef
))
1715 (wrap-defcfun ("LLVMDisposePassManager" LLVMDisposePassManager
) :void
1716 (PM LLVMPassManagerRef
))
1718 ;;; The wrappers to expose the "InContext" versions of the functions
1719 ;;; in a more lispy way.
1720 (declaim (special *llvm-context
*))
1722 (defun LLVMModuleCreateWithName (ModuleId &optional
(context *llvm-context
*))
1723 (%LLVMModuleCreateWithNameInContext ModuleId context
))
1725 (defun LLVMInt1Type (&optional
(context *llvm-context
*))
1726 (%LLVMInt1TypeInContext context
))
1728 (defun LLVMInt8Type (&optional
(context *llvm-context
*))
1729 (%LLVMInt8TypeInContext context
))
1731 (defun LLVMInt16Type (&optional
(context *llvm-context
*))
1732 (%LLVMInt16TypeInContext context
))
1734 (defun LLVMInt32Type (&optional
(context *llvm-context
*))
1735 (%LLVMInt32TypeInContext context
))
1737 (defun LLVMInt64Type (&optional
(context *llvm-context
*))
1738 (%LLVMInt64TypeInContext context
))
1740 (defun LLVMIntType (NumBits &optional
(context *llvm-context
*))
1741 (%LLVMIntTypeInContext context NumBits
))
1743 (defun LLVMFloatType (&optional
(context *llvm-context
*))
1744 (%LLVMFloatTypeInContext context
))
1746 (defun LLVMDoubleType (&optional
(context *llvm-context
*))
1747 (%LLVMDoubleTypeInContext context
))
1749 (defun LLVMX86FP80Type (&optional
(context *llvm-context
*))
1750 (%LLVMX86FP80TypeInContext context
))
1752 (defun LLVMFP128Type (&optional
(context *llvm-context
*))
1753 (%LLVMFP128TypeInContext context
))
1755 (defun LLVMPPCFP128Type (&optional
(context *llvm-context
*))
1756 (%LLVMPPCFP128TypeInContext context
))
1758 ;; LLVMStructTypeInContext handled below.
1760 (defun LLVMVoidType (&optional
(context *llvm-context
*))
1761 (%LLVMVoidTypeInContext context
))
1763 (defun LLVMLabelType (&optional
(context *llvm-context
*))
1764 (%LLVMLabelTypeInContext context
))
1766 (defun LLVMOpaqueType (&optional
(context *llvm-context
*))
1767 (%LLVMOpaqueTypeInContext context
))
1769 ;; LLVMConstStringInContext handled below
1770 ;; LLVMConstStructInContext handled below
1772 (defun LLVMAppendBasicBlock (Fn Name
&optional
(context *llvm-context
*))
1773 (%LLVMAppendBasicBlockInContext context Fn Name
))
1775 (defun LLVMInsertBasicBlock (BB Name
&optional
(context *llvm-context
*))
1776 (%LLVMInsertBasicBlockInContext context BB Name
))
1778 (defun LLVMCreateBuilder (&optional
(context *llvm-context
*))
1779 (%LLVMCreateBuilderInContext context
))
1782 ;; More complex wrappers for dealing with pointers.
1784 (defmacro with-array-and-length
((array len list
) &body body
)
1785 (let ((list-v (gensym "list")))
1786 `(let* ((,list-v
,list
)
1787 (,len
(length ,list-v
)))
1788 (cffi:with-foreign-object
(,array
:pointer
,len
)
1789 (loop for l in
,list-v
1792 (setf (cffi:mem-aref
,array
:pointer i
) l
))
1795 (defun LLVMFunctionType (ret params is-var-arg
)
1796 "Combines the C API's ParamTypes array and ParamCount arguments into
1797 a single list PARAMS."
1798 (with-array-and-length (array len params
)
1799 (%LLVMFunctionType ret array len is-var-arg
)))
1801 (defun LLVMGetParamTypes (function-type)
1802 "Returns a list of param types rather than filling out a Dest pointer argument"
1803 (let ((len (LLVMCountParamTypes function-type
)))
1804 (cffi:with-foreign-object
(array :pointer len
)
1805 (%LLVMGetParamTypes function-type array
)
1806 (loop for i from
0 below len
1808 (cffi:mem-aref array
:pointer i
)))))
1810 (defun LLVMStructType (element-types is-packed
&optional
(context *llvm-context
*))
1811 (with-array-and-length (array len element-types
)
1812 (%LLVMStructTypeInContext context array len is-packed
)))
1814 (defun LLVMGetStructElementTypes (struct-type)
1815 "Returns a list of param types rather than filling out a Dest pointer argument"
1816 (let ((len (LLVMCountStructElementTypes struct-type
)))
1817 (cffi:with-foreign-object
(array :pointer len
)
1818 (%LLVMGetStructElementTypes struct-type array
)
1819 (loop for i from
0 below len
1821 (cffi:mem-aref array
:pointer i
)))))
1823 (defun LLVMConstString (str dont-null-terminate
&optional
(context *llvm-context
*))
1824 (cffi:with-foreign-string
((foreign-string num-bytes
) str
)
1825 (%LLVMConstStringInContext context foreign-string num-bytes dont-null-terminate
)))
1827 (defun LLVMConstStruct (vals packed-p
&optional
(context *llvm-context
*))
1828 (with-array-and-length (array len vals
)
1829 (%LLVMConstStructInContext context array len packed-p
)))
1831 (defun LLVMConstArray (type vals
)
1832 (with-array-and-length (array len vals
)
1833 (%LLVMConstArray type array len
)))
1835 (defun LLVMConstVector (vals)
1836 (with-array-and-length (array len vals
)
1837 (%LLVMConstVector array len
)))
1839 (defun LLVMConstGEP (ptr indices
)
1840 (with-array-and-length (array len indices
)
1841 (%LLVMConstGEP ptr array len
)))
1843 (defun LLVMConstInBoundsGEP (ptr indices
)
1844 (with-array-and-length (array len indices
)
1845 (%LLVMConstInBoundsGEP ptr array len
)))
1847 (defun LLVMConstExtractValue (AggConstant indices
)
1848 (with-array-and-length (array len indices
)
1849 (%LLVMConstExtractValue AggConstant array len
)))
1851 (defun LLVMConstInsertValue (AggConstant ValConstant indices
)
1852 (with-array-and-length (array len indices
)
1853 (%LLVMConstInsertValue AggConstant ValConstant array len
)))
1855 (defun LLVMGetParams (fn)
1856 "Returns a list of params rather than filling out a Dest pointer argument."
1857 (let ((len (LLVMCountParams fn
)))
1858 (cffi:with-foreign-object
(array :pointer len
)
1859 (%LLVMGetParams fn array
)
1860 (loop for i from
0 below len
1862 (cffi:mem-aref array
:pointer i
)))))
1864 (defun LLVMAddIncoming (phi-node incoming-val incoming-block
)
1865 "Unlike the C API (but like the C++ API...), takes only a single
1866 incoming val and incoming block. Call multiple times if you want to
1867 add multiple incoming values."
1868 (cffi:with-foreign-objects
((incoming-vals :pointer
)
1869 (incoming-blocks :pointer
))
1870 (setf (cffi:mem-aref incoming-vals
:pointer
0) incoming-val
)
1871 (setf (cffi:mem-aref incoming-blocks
:pointer
0) incoming-block
)
1872 (%LLVMAddIncoming phi-node incoming-vals incoming-blocks
1)))
1874 (defun LLVMBuildAggregateRet (builder vals
)
1875 (with-array-and-length (array len vals
)
1876 (%LLVMBuildAggregateRet builder array len
)))
1878 (defun LLVMBuildInvoke (builder fn args then catch
&optional
(name ""))
1879 (with-array-and-length (array len args
)
1880 (%LLVMBuildInvoke builder fn array len then catch name
)))
1882 (defun LLVMBuildGEP (builder ptr indices
&optional
(name ""))
1883 (with-array-and-length (array len indices
)
1884 (%LLVMBuildGEP builder ptr array len name
)))
1886 (defun LLVMBuildInBoundsGEP (builder ptr indices
&optional
(name ""))
1887 (with-array-and-length (array len indices
)
1888 (%LLVMBuildInBoundsGEP builder ptr array len name
)))
1890 (defun LLVMBuildCall (builder fn args
&optional
(name ""))
1891 "Combines the C API's Args array and NumArgs arguments into a single
1893 (with-array-and-length (array len args
)
1894 (%LLVMBuildCall builder fn array len name
)))
1897 ;; LLVMCreateMemoryBufferWithContentsOfFile has OutMemBuf, OutMessage
1898 ;; LLVMCreateMemoryBufferWithSTDIN has OutMemBuf, OutMessage