@@ -1,3 +1,47 @@
|
|||||||
|
=== v1.6.0 === (19 December 2013)
|
||||||
|
|
||||||
|
A major new version of ISPC with major improvements in performance and
|
||||||
|
stability. Linux and MacOS binaries are based on patched version of LLVM 3.3,
|
||||||
|
while Windows version is based on LLVM 3.4rc3. LLVM 3.4 significantly improves
|
||||||
|
stability on Win32 platform, so we've decided not to wait for official LLVM 3.4
|
||||||
|
release.
|
||||||
|
|
||||||
|
The list of the most significant changes is:
|
||||||
|
|
||||||
|
* New avx1-i32x4 target was added. It may play well for you, if you are focused
|
||||||
|
on integer computations or FP unit in your hardware is 128 bit wide.
|
||||||
|
|
||||||
|
* Support for calculations in double precision was extended with two new
|
||||||
|
targets avx1.1-i64x4 and avx2-i64x4.
|
||||||
|
|
||||||
|
* Language support for overloaded operators was added.
|
||||||
|
|
||||||
|
* New library shift() function was added, which is similar to rotate(), but is
|
||||||
|
non-circular.
|
||||||
|
|
||||||
|
* The language was extended to accept 3 dimensional tasking - a syntactic sugar,
|
||||||
|
which may facilitate programming of some tasks.
|
||||||
|
|
||||||
|
* Regression, which broke --opt=force-aligned-memory is fixed.
|
||||||
|
|
||||||
|
If you are not using pre-built binaries, you may notice the following changes:
|
||||||
|
|
||||||
|
* VS2012/VS2013 are supported.
|
||||||
|
|
||||||
|
* alloy.py (with -b switch) can build LLVM for you on any platform now
|
||||||
|
(except MacOS 10.9, but we know about the problem and working on it).
|
||||||
|
This is a preferred way to build LLVM for ISPC, as all required patches for
|
||||||
|
better performance and stability will automatically apply.
|
||||||
|
|
||||||
|
* LLVM 3.5 (current trunk) is supported.
|
||||||
|
|
||||||
|
There are also multiple fixes for better performance and stability, most
|
||||||
|
notable are:
|
||||||
|
|
||||||
|
* Fixed performance problem for x2 targets.
|
||||||
|
|
||||||
|
* Fixed a problem with incorrect vzeroupper insertion on AVX target on Win32.
|
||||||
|
|
||||||
=== v1.5.0 === (27 September 2013)
|
=== v1.5.0 === (27 September 2013)
|
||||||
|
|
||||||
A major new version of ISPC with several new targets and important bug fixes.
|
A major new version of ISPC with several new targets and important bug fixes.
|
||||||
|
|||||||
@@ -2,6 +2,16 @@
|
|||||||
ispc News
|
ispc News
|
||||||
=========
|
=========
|
||||||
|
|
||||||
|
ispc 1.6.0 is Released
|
||||||
|
----------------------
|
||||||
|
|
||||||
|
A major update of ``ispc`` has been released. The main focus is on improved
|
||||||
|
performance and stability. Several new targets were added. There are also
|
||||||
|
a number of language and library extensions. Released binaries are based on
|
||||||
|
patched LLVM 3.3 on Linux and MacOS and LLVM 3.4rc3 on Windows. Please refer
|
||||||
|
to Release Notes for complete set of changes.
|
||||||
|
|
||||||
|
|
||||||
ispc 1.5.0 is Released
|
ispc 1.5.0 is Released
|
||||||
----------------------
|
----------------------
|
||||||
|
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ PROJECT_NAME = "Intel SPMD Program Compiler"
|
|||||||
# This could be handy for archiving the generated documentation or
|
# This could be handy for archiving the generated documentation or
|
||||||
# if some version control system is used.
|
# if some version control system is used.
|
||||||
|
|
||||||
PROJECT_NUMBER = 1.5.1dev
|
PROJECT_NUMBER = 1.6.0
|
||||||
|
|
||||||
# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute)
|
# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute)
|
||||||
# base path where the generated documentation will be put.
|
# base path where the generated documentation will be put.
|
||||||
|
|||||||
2
ispc.h
2
ispc.h
@@ -38,7 +38,7 @@
|
|||||||
#ifndef ISPC_H
|
#ifndef ISPC_H
|
||||||
#define ISPC_H
|
#define ISPC_H
|
||||||
|
|
||||||
#define ISPC_VERSION "1.5.1dev"
|
#define ISPC_VERSION "1.6.0"
|
||||||
|
|
||||||
#if !defined(LLVM_3_1) && !defined(LLVM_3_2) && !defined(LLVM_3_3) && !defined(LLVM_3_4) && !defined(LLVM_3_5)
|
#if !defined(LLVM_3_1) && !defined(LLVM_3_2) && !defined(LLVM_3_3) && !defined(LLVM_3_4) && !defined(LLVM_3_5)
|
||||||
#error "Only LLVM 3.1, 3.2, 3.3, 3.4 and the 3.5 development branch are supported"
|
#error "Only LLVM 3.1, 3.2, 3.3, 3.4 and the 3.5 development branch are supported"
|
||||||
|
|||||||
Reference in New Issue
Block a user