diff options
| author | Louis Dionne <ldionne@apple.com> | 2019-08-05 18:29:14 +0000 |
|---|---|---|
| committer | Louis Dionne <ldionne@apple.com> | 2019-08-05 18:29:14 +0000 |
| commit | 0a06eb911b830cf693747ea6cd975bd97b454e3e (patch) | |
| tree | c68150415e2565cc96801d042c3230efc0194103 /libcxx/include/execution | |
| parent | 3de33245d2c992c9e0af60372043540b60f3a810 (diff) | |
| download | bcm5719-llvm-0a06eb911b830cf693747ea6cd975bd97b454e3e.tar.gz bcm5719-llvm-0a06eb911b830cf693747ea6cd975bd97b454e3e.zip | |
[libc++] Take 2: Integrate the PSTL into libc++
Summary:
This commit allows specifying LIBCXX_ENABLE_PARALLEL_ALGORITHMS when
configuring libc++ in CMake. When that option is enabled, libc++ will
assume that the PSTL can be found somewhere on the CMake module path,
and it will provide the C++17 parallel algorithms based on the PSTL
(that is assumed to be available).
The commit also adds support for running the PSTL tests as part of
the libc++ test suite.
The first attempt to commit this failed because it exposed a bug in the
tests for modules. Now that this has been fixed, it should be safe to
commit this.
Reviewers: EricWF
Subscribers: mgorny, christof, jkorous, dexonsmith, libcxx-commits, mclow.lists, EricWF
Tags: #libc
Differential Revision: https://reviews.llvm.org/D60480
llvm-svn: 367903
Diffstat (limited to 'libcxx/include/execution')
| -rw-r--r-- | libcxx/include/execution | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/libcxx/include/execution b/libcxx/include/execution new file mode 100644 index 00000000000..c12615b77ea --- /dev/null +++ b/libcxx/include/execution @@ -0,0 +1,19 @@ +// -*- C++ -*- +//===------------------------- execution ---------------------------------===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +// +//===----------------------------------------------------------------------===// + +#ifndef _LIBCPP_EXECUTION +#define _LIBCPP_EXECUTION + +#include <__config> + +#if defined(_LIBCPP_HAS_PARALLEL_ALGORITHMS) && _LIBCPP_STD_VER >= 17 +# include <pstl/internal/glue_execution_defs.h> +#endif + +#endif // _LIBCPP_EXECUTION |

