[libc++][PSTL] Add more specialized backend customization points
authorLouis Dionne <ldionne.2@gmail.com>
Tue, 9 May 2023 14:54:59 +0000 (07:54 -0700)
committerNikolas Klauser <n_klauser@apple.com>
Thu, 11 May 2023 20:54:28 +0000 (13:54 -0700)
commit8e2d09c33938655ac3a19e198bf4d646ece8690a
treeda613be80595ea6403a3a8b43ebe75d3311d0cf8
parent3e7eab099766cc92e5930a7883a014d0de8710d9
[libc++][PSTL] Add more specialized backend customization points

This allows backends to customize arbitrary parallel algorithms, which was requested pretty often.

Reviewed By: #libc, ldionne

Spies: arichardson, miyuki, crtrott, dalg24, __simt__, philnik, libcxx-commits

Differential Revision: https://reviews.llvm.org/D149686
20 files changed:
libcxx/include/CMakeLists.txt
libcxx/include/__algorithm/pstl_backend.h [new file with mode: 0644]
libcxx/include/__algorithm/pstl_backends/cpu_backend.h [new file with mode: 0644]
libcxx/include/__algorithm/pstl_backends/cpu_backends/backend.h [new file with mode: 0644]
libcxx/include/__algorithm/pstl_backends/cpu_backends/for_each.h [new file with mode: 0644]
libcxx/include/__algorithm/pstl_backends/cpu_backends/serial.h [new file with mode: 0644]
libcxx/include/__algorithm/pstl_for_each.h
libcxx/include/__algorithm/pstl_frontend_dispatch.h [new file with mode: 0644]
libcxx/include/__config
libcxx/include/__type_traits/is_execution_policy.h
libcxx/include/execution
libcxx/include/module.modulemap.in
libcxx/test/libcxx/nasty_macros.compile.pass.cpp
libcxx/test/libcxx/private_headers.verify.cpp
libcxx/test/libcxx/transitive_includes/cxx03.csv
libcxx/test/libcxx/transitive_includes/cxx11.csv
libcxx/test/libcxx/transitive_includes/cxx14.csv
libcxx/test/libcxx/transitive_includes/cxx17.csv
libcxx/test/libcxx/transitive_includes/cxx20.csv
libcxx/test/libcxx/transitive_includes/cxx2b.csv