Skip to content

=== v1.23.0 === (16 February 2024)

Latest
Compare
Choose a tag to compare
@aneshlya aneshlya released this 16 Feb 17:34
· 65 commits to main since this release

ISPC release with bug fixes and a few language improvements. The release is based on patched LLVM 16.0.6.

Language changes:

  • Improved const variables initialization:

    1. Variables with const qualifiers can be initialized using the values of previously initialized const variables including arithmetic operations above them.
    2. Enum values can be used as constants.
  • One can use the result of selection operator as lvalue now.

Compiler switches behavior:

  • --dump-file=<dir> forces now to dump the whole IR modules after each pass.

ISPC Runtime improvements:

  • Added ISPCRT_GPU_DRIVER environment variable that allows to choose the specific driver. If more than one supported GPU is present in the system, they may be managed by several GPU drivers. The user can select the GPU driver using this variable.

Infrastructure/build changes:

  • Removed the build dependency from llvm-dis.
  • Lock the time zone to UTS to fix build reproducibility.

Bug fixes:

  • Fixed ABI compatibility of bool types returned to C/C++ code.
  • Fixed build error when bison emulates POSIX Yacc.
  • Fixed target definition for neon-i16x8, sse2-i32x8 and ps5.
  • Fixed ICE when generating unwind info for aarch64 code on Windows.

Recommended versions of Runtime Dependencies when targeting GPU:

Linux:

Alternatively, you can use a validated gfx driver stack supporting Intel® Arc™ available at https://dgpu-docs.intel.com/driver/installation.html

Windows:

Components revisions used in GPU-enabled build: