[libc++][pstl] Implement tag dispatching mechanism for Parallel STLImplement the mechanism that simplifies the execution policy/iteratorcategory dispatching and allows to implement customizations
[libc++][pstl] Implement tag dispatching mechanism for Parallel STLImplement the mechanism that simplifies the execution policy/iteratorcategory dispatching and allows to implement customizations forthe parallel algorithms with adding custom tagsReviewed By: rodgert, MikeDvorskiyDifferential Revision: https://reviews.llvm.org/D104492
show more ...
[pstl] Fix -Wundef errors in the test suite
[pstl] A fix for move placement-new (and destroy) allocated objects from raw memory.https://reviews.llvm.org/D74123The fix affects follow algorithms:remove_if, unique, rotate, inplace_merge, par
[pstl] A fix for move placement-new (and destroy) allocated objects from raw memory.https://reviews.llvm.org/D74123The fix affects follow algorithms:remove_if, unique, rotate, inplace_merge, partial_sort_copy, set_union, set_intersection, set_difference, set_symmetric_difference.For "is_trivial" types there are no problems with "creating objects/clean-up"For non-trivial types the algo results are also correct, but possible incorrect copying/moving "operator=" calls "by raw memory" within one of mentioned algo or incorrect destructor calls in the end of algo.
[NFC][pstl] Run clang-format on the sources, including the testsllvm-svn: 366492
[pstl] Disable workarounds for broken ICC versions when using Clangllvm-svn: 363726
[pstl] Remove various warnings in the pstl headers and tests- unused parameter warnings- don't use single-letter template parameter names, like we do in libc++- sign-comparison warnings- unused
[pstl] Remove various warnings in the pstl headers and tests- unused parameter warnings- don't use single-letter template parameter names, like we do in libc++- sign-comparison warnings- unused variables in the tests- unused local typedefs in the tests- the use of #include_next- field reordering in the tests- unused lambda capturesNote that the rationale for why the static_casts to unsigned are OK isthat last - first must always be non-negative, since [first, last) isa valid range.llvm-svn: 362148
[pstl] Make the default backend be the serial backend and always provide parallel policiesSummary:Before this change, the default backend was TBB but one could disableanything related to TBB by r
[pstl] Make the default backend be the serial backend and always provide parallel policiesSummary:Before this change, the default backend was TBB but one could disableanything related to TBB by removing the parallel policies. This changeuses the serial backend by default and removes the ability to disableparallel policies, which is not useful anymore.Reviewers: rodgert, MikeDvorskiySubscribers: mgorny, jkorous, dexonsmith, jdoerfert, libcxx-commitsDifferential Revision: https://reviews.llvm.org/D59792llvm-svn: 359134
[pstl] Remove the stdlib headers from the PSTL and move them to the testsSummary:PSTL should not provide those headers since they belong to the standardlibrary. Instead, we define a dummy standar
[pstl] Remove the stdlib headers from the PSTL and move them to the testsSummary:PSTL should not provide those headers since they belong to the standardlibrary. Instead, we define a dummy standard library in the tests thatprovides those headers.Reviewers: rodgert, MikeDvorskiySubscribers: mgorny, jkorous, dexonsmith, libcxx-commitsTags: #libcDifferential Revision: https://reviews.llvm.org/D60535llvm-svn: 358497
[pstl] Move to single underscore-capital for macros and include guardsSummary: Per the LLVM convention.Reviewers: rodgertSubscribers: jkorous, dexonsmith, jdoerfert, libcxx-commitsTags: #libc
[pstl] Move to single underscore-capital for macros and include guardsSummary: Per the LLVM convention.Reviewers: rodgertSubscribers: jkorous, dexonsmith, jdoerfert, libcxx-commitsTags: #libcDifferential Revision: https://reviews.llvm.org/D60521llvm-svn: 358131
[pstl] Uglify internal names of the libraryllvm-svn: 357203
Restructure test suite to follow libc++ standard layoutSummary: Subsumes changes requested in https://reviews.llvm.org/D59110Reviewers: EricWF, ldionneSubscribers: mgorny, krytarowski, jfb, jdo
Restructure test suite to follow libc++ standard layoutSummary: Subsumes changes requested in https://reviews.llvm.org/D59110Reviewers: EricWF, ldionneSubscribers: mgorny, krytarowski, jfb, jdoerfert, libcxx-commitsDifferential Revision: https://reviews.llvm.org/D59856llvm-svn: 357124