commit | d0df1d93474acf0ee4adf19d171a288dfb97c9fe | [log] [tgz] |
---|---|---|
author | John Ericson <John.Ericson@Obsidian.Systems> | Sun Apr 04 13:13:19 2021 -0400 |
committer | Copybara-Service <copybara-worker@google.com> | Thu Aug 18 12:35:35 2022 -0700 |
tree | 6bef998ff1ff323b4d37cffbb3419dd321eddf9a | |
parent | 0832824c93c2a53a98ad7ab4cb0c9219f7fcff69 [diff] |
[cmake] Use `CMAKE_INSTALL_LIBDIR` too We held off on this before as `LLVM_LIBDIR_SUFFIX` conflicted with it. Now we return this. `LLVM_LIBDIR_SUFFIX` is kept as a deprecated way to set `CMAKE_INSTALL_LIBDIR`. The other `*_LIBDIR_SUFFIX` are just removed entirely. I imagine this is too potentially-breaking to make LLVM 15. That's fine. I have a more minimal version of this in the disto (NixOS) patches for LLVM 15 (like previous versions). This more expansive version I will test harder after the release is cut. Reviewed By: sebastian-ne, ldionne, #libc, #libc_abi Differential Revision: https://reviews.llvm.org/D130586 GitOrigin-RevId: f7a33090a91015836497c75f173775392ab0304d
Parallel STL is an implementation of the C++ standard library algorithms with support for execution policies, as specified in ISO/IEC 14882:2017 standard, commonly called C++17. The implementation also supports the unsequenced execution policy specified in Parallelism TS version 2 and proposed for the next version of the C++ standard in the C++ working group paper P1001. Parallel STL offers efficient support for both parallel and vectorized execution of algorithms. For sequential execution, it relies on an available implementation of the C++ standard library.
To use Parallel STL, you must have the following software installed:
unseq
and par_unseq
policies only have effect with compilers that support #pragma omp simd
or #pragma simd
.includes
, inplace_merge
, merge
, nth_element
, partial_sort
, partial_sort_copy
, set_difference
, set_intersection
, set_symmetric_difference
, set_union
, sort
, stable_partition
, stable_sort
, unique
.exclusive_scan
, inclusive_scan
, transform_exclusive_scan
, transform_inclusive_scan
shall be DefaultConstructible. A default constructed-instance of the initial value type shall be the identity element for the specified binary operation.max_element
, min_element
, minmax_element
, partial_sort
, partial_sort_copy
, sort
, stable_sort
the dereferenced value type of the provided iterators shall be DefaultConstructible.remove
, remove_if
, unique
the dereferenced value type of the provided iterators shall be MoveConstructible.copy_if
, inplace_merge
, partial_sort
, partial_sort_copy
, partition_copy
, remove
, remove_if
, rotate
, sort
, stable_sort
, unique
, unique_copy
.