Lines Matching refs:std

40 template <typename T, typename Allocator, typename DerivedType, std::size_t PointersPerEmbeddedTabl…
45 using atomic_segment = std::atomic<segment_type>;
48 using size_type = std::size_t;
49 using segment_index_type = std::size_t;
66 my_segment_table.store(my_embedded_table, std::memory_order_relaxed);
75 my_segment_table.store(my_embedded_table, std::memory_order_relaxed);
88 my_segment_table.store(my_embedded_table, std::memory_order_relaxed);
98 …: my_segment_table_allocator(std::move(other.my_segment_table_allocator)), my_segment_table(nullpt… in segment_table()
101 my_segment_table.store(my_embedded_table, std::memory_order_relaxed);
103 internal_move(std::move(other));
110 my_segment_table.store(my_embedded_table, std::memory_order_relaxed);
113 internal_move_construct_with_allocator(std::move(other), alloc, is_equal_type());
136 … internal_move_assign(std::move(other), tbb::detail::disjunction<is_equal_type, pocma_type>()); in noexcept()
187 segment = table[seg_index].load(std::memory_order_acquire); in enable_segment()
214 … if (table[seg_index].load(std::memory_order_relaxed) <= segment_allocation_failure_tag) { in capacity()
226 if (table[seg_index].load(std::memory_order_relaxed) > segment_allocation_failure_tag) { in find_last_allocated_segment()
238 size_type size = my_size.load(std::memory_order_relaxed); in reserve()
249 my_size.store(0, std::memory_order_relaxed); in clear()
250 my_first_block.store(0, std::memory_order_relaxed); in clear()
256 if (current_segment_table[i - 1].load(std::memory_order_relaxed) != nullptr) { in clear_segments()
272 my_segment_table.store(my_embedded_table, std::memory_order_relaxed); in clear_table()
288 my_segment_table.store(table, std::memory_order_release); in extend_table_if_necessary()
290 table = my_segment_table.load(std::memory_order_acquire); in extend_table_if_necessary()
293 my_segment_table_allocation_failed.store(true, std::memory_order_relaxed); in extend_table_if_necessary()
298 if (my_segment_table_allocation_failed.load(std::memory_order_relaxed)) { in extend_table_if_necessary()
302 table = my_segment_table.load(std::memory_order_acquire); in extend_table_if_necessary()
348 assign_first_block_if_necessary(other.my_first_block.load(std::memory_order_relaxed)); in internal_transfer()
349 my_size.store(other.my_size.load(std::memory_order_relaxed), std::memory_order_relaxed); in internal_transfer()
355 size_type other_size = end_segment_size < other.my_size.load(std::memory_order_relaxed) ? in internal_transfer()
356 other.my_size.load(std::memory_order_relaxed) : end_segment_size; in internal_transfer()
361 if (other_table[i].load(std::memory_order_relaxed) == segment_allocation_failure_tag) in internal_transfer()
365 } else if (other_table[i].load(std::memory_order_relaxed) != nullptr) { in internal_transfer()
367 … transfer_segment(i, other.get_table()[i].load(std::memory_order_relaxed) + segment_base(i), in internal_transfer()
368 get_table()[i].load(std::memory_order_relaxed) + segment_base(i)); in internal_transfer()
378 …my_first_block.store(other.my_first_block.load(std::memory_order_relaxed), std::memory_order_relax… in internal_move()
379 my_size.store(other.my_size.load(std::memory_order_relaxed), std::memory_order_relaxed); in internal_move()
383 … segment_type other_segment = other.my_embedded_table[i].load(std::memory_order_relaxed); in internal_move()
384 my_embedded_table[i].store(other_segment, std::memory_order_relaxed); in internal_move()
385 other.my_embedded_table[i].store(nullptr, std::memory_order_relaxed); in internal_move()
387 my_segment_table.store(my_embedded_table, std::memory_order_relaxed); in internal_move()
389 my_segment_table.store(other.my_segment_table, std::memory_order_relaxed); in internal_move()
390 other.my_segment_table.store(other.my_embedded_table, std::memory_order_relaxed); in internal_move()
393 other.my_size.store(0, std::memory_order_relaxed); in internal_move()
399 /*is_always_equal = */ std::true_type ) { in internal_move_construct_with_allocator()
400 internal_move(std::move(other)); in internal_move_construct_with_allocator()
406 /*is_always_equal = */ std::false_type ) { in internal_move_construct_with_allocator()
409 internal_move(std::move(other)); in internal_move_construct_with_allocator()
422 …void internal_move_assign( segment_table&& other, /*is_always_equal || POCMA = */ std::true_type )… in internal_move_assign()
423 internal_move(std::move(other)); in internal_move_assign()
428 …void internal_move_assign( segment_table&& other, /*is_always_equal || POCMA = */ std::false_type … in internal_move_assign()
431 internal_move(std::move(other)); in internal_move_assign()
440 void internal_swap( segment_table& other, /*is_always_equal || POCS = */ std::true_type ) { in internal_swap()
448 void internal_swap( segment_table& other, /*is_always_equal || POCS = */ std::false_type ) { in internal_swap()
460 segment_type current_segment = my_embedded_table[i].load(std::memory_order_relaxed); in internal_swap_fields()
461 … segment_type other_segment = other.my_embedded_table[i].load(std::memory_order_relaxed); in internal_swap_fields()
463 my_embedded_table[i].store(other_segment, std::memory_order_relaxed); in internal_swap_fields()
464 other.my_embedded_table[i].store(current_segment, std::memory_order_relaxed); in internal_swap_fields()
474 other.my_segment_table.store(other.my_embedded_table, std::memory_order_relaxed); in internal_swap_fields()
477 other.my_segment_table.store(current_segment_table, std::memory_order_relaxed); in internal_swap_fields()
483 my_segment_table.store(my_embedded_table, std::memory_order_relaxed); in internal_swap_fields()
486 my_segment_table.store(other_segment_table, std::memory_order_relaxed); in internal_swap_fields()
488 auto first_block = other.my_first_block.load(std::memory_order_relaxed); in internal_swap_fields()
489 …other.my_first_block.store(my_first_block.load(std::memory_order_relaxed), std::memory_order_relax… in internal_swap_fields()
490 my_first_block.store(first_block, std::memory_order_relaxed); in internal_swap_fields()
492 auto size = other.my_size.load(std::memory_order_relaxed); in internal_swap_fields()
493 other.my_size.store(my_size.load(std::memory_order_relaxed), std::memory_order_relaxed); in internal_swap_fields()
494 my_size.store(size, std::memory_order_relaxed); in internal_swap_fields()
505 segment_table_type table = my_segment_table.load(std::memory_order_acquire); in internal_subscript()
513 segment = table[seg_index].load(std::memory_order_acquire); in internal_subscript()
523 segment = table[seg_index].load(std::memory_order_acquire); in internal_subscript()
532 if (this->my_first_block.load(std::memory_order_relaxed) == zero) { in assign_first_block_if_necessary()
539 table[i].store(nullptr, std::memory_order_relaxed); in zero_table()
544 return my_segment_table.load(std::memory_order_acquire); in get_table()
548 std::atomic<segment_table_type> my_segment_table;
551 std::atomic<size_type> my_first_block;
553 std::atomic<size_type> my_size;
555 std::atomic<bool> my_segment_table_allocation_failed;