In this release, we upgrade to LLVM 6. Two LLVM patches are added:
1. A patch to fix LLVM bug (https://bugs.llvm.org/show_bug.cgi?id=37019) that causes undefined behavior during CFG printing. 2. A patch to enable Intel SVML auto-vectorization of transcendentals.
The following PRs are closed in this release:
* PR 343: Fix undefined behavior bug due to Twine usage in LLVM * PR 340: This moves llvmlite to use LLVM 6.0.0 as its backend. * PR 339: Add cttz & ctlz * PR 338: Add 3 Bit Manipulation Intrinsics * PR 330: Add support for LLVM fence instruction * PR 326: Enable Intel SVML-enabled auto-vectorization for all the transcendentals
0.22.0
Not secure
----------------------
In this release, we have changed the locking strategy that protects LLVM from race conditions. Before, the llvmlite user (like Numba) was responsible for this locking. Now, llvmlite imposes a global thread lock on all calls into the LLVM API. This should be significantly less error prone. Future llvmlite releases may manually exempt some functions from locking once they are determined to be thread-safe.
The following PRs are closed in this release:
* PR318: Ensuring threadsafety in concurrent usage of LLVM C-API * PR221: Add all function/return value attributes from LLVM 3.9 * PR304: Expose support for static constructors/destructors
0.21.0
Not secure
---------------------
In this release, we upgrade to LLVM 5. Our build scripts now use conda-build 3. For our prebuilt binaries, GCC 7 toolchain is used on unix-like systems and the OSX minimum deployment target is 10.9.
The following PRs are closed in this release:
* PR 315: Updates for conda build 3. * PR 307: Fixes for LLVM5. * PR 306: Working towards LLVM 5.0 support.
0.20.0
Not secure
---------------------
Beginning with this minor release, we support wheels for Linux, OSX and Windows. Pull requests related to enabling wheels are 294, 295, 296 and 297. There are also fixes to the documentation (283 and 289).
0.19.0
---------------------
This is a minor release with the following fixes.
* PR 281, Issue 280: Fix GEP addrspace issue * PR 279: Fix 274 addrspace in gep * PR 278: add Readthedocs badge * PR 275: Add variables to pass through when doing conda-build * PR 273: Fix the behavior of module.get_global * PR 272: cmpop contains comparison type, not lhs * PR 268, Fix 267: Support packed struct
The following are CI build related changes:
* PR 277: Add pass through gcc flags for llvmdev * PR 276: Remove jenkins build scripts
0.18.0
---------------------
This is a minor release that fixes several issues (263, 262, 258, 237) with the wheel build. In addition, we have minor fixes for running on PPC64LE platforms (261). And, we added CI testing against PyPy (253).