From 6e8be22c8b0eadfeb8e182198a902d3e796faa97 Mon Sep 17 00:00:00 2001 From: Dmitry Babokin Date: Fri, 8 Jul 2016 13:15:55 +0300 Subject: [PATCH 1/3] Moving SKX_AVX512 under LLVM 3.8 --- ispc.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ispc.cpp b/ispc.cpp index 4c928f58..b6e81e2b 100644 --- a/ispc.cpp +++ b/ispc.cpp @@ -1287,8 +1287,10 @@ Target::ISAToString(ISA isa) { case Target::KNL_AVX512: return "avx512knl"; #endif +#if ISPC_LLVM_VERSION >= ISPC_LLVM_3_8 // LLVM 3.8+ case Target::SKX_AVX512: return "avx512skx"; +#endif case Target::GENERIC: return "generic"; #ifdef ISPC_NVPTX_ENABLED From 70f411148effae5c06979cbba68af0fff1a7affd Mon Sep 17 00:00:00 2001 From: Dmitry Babokin Date: Fri, 8 Jul 2016 14:03:26 +0300 Subject: [PATCH 2/3] Doc update for 1.9.1 --- docs/ReleaseNotes.txt | 8 ++++++++ docs/ispc.rst | 10 +++++++++- docs/news.rst | 10 ++++++++++ 3 files changed, 27 insertions(+), 1 deletion(-) diff --git a/docs/ReleaseNotes.txt b/docs/ReleaseNotes.txt index 5581b81c..b6746a53 100644 --- a/docs/ReleaseNotes.txt +++ b/docs/ReleaseNotes.txt @@ -1,3 +1,11 @@ +=== v1.9.1 === (8 July 2016) + +An ISPC update with new native AVX512 target for future Xeon CPUs and +improvements for debugging, including new switch --dwarf-version to support +debugging on old systems. + +The release is based on patched version LLVM 3.8. + === v1.9.0 === (12 Feb 2016) An ISPC release with AVX512 (KNL flavor) support and a number of bug fixes, diff --git a/docs/ispc.rst b/docs/ispc.rst index 28dd9806..1174cb2f 100644 --- a/docs/ispc.rst +++ b/docs/ispc.rst @@ -53,6 +53,7 @@ Contents: + `Updating ISPC Programs For Changes In ISPC 1.7.0`_ + `Updating ISPC Programs For Changes In ISPC 1.8.2`_ + `Updating ISPC Programs For Changes In ISPC 1.9.0`_ + + `Updating ISPC Programs For Changes In ISPC 1.9.1`_ * `Getting Started with ISPC`_ @@ -345,6 +346,12 @@ Updating ISPC Programs For Changes In ISPC 1.9.0 The release doesn't contains language changes, which may affect compatibility with older versions. It introduces new AVX512 target: avx512knl-i32x16. +Updating ISPC Programs For Changes In ISPC 1.9.1 +------------------------------------------------ + +The release doesn't contains language changes, which may affect compatibility with +older versions. It introduces new AVX512 target: avx512skx-i32x16. + Getting Started with ISPC ========================= @@ -578,6 +585,7 @@ avx, avx1 AVX (2010-2011 era Intel CPUs) avx1.1 AVX 1.1 (2012 era "Ivybridge" Intel CPUs) avx2 AVX 2 target (2013- Intel "Haswell" CPUs) avx512knl AVX 512 target (Xeon Phi chips codename Knights Landing) +avx512skx AVX 512 target (future Xeon CPUs) neon ARM NEON sse2 SSE2 (early 2000s era x86 CPUs) sse4 SSE4 (generally 2008-2010 Intel CPUs) @@ -807,7 +815,7 @@ preprocessor runs: * - ISPC - 1 - Detecting that the ``ispc`` compiler is processing the file - * - ISPC_TARGET_{NEON_8,NEON_16,NEON_32,SSE2,SSE4,AVX,AVX11,AVX2,AVX512KNL,GENERIC} + * - ISPC_TARGET_{NEON_8, NEON_16, NEON_32, SSE2, SSE4, AVX, AVX11, AVX2, AVX512KNL, AVX512SKX, GENERIC} - 1 - One of these will be set, depending on the compilation target. * - ISPC_POINTER_SIZE diff --git a/docs/news.rst b/docs/news.rst index 305e4240..ca707929 100644 --- a/docs/news.rst +++ b/docs/news.rst @@ -2,6 +2,16 @@ ispc News ========= +ispc 1.9.1 is Released +---------------------- + +An ``ispc`` release with new native AVX512 target for future Xeon CPUs and +improvements for debugging. Release is based on patched version LLVM 3.8 backend. + +For more details, please check `Release Notes`_. + +.. _Release Notes: https://github.com/ispc/ispc/blob/master/docs/ReleaseNotes.txt + ispc 1.9.0 is Released ---------------------- From 147d16d49e76226c7ff097c2e49a43cc18870028 Mon Sep 17 00:00:00 2001 From: Dmitry Babokin Date: Fri, 8 Jul 2016 14:11:33 +0300 Subject: [PATCH 3/3] Bumping version to 1.9.1 --- doxygen.cfg | 2 +- ispc_version.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/doxygen.cfg b/doxygen.cfg index aa835c49..ee78cec1 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.9.1dev +PROJECT_NUMBER = 1.9.1 # 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_version.h b/ispc_version.h index 001c1d33..223d67cc 100644 --- a/ispc_version.h +++ b/ispc_version.h @@ -38,7 +38,7 @@ #ifndef ISPC_VERSION_H #define ISPC_VERSION_H -#define ISPC_VERSION "1.9.1dev" +#define ISPC_VERSION "1.9.1" #include "llvm/Config/llvm-config.h" #define ISPC_LLVM_VERSION ( LLVM_VERSION_MAJOR * 10000 + LLVM_VERSION_MINOR * 100 )