Release notes, docs update

This commit is contained in:
Dmitry Babokin
2014-04-11 00:17:12 +04:00
parent d63a94300c
commit a2774f2cf5
3 changed files with 73 additions and 2 deletions

View File

@@ -1,4 +1,4 @@
Copyright (c) 2010-2013, Intel Corporation
Copyright (c) 2010-2014, Intel Corporation
All rights reserved.
Redistribution and use in source and binary forms, with or without
@@ -77,7 +77,7 @@ covered by the following license:
University of Illinois/NCSA
Open Source License
Copyright (c) 2003-2013 University of Illinois at Urbana-Champaign.
Copyright (c) 2003-2014 University of Illinois at Urbana-Champaign.
All rights reserved.
Developed by:

View File

@@ -1,3 +1,47 @@
=== v1.7.0 === (18 April 2014)
A major new version of ISPC with several language and library extensions and
fixes in debug info support. Binaries for all platforms are based on patched
version on LLVM 3.4. There also performance improvements beyond switchover to
LLVM 3.4.
The list of language and library changes:
* Support for varying types in exported functions was added. See documentation
for more details.
* get_programCount() function was moved from stdlib.ispc to
examples/util/util.isph, which needs to be included somewhere in your
project, if you want to use it.
* Library functions for saturated arithmetic were added. add/sub/mul/div
operations are supported for signed and unsigned 8/16/32/64 integer types
(both uniform and varying).
* The algorithm for selecting overloaded function was extended to cover more
types of overloading. Handling of reference types in overloaded functions was
fixed. The rules for selecting the best match were changed to match C++,
which requires the function to be the best match for all parameters. In
ambiguous cases, a warning is issued, but it will be converted to an error
in the next release.
* Explicit typecasts between any two reference types were allowed.
* Implicit cast of pointer to const type to void* was disallowed.
The list of other notable changes is:
* Number of fixes for better debug info support.
* Memory corruption bug was fixed, which caused rare but not reproducible
compile time fails.
* Alias analysis was enabled (more aggressive optimizations are expected).
* A bug involving inaccurate handling of "const" qualifier was fixed. As a
result, more "const" qualifiers may appear in .h files, which may cause
compilation errors.
=== v1.6.0 === (19 December 2013)
A major new version of ISPC with major improvements in performance and

View File

@@ -50,6 +50,7 @@ Contents:
+ `Updating ISPC Programs For Changes In ISPC 1.3`_
+ `Updating ISPC Programs For Changes In ISPC 1.5.0`_
+ `Updating ISPC Programs For Changes In ISPC 1.6.0`_
+ `Updating ISPC Programs For Changes In ISPC 1.7.0`_
* `Getting Started with ISPC`_
@@ -292,6 +293,32 @@ becomes a keyword and it potentially creates a conflict with existing user
function. Also a new library function packed_store_active2() was introduced,
which also may create a conflict with existing user functions.
Updating ISPC Programs For Changes In ISPC 1.7.0
------------------------------------------------
This release contains several changes that may affect compatibility with
older versions:
* The algorithm for selecting overloaded functions was extended to cover more
types of overloading, and handling of reference types was fixed. At the same
time the old scheme, which blindly used the function with "the best score"
summed for all arguments, was switched to the C++ approach, which requires
"the best score" for each argument. If the best function doesn't exist, a
warning is issued in this version. It will be turned into an error in the
next version. A simple example: Suppose we have two functions: max(int, int)
and max(unsigned int, unsigned int). The new rules lead to an error when
calling max(int, unsigned int), as the best choice is ambiguous.
* Implicit cast of pointer to const type to void* was disallowed. Use explicit
cast if needed.
* A bug which prevented "const" qualifiers from appearing in emitted .h files
was fixed. Consequently, "const" qualifiers now properly appearing in emitted
.h files may cause compile errors in pre-existing codes.
* get_ProgramCount() was moved from stdlib to examples/util/util.isph file. You
need to include this file to be able to use this function.
Getting Started with ISPC
=========================