Release 1.5.0
This commit is contained in:
@@ -1,3 +1,63 @@
|
||||
=== v1.5.0 === (27 September 2013)
|
||||
|
||||
A major new version of ISPC with several new targets and important bug fixes.
|
||||
Here's a list of the most important changes, if you are using pre-built
|
||||
binaries (which are based on patched version of LLVM 3.3):
|
||||
|
||||
* The naming of targets was changed to explicitly include data type width and
|
||||
a number of threads in the gang. For example, avx2-i32x8 is avx2 target,
|
||||
which uses 32 bit types as a base and has 8 threads in a gang. Old naming
|
||||
scheme is still supported, but depricated.
|
||||
|
||||
* New SSE4 targets for calculations based on 8 bit and 16 bit data types:
|
||||
sse4-i8x16 and sse4-i16x8.
|
||||
|
||||
* New AVX1 target for calculations based on 64 bit data types: avx1-i64x4.
|
||||
|
||||
* SVML support was extended and improved.
|
||||
|
||||
* Behavior of -g switch was changed to not affect optimization level.
|
||||
|
||||
* ISPC debug infrastructure was redesigned. See --help-dev for more info and
|
||||
enjoy capabilities of new --debug-phase=<value> and --off-phase=<value>
|
||||
switches.
|
||||
|
||||
* Fixed an auto-dispatch bug, which caused AVX code execution when OS doesn't
|
||||
support AVX (but hardware does).
|
||||
|
||||
* Fixed a bug, which discarded uniform/varying keyword in typedefs.
|
||||
|
||||
* Several performance regressions were fixed.
|
||||
|
||||
If you are building ISPC yourself, then following changes are also available
|
||||
to you:
|
||||
|
||||
* --cpu=slm for targeting Intel Atom codename Silvermont (if LLVM 3.4 is used).
|
||||
|
||||
* ARM NEON targets are available (if enabled in build system).
|
||||
|
||||
* --debug-ir=<value> is available to generate debug information based on LLVM
|
||||
IR (if LLVM 3.4 is used). In debugger you'll see LLVM IR instead of source
|
||||
code.
|
||||
|
||||
* A redesigned and improved test and configuration management system is
|
||||
available to facilitate the process of building LLVM and testing ISPC
|
||||
compiler.
|
||||
|
||||
Standard library changes/fixes:
|
||||
|
||||
* __pause() function was removed from standard library.
|
||||
|
||||
* Fixed reduce_[min|max]_[float|double] intrinsics, which were producing
|
||||
incorrect code under some conditions.
|
||||
|
||||
Language changes:
|
||||
|
||||
* By default a floating point constant without a suffix is a single precision
|
||||
constant (32 bit). A new suffix "d" was introduced to allow double precision
|
||||
constant (64 bit). Please refer to tests/double-consts.ispc for syntax
|
||||
examples.
|
||||
|
||||
=== v1.4.4 === (19 July 2013)
|
||||
|
||||
A minor version update with several stability fixes requested by the customers.
|
||||
|
||||
Reference in New Issue
Block a user