LLVM C API Extensions: Fixed DIBuilerCreateFunction() and DIBuilderCreateSubroutineType() for LLVM 3.9
In LLVM 3.9 some parameters to these functions were dropped. The DIBuilder interface
has been changed to reflect these changes (i.e., C functions no longer require dropped
argument). The LLVM C Extensions library can still be compiled against LLVM 3.8
(via #ifdef), but the API will be different. Also, the Smalltallks bindings will
make use of LLVM 3.9 interface. That said, LLVM C API Extensions library may still
be used by *other* projects on top of LLVM 3.8, though Smalltalk bindings require
LLVM 3.9 from now on.
"
Copyright (C) 2015-now Jan Vrany
This code is not an open-source (yet). You may use this code
for your own experiments and projects, given that:
* all modification to the code will be sent to the
original author for inclusion in future releases
* this is not used in any commercial software
This license is provisional and may (will) change in
a future.
"
"{ Package: 'jv:llvm_s' }"
"{ NameSpace: Smalltalk }"
SharedPool subclass:#LLVMTypeKind
instanceVariableNames:''
classVariableNames:'LLVMVoidTypeKind LLVMHalfTypeKind LLVMFloatTypeKind
LLVMDoubleTypeKind LLVMX86_FP80TypeKind LLVMFP128TypeKind
LLVMPPC_FP128TypeKind LLVMLabelTypeKind LLVMIntegerTypeKind
LLVMFunctionTypeKind LLVMStructTypeKind LLVMArrayTypeKind
LLVMPointerTypeKind LLVMVectorTypeKind LLVMMetadataTypeKind
LLVMX86_MMXTypeKind'
poolDictionaries:''
category:'LLVM-S-Core-Constants'
!
!LLVMTypeKind class methodsFor:'documentation'!
copyright
"
Copyright (C) 2015-now Jan Vrany
This code is not an open-source (yet). You may use this code
for your own experiments and projects, given that:
* all modification to the code will be sent to the
original author for inclusion in future releases
* this is not used in any commercial software
This license is provisional and may (will) change in
a future.
"
! !
!LLVMTypeKind class methodsFor:'initialization'!
initialize
LLVMVoidTypeKind := 0.
LLVMHalfTypeKind := 1.
LLVMFloatTypeKind := 2.
LLVMDoubleTypeKind := 3.
LLVMX86_FP80TypeKind := 4.
LLVMFP128TypeKind := 5.
LLVMPPC_FP128TypeKind := 6.
LLVMLabelTypeKind := 7.
LLVMIntegerTypeKind := 8.
LLVMFunctionTypeKind := 9.
LLVMStructTypeKind := 10.
LLVMArrayTypeKind := 11.
LLVMPointerTypeKind := 12.
LLVMVectorTypeKind := 13.
LLVMMetadataTypeKind := 14.
LLVMX86_MMXTypeKind := 15.
! !
!LLVMTypeKind class methodsFor:'constants'!
LLVMArrayTypeKind
^LLVMArrayTypeKind
!
LLVMDoubleTypeKind
^LLVMDoubleTypeKind
!
LLVMFP128TypeKind
^LLVMFP128TypeKind
!
LLVMFloatTypeKind
^LLVMFloatTypeKind
!
LLVMFunctionTypeKind
^LLVMFunctionTypeKind
!
LLVMHalfTypeKind
^LLVMHalfTypeKind
!
LLVMIntegerTypeKind
^LLVMIntegerTypeKind
!
LLVMLabelTypeKind
^LLVMLabelTypeKind
!
LLVMMetadataTypeKind
^LLVMMetadataTypeKind
!
LLVMPPC_FP128TypeKind
^LLVMPPC_FP128TypeKind
!
LLVMPointerTypeKind
^LLVMPointerTypeKind
!
LLVMStructTypeKind
^LLVMStructTypeKind
!
LLVMVectorTypeKind
^LLVMVectorTypeKind
!
LLVMVoidTypeKind
^LLVMVoidTypeKind
!
LLVMX86_FP80TypeKind
^LLVMX86_FP80TypeKind
!
LLVMX86_MMXTypeKind
^LLVMX86_MMXTypeKind
! !
LLVMTypeKind initialize!