From 8a39af8f7204640fa802f6eb07403526523d1ea3 Mon Sep 17 00:00:00 2001 From: Dmitry Babokin Date: Fri, 27 Sep 2013 23:27:05 +0400 Subject: [PATCH 1/2] Release 1.5.0 --- docs/ReleaseNotes.txt | 60 +++++++++++++++++++++++++++++++++++++++++++ docs/news.rst | 8 ++++++ doxygen.cfg | 2 +- ispc.h | 2 +- 4 files changed, 70 insertions(+), 2 deletions(-) diff --git a/docs/ReleaseNotes.txt b/docs/ReleaseNotes.txt index 007f283e..a8575ea0 100644 --- a/docs/ReleaseNotes.txt +++ b/docs/ReleaseNotes.txt @@ -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= and --off-phase= + 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= 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. diff --git a/docs/news.rst b/docs/news.rst index c1c35de3..7d78a662 100644 --- a/docs/news.rst +++ b/docs/news.rst @@ -2,6 +2,14 @@ ispc News ========= +ispc 1.5.0 is Released +---------------------- + +A major update of ``ispc`` has been released with several new targets available +and bunch of performance and stability fixes. The released binaries are built +with patched version of LLVM 3.3. Please refer to Release Notes for complete +set of changes. + ispc 1.4.4 is Released ---------------------- diff --git a/doxygen.cfg b/doxygen.cfg index 480d9331..ab4eec20 100644 --- a/doxygen.cfg +++ b/doxygen.cfg @@ -31,7 +31,7 @@ PROJECT_NAME = "Intel SPMD Program Compiler" # This could be handy for archiving the generated documentation or # if some version control system is used. -PROJECT_NUMBER = 1.4.5dev +PROJECT_NUMBER = 1.5.0 # The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) # base path where the generated documentation will be put. diff --git a/ispc.h b/ispc.h index 4804832f..4b7ae732 100644 --- a/ispc.h +++ b/ispc.h @@ -38,7 +38,7 @@ #ifndef ISPC_H #define ISPC_H -#define ISPC_VERSION "1.4.5dev" +#define ISPC_VERSION "1.5.0" #if !defined(LLVM_3_1) && !defined(LLVM_3_2) && !defined(LLVM_3_3) && !defined(LLVM_3_4) #error "Only LLVM 3.1, 3.2, 3.3 and the 3.4 development branch are supported" From 3b4cc9080046983932ea461345344deccd0ad33e Mon Sep 17 00:00:00 2001 From: Dmitry Babokin Date: Sat, 28 Sep 2013 01:32:00 +0400 Subject: [PATCH 2/2] Changing ISPC to 1.5.dev --- doxygen.cfg | 2 +- ispc.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/doxygen.cfg b/doxygen.cfg index ab4eec20..a0ad3176 100644 --- a/doxygen.cfg +++ b/doxygen.cfg @@ -31,7 +31,7 @@ PROJECT_NAME = "Intel SPMD Program Compiler" # This could be handy for archiving the generated documentation or # if some version control system is used. -PROJECT_NUMBER = 1.5.0 +PROJECT_NUMBER = 1.5.1dev # The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) # base path where the generated documentation will be put. diff --git a/ispc.h b/ispc.h index 4b7ae732..82cb9050 100644 --- a/ispc.h +++ b/ispc.h @@ -38,7 +38,7 @@ #ifndef ISPC_H #define ISPC_H -#define ISPC_VERSION "1.5.0" +#define ISPC_VERSION "1.5.1dev" #if !defined(LLVM_3_1) && !defined(LLVM_3_2) && !defined(LLVM_3_3) && !defined(LLVM_3_4) #error "Only LLVM 3.1, 3.2, 3.3 and the 3.4 development branch are supported"