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:#LLVMAtomicOrdering
instanceVariableNames:''
classVariableNames:'LLVMAtomicOrderingNotAtomic LLVMAtomicOrderingUnordered
LLVMAtomicOrderingMonotonic LLVMAtomicOrderingAcquire
LLVMAtomicOrderingRelease LLVMAtomicOrderingAcquireRelease
LLVMAtomicOrderingSequentiallyConsistent'
poolDictionaries:''
category:'LLVM-S-Core-Constants'
!
!LLVMAtomicOrdering 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.
"
! !
!LLVMAtomicOrdering class methodsFor:'initialization'!
initialize
LLVMAtomicOrderingNotAtomic := 0.
LLVMAtomicOrderingUnordered := 1.
LLVMAtomicOrderingMonotonic := 2.
LLVMAtomicOrderingAcquire := 4.
LLVMAtomicOrderingRelease := 5.
LLVMAtomicOrderingAcquireRelease := 6.
LLVMAtomicOrderingSequentiallyConsistent := 7.
! !
!LLVMAtomicOrdering class methodsFor:'constants'!
LLVMAtomicOrderingAcquire
^LLVMAtomicOrderingAcquire
!
LLVMAtomicOrderingAcquireRelease
^LLVMAtomicOrderingAcquireRelease
!
LLVMAtomicOrderingMonotonic
^LLVMAtomicOrderingMonotonic
!
LLVMAtomicOrderingNotAtomic
^LLVMAtomicOrderingNotAtomic
!
LLVMAtomicOrderingRelease
^LLVMAtomicOrderingRelease
!
LLVMAtomicOrderingSequentiallyConsistent
^LLVMAtomicOrderingSequentiallyConsistent
!
LLVMAtomicOrderingUnordered
^LLVMAtomicOrderingUnordered
! !
LLVMAtomicOrdering initialize!