Lines Matching refs:__first
180 __find_bool_true(__bit_iterator<_Cp, _IsConst> __first, typename _Cp::size_type __n)
186 if (__first.__ctz_ != 0)
188 __storage_type __clz_f = static_cast<__storage_type>(__bits_per_word - __first.__ctz_);
190 …__storage_type __m = (~__storage_type(0) << __first.__ctz_) & (~__storage_type(0) >> (__clz_f - __…
191 __storage_type __b = *__first.__seg_ & __m;
193 return _It(__first.__seg_, static_cast<unsigned>(_VSTD::__libcpp_ctz(__b)));
195 return __first + __n;
197 ++__first.__seg_;
200 for (; __n >= __bits_per_word; ++__first.__seg_, __n -= __bits_per_word)
201 if (*__first.__seg_)
202 return _It(__first.__seg_, static_cast<unsigned>(_VSTD::__libcpp_ctz(*__first.__seg_)));
207 __storage_type __b = *__first.__seg_ & __m;
209 return _It(__first.__seg_, static_cast<unsigned>(_VSTD::__libcpp_ctz(__b)));
211 return _It(__first.__seg_, static_cast<unsigned>(__n));
216 __find_bool_false(__bit_iterator<_Cp, _IsConst> __first, typename _Cp::size_type __n)
222 if (__first.__ctz_ != 0)
224 __storage_type __clz_f = static_cast<__storage_type>(__bits_per_word - __first.__ctz_);
226 …__storage_type __m = (~__storage_type(0) << __first.__ctz_) & (~__storage_type(0) >> (__clz_f - __…
227 __storage_type __b = ~*__first.__seg_ & __m;
229 return _It(__first.__seg_, static_cast<unsigned>(_VSTD::__libcpp_ctz(__b)));
231 return __first + __n;
233 ++__first.__seg_;
236 for (; __n >= __bits_per_word; ++__first.__seg_, __n -= __bits_per_word)
238 __storage_type __b = ~*__first.__seg_;
240 return _It(__first.__seg_, static_cast<unsigned>(_VSTD::__libcpp_ctz(__b)));
246 __storage_type __b = ~*__first.__seg_ & __m;
248 return _It(__first.__seg_, static_cast<unsigned>(_VSTD::__libcpp_ctz(__b)));
250 return _It(__first.__seg_, static_cast<unsigned>(__n));
256 find(__bit_iterator<_Cp, _IsConst> __first, __bit_iterator<_Cp, _IsConst> __last, const _Tp& __valu…
259 … return _VSTD::__find_bool_true(__first, static_cast<typename _Cp::size_type>(__last - __first));
260 … return _VSTD::__find_bool_false(__first, static_cast<typename _Cp::size_type>(__last - __first));
267 __count_bool_true(__bit_iterator<_Cp, _IsConst> __first, typename _Cp::size_type __n)
275 if (__first.__ctz_ != 0)
277 __storage_type __clz_f = static_cast<__storage_type>(__bits_per_word - __first.__ctz_);
279 …__storage_type __m = (~__storage_type(0) << __first.__ctz_) & (~__storage_type(0) >> (__clz_f - __…
280 __r = _VSTD::__libcpp_popcount(*__first.__seg_ & __m);
282 ++__first.__seg_;
285 for (; __n >= __bits_per_word; ++__first.__seg_, __n -= __bits_per_word)
286 __r += _VSTD::__libcpp_popcount(*__first.__seg_);
291 __r += _VSTD::__libcpp_popcount(*__first.__seg_ & __m);
298 __count_bool_false(__bit_iterator<_Cp, _IsConst> __first, typename _Cp::size_type __n)
306 if (__first.__ctz_ != 0)
308 __storage_type __clz_f = static_cast<__storage_type>(__bits_per_word - __first.__ctz_);
310 …__storage_type __m = (~__storage_type(0) << __first.__ctz_) & (~__storage_type(0) >> (__clz_f - __…
311 __r = _VSTD::__libcpp_popcount(~*__first.__seg_ & __m);
313 ++__first.__seg_;
316 for (; __n >= __bits_per_word; ++__first.__seg_, __n -= __bits_per_word)
317 __r += _VSTD::__libcpp_popcount(~*__first.__seg_);
322 __r += _VSTD::__libcpp_popcount(~*__first.__seg_ & __m);
330 count(__bit_iterator<_Cp, _IsConst> __first, __bit_iterator<_Cp, _IsConst> __last, const _Tp& __val…
333 … return _VSTD::__count_bool_true(__first, static_cast<typename _Cp::size_type>(__last - __first));
334 … return _VSTD::__count_bool_false(__first, static_cast<typename _Cp::size_type>(__last - __first));
341 __fill_n_false(__bit_iterator<_Cp, false> __first, typename _Cp::size_type __n)
347 if (__first.__ctz_ != 0)
349 __storage_type __clz_f = static_cast<__storage_type>(__bits_per_word - __first.__ctz_);
351 …__storage_type __m = (~__storage_type(0) << __first.__ctz_) & (~__storage_type(0) >> (__clz_f - __…
352 *__first.__seg_ &= ~__m;
354 ++__first.__seg_;
358 std::fill_n(std::__to_address(__first.__seg_), __nw, 0);
363 __first.__seg_ += __nw;
365 *__first.__seg_ &= ~__m;
371 __fill_n_true(__bit_iterator<_Cp, false> __first, typename _Cp::size_type __n)
377 if (__first.__ctz_ != 0)
379 __storage_type __clz_f = static_cast<__storage_type>(__bits_per_word - __first.__ctz_);
381 …__storage_type __m = (~__storage_type(0) << __first.__ctz_) & (~__storage_type(0) >> (__clz_f - __…
382 *__first.__seg_ |= __m;
384 ++__first.__seg_;
389 std::fill_n(std::__to_address(__first.__seg_), __nw, static_cast<__storage_type>(-1));
394 __first.__seg_ += __nw;
396 *__first.__seg_ |= __m;
403 fill_n(__bit_iterator<_Cp, false> __first, typename _Cp::size_type __n, bool __value)
408 _VSTD::__fill_n_true(__first, __n);
410 _VSTD::__fill_n_false(__first, __n);
419 fill(__bit_iterator<_Cp, false> __first, __bit_iterator<_Cp, false> __last, bool __value)
421 _VSTD::fill_n(__first, static_cast<typename _Cp::size_type>(__last - __first), __value);
429 __copy_aligned(__bit_iterator<_Cp, _IsConst> __first, __bit_iterator<_Cp, _IsConst> __last,
436 difference_type __n = __last - __first;
440 if (__first.__ctz_ != 0)
442 unsigned __clz = __bits_per_word - __first.__ctz_;
445 …__storage_type __m = (~__storage_type(0) << __first.__ctz_) & (~__storage_type(0) >> (__clz - __dn…
446 __storage_type __b = *__first.__seg_ & __m;
451 ++__first.__seg_;
452 // __first.__ctz_ = 0;
454 // __first.__ctz_ == 0;
457 std::copy_n(std::__to_address(__first.__seg_), __nw, std::__to_address(__result.__seg_));
463 __first.__seg_ += __nw;
465 __storage_type __b = *__first.__seg_ & __m;
477 __copy_unaligned(__bit_iterator<_Cp, _IsConst> __first, __bit_iterator<_Cp, _IsConst> __last,
484 difference_type __n = __last - __first;
488 if (__first.__ctz_ != 0)
490 unsigned __clz_f = __bits_per_word - __first.__ctz_;
493 …__storage_type __m = (~__storage_type(0) << __first.__ctz_) & (~__storage_type(0) >> (__clz_f - __…
494 __storage_type __b = *__first.__seg_ & __m;
499 if (__result.__ctz_ > __first.__ctz_)
500 *__result.__seg_ |= __b << (__result.__ctz_ - __first.__ctz_);
502 *__result.__seg_ |= __b >> (__first.__ctz_ - __result.__ctz_);
510 *__result.__seg_ |= __b >> (__first.__ctz_ + __ddn);
513 ++__first.__seg_;
514 // __first.__ctz_ = 0;
516 // __first.__ctz_ == 0;
520 for (; __n >= __bits_per_word; __n -= __bits_per_word, ++__first.__seg_)
522 __storage_type __b = *__first.__seg_;
533 __storage_type __b = *__first.__seg_ & __m;
556 copy(__bit_iterator<_Cp, _IsConst> __first, __bit_iterator<_Cp, _IsConst> __last, __bit_iterator<_C…
558 if (__first.__ctz_ == __result.__ctz_)
559 return _VSTD::__copy_aligned(__first, __last, __result);
560 return _VSTD::__copy_unaligned(__first, __last, __result);
567 __copy_backward_aligned(__bit_iterator<_Cp, _IsConst> __first, __bit_iterator<_Cp, _IsConst> __last,
574 difference_type __n = __last - __first;
614 __copy_backward_unaligned(__bit_iterator<_Cp, _IsConst> __first, __bit_iterator<_Cp, _IsConst> __la…
621 difference_type __n = __last - __first;
701 copy_backward(__bit_iterator<_Cp, _IsConst> __first, __bit_iterator<_Cp, _IsConst> __last, __bit_it…
704 return _VSTD::__copy_backward_aligned(__first, __last, __result);
705 return _VSTD::__copy_backward_unaligned(__first, __last, __result);
713 move(__bit_iterator<_Cp, _IsConst> __first, __bit_iterator<_Cp, _IsConst> __last, __bit_iterator<_C…
715 return _VSTD::copy(__first, __last, __result);
723 move_backward(__bit_iterator<_Cp, _IsConst> __first, __bit_iterator<_Cp, _IsConst> __last, __bit_it…
725 return _VSTD::copy_backward(__first, __last, __result);
732 __swap_ranges_aligned(__bit_iterator<__C1, false> __first, __bit_iterator<__C1, false> __last,
739 difference_type __n = __last - __first;
743 if (__first.__ctz_ != 0)
745 unsigned __clz = __bits_per_word - __first.__ctz_;
748 …__storage_type __m = (~__storage_type(0) << __first.__ctz_) & (~__storage_type(0) >> (__clz - __dn…
749 __storage_type __b1 = *__first.__seg_ & __m;
750 *__first.__seg_ &= ~__m;
754 *__first.__seg_ |= __b2;
757 ++__first.__seg_;
758 // __first.__ctz_ = 0;
760 // __first.__ctz_ == 0;
762 for (; __n >= __bits_per_word; __n -= __bits_per_word, ++__first.__seg_, ++__result.__seg_)
763 swap(*__first.__seg_, *__result.__seg_);
768 __storage_type __b1 = *__first.__seg_ & __m;
769 *__first.__seg_ &= ~__m;
773 *__first.__seg_ |= __b2;
782 __swap_ranges_unaligned(__bit_iterator<__C1, false> __first, __bit_iterator<__C1, false> __last,
789 difference_type __n = __last - __first;
793 if (__first.__ctz_ != 0)
795 unsigned __clz_f = __bits_per_word - __first.__ctz_;
798 …__storage_type __m = (~__storage_type(0) << __first.__ctz_) & (~__storage_type(0) >> (__clz_f - __…
799 __storage_type __b1 = *__first.__seg_ & __m;
800 *__first.__seg_ &= ~__m;
806 if (__result.__ctz_ > __first.__ctz_)
808 unsigned __s = __result.__ctz_ - __first.__ctz_;
810 *__first.__seg_ |= __b2 >> __s;
814 unsigned __s = __first.__ctz_ - __result.__ctz_;
816 *__first.__seg_ |= __b2 << __s;
826 unsigned __s = __first.__ctz_ + __ddn;
828 *__first.__seg_ |= __b2 << __s;
831 ++__first.__seg_;
832 // __first.__ctz_ = 0;
834 // __first.__ctz_ == 0;
838 for (; __n >= __bits_per_word; __n -= __bits_per_word, ++__first.__seg_)
840 __storage_type __b1 = *__first.__seg_;
844 *__first.__seg_ = __b2 >> __result.__ctz_;
849 *__first.__seg_ |= __b2 << __clz_r;
855 __storage_type __b1 = *__first.__seg_ & __m;
856 *__first.__seg_ &= ~__m;
862 *__first.__seg_ |= __b2 >> __result.__ctz_;
872 *__first.__seg_ |= __b2 << __dn;
927 rotate(__bit_iterator<_Cp, false> __first, __bit_iterator<_Cp, false> __middle, __bit_iterator<_Cp,…
931 difference_type __d1 = __middle - __first;
933 _I1 __r = __first + __d2;
941 _VSTD::copy(__first, __middle, __b.begin());
942 _VSTD::copy(__b.begin(), __b.end(), _VSTD::copy(__middle, __last, __first));
947 __bit_iterator<_Cp, false> __mp = _VSTD::swap_ranges(__first, __middle, __middle);
948 __first = __middle;
959 … _VSTD::copy_backward(__b.begin(), __b.end(), _VSTD::copy_backward(__first, __middle, __last));
964 __bit_iterator<_Cp, false> __mp = __first + __d2;
965 _VSTD::swap_ranges(__first, __mp, __middle);
966 __first = __mp;
1277 friend void __fill_n_false(__bit_iterator<_Dp, false> __first, typename _Dp::size_type __n);
1281 friend void __fill_n_true(__bit_iterator<_Dp, false> __first, typename _Dp::size_type __n);
1285 friend __bit_iterator<_Dp, false> __copy_aligned(__bit_iterator<_Dp, _IC> __first,
1290 friend __bit_iterator<_Dp, false> __copy_unaligned(__bit_iterator<_Dp, _IC> __first,
1295 friend __bit_iterator<_Dp, false> copy(__bit_iterator<_Dp, _IC> __first,
1300 friend __bit_iterator<_Dp, false> __copy_backward_aligned(__bit_iterator<_Dp, _IC> __first,
1305 friend __bit_iterator<_Dp, false> __copy_backward_unaligned(__bit_iterator<_Dp, _IC> __first,
1310 friend __bit_iterator<_Dp, false> copy_backward(__bit_iterator<_Dp, _IC> __first,