Skip to content

Commit

Permalink
Committing Parallel STL 20181109 open source release
Browse files Browse the repository at this point in the history
  • Loading branch information
tbbdev committed Nov 7, 2018
1 parent b159176 commit b118b51
Show file tree
Hide file tree
Showing 6 changed files with 19 additions and 5 deletions.
9 changes: 9 additions & 0 deletions CHANGES
Original file line number Diff line number Diff line change
@@ -1,6 +1,15 @@
------------------------------------------------------------------------
The list of most significant changes made over time in Parallel STL.

Parallel STL release within Intel(R) Parallel Studio XE 2019 Update 1
PSTL_VERSION == 202

Features / APIs:

- Fixed compilation error for reduce and transform_reduce algorithms
with Microsoft* Visual Studio 2017 15.8.

------------------------------------------------------------------------
Parallel STL 20181004 release
PSTL_VERSION == 201

Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Parallel STL
[![Stable release](https://img.shields.io/badge/version-20181004-green.svg)](https://github.com/intel/parallelstl/releases/tag/20181004)
[![Stable release](https://img.shields.io/badge/version-20181109-green.svg)](https://github.com/intel/parallelstl/releases/tag/20181109)
[![Apache License Version 2.0](https://img.shields.io/badge/license-Apache_2.0-green.svg)](LICENSE)

Parallel STL is an implementation of the C++ standard library algorithms with support for execution policies,
Expand Down
2 changes: 1 addition & 1 deletion build/android.inc
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ SDL_FLAGS = -fstack-protector -Wformat -Wformat-security
CPLUS_FLAGS += $(TARGET_CFLAGS) $(PIE_FLAGS) $(SDL_FLAGS)

# Paths to the NDK prebuilt tools and libraries
ifneq (,$(findstring $(ndk_version),r16 r16b))
ifeq (,$(findstring $(ndk_version), $(foreach v, 7 8 9 10 11 12 13 14 15,r$(v) r$(v)b r$(v)c r$(v)d r$(v)e)))
ifeq (clang,$(compiler))
# Since Android* NDK r16 another sysroot and isystem paths have to be specified
CPLUS_FLAGS += --sysroot=$(NDK_ROOT)/sysroot -isystem $(NDK_ROOT)/sysroot/usr/include/$(TRIPLE)
Expand Down
2 changes: 1 addition & 1 deletion doc/Release_Notes.txt
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ Software - Supported Compilers
GNU Compilers (gcc) 4.8 - 7.1
Clang* 3.3 - 3.8
Xcode* 7.0 - 9.1
Android* NDK r13 - r16
Android* NDK r13 - r17b

Known Issues or limitations

Expand Down
2 changes: 1 addition & 1 deletion include/pstl/internal/pstl_config.h
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
#ifndef __PSTL_config_H
#define __PSTL_config_H

#define PSTL_VERSION 201
#define PSTL_VERSION 202
#define PSTL_VERSION_MAJOR (PSTL_VERSION/100)
#define PSTL_VERSION_MINOR (PSTL_VERSION - PSTL_VERSION_MAJOR * 100)

Expand Down
7 changes: 6 additions & 1 deletion include/pstl/internal/unseq_backend_simd.h
Original file line number Diff line number Diff line change
Expand Up @@ -396,7 +396,7 @@ simd_transform_reduce(_Size __n, _Tp __init, _BinaryOperation __binary_op, _Unar
const std::size_t __lane_size = 64;
const std::size_t block_size = __lane_size / sizeof(_Tp);
if (__n > 2 * block_size && block_size > 1) {
typename std::aligned_storage<sizeof(_Tp), __lane_size>::type __lane_[block_size];
alignas(__lane_size) char __lane_[__lane_size];
_Tp* __lane = reinterpret_cast<_Tp*>(__lane_);

// initializer
Expand All @@ -422,6 +422,11 @@ __PSTL_PRAGMA_SIMD
for (_Size __i = 0; __i < block_size; ++__i) {
__init = __binary_op(__init, __lane[__i]);
}
// destroyer
__PSTL_PRAGMA_SIMD
for (_Size __i = 0; __i < block_size; ++__i) {
__lane[__i].~_Tp();
}
}
else {
for (_Size __i = 0; __i < __n; ++__i) {
Expand Down

0 comments on commit b118b51

Please sign in to comment.