Hot fix for equal algo
Details
Diff Detail
- Repository
- rL LLVM
Event Timeline
include/pstl/internal/glue_algorithm_impl.h | ||
---|---|---|
739 ↗ | (On Diff #191905) | Please restore the space here. |
739 ↗ | (On Diff #191905) | Why are you removing the TODO? |
750 ↗ | (On Diff #191905) | What problem is this fixing? IIUC, before this patch, we would end up calling equal(_ExecutionPolicy&&, _ForwardIterator1, _ForwardIterator1, _ForwardIterator2) here and that would be a compiler error because __pstl::internal::pstl_equal() is not an iterator. Is that correct? If so, this change should be accompanied by a test that goes through this code path. |
include/pstl/internal/glue_algorithm_impl.h | ||
---|---|---|
750 ↗ | (On Diff #191905) | No... |
include/pstl/internal/glue_algorithm_impl.h | ||
---|---|---|
739 ↗ | (On Diff #191905) | "Distance check" is a kind of optimization for random access iterators.. Furthermore, I've just noticed, in case of size equal, we call a serial version std::equal(first1, last1, first2, p); Ok, I'll complete the fixing and update the patch. |
include/pstl/internal/glue_algorithm_impl.h | ||
---|---|---|
739 ↗ | (On Diff #191905) | Please fix this in a separate patch (I've already applied this one). |