Lines Matching refs:FLAG

147     static const tricky_pointer::word FLAG = 0x1;  member
150 return reinterpret_cast<uintptr_t>(ptr) & FLAG; in get_flag()
181 predecessor = tricky_pointer(predecessor) & ~FLAG; in acquire()
195 if( tricky_pointer(predecessor) & FLAG ) { in acquire()
198 predecessor = tricky_pointer(predecessor) & ~FLAG; in acquire()
214 … __TBB_ASSERT( !( tricky_pointer(predecessor) & FLAG ), "use of corrupted pointer!" ); in acquire()
328 …__TBB_ASSERT( !( next->my_prev.load(std::memory_order_relaxed) & FLAG ), "use of corrupted pointer… in release()
342 …queuing_rw_mutex::scoped_lock *predecessor = tricky_pointer::fetch_add(s.my_prev, FLAG, std::memor… in release()
350 …pointer::compare_exchange_strong(s.my_prev, tricky_pointer(predecessor) | FLAG, predecessor, std::… in release()
351 if( !(tricky_pointer(tmp) & FLAG) ) { in release()
352 …nter::load(s.my_prev, std::memory_order_relaxed) != (tricky_pointer(predecessor) | FLAG), nullptr); in release()
371 … __TBB_ASSERT( !(s.my_next.load(std::memory_order_relaxed) & FLAG), "use of corrupted pointer" ); in release()
471 … __TBB_ASSERT( !(s.my_next.load(std::memory_order_relaxed) & FLAG), "use of corrupted pointer!" ); in upgrade_to_writer()
474 …if( !s.my_mutex->q_tail.compare_exchange_strong(expected, tricky_pointer(me)|FLAG, std::memory_ord… in upgrade_to_writer()
477 next = tricky_pointer::fetch_add(s.my_next, FLAG, std::memory_order_acquire); in upgrade_to_writer()
490 tmp = tricky_pointer(next)|FLAG; in upgrade_to_writer()
498 …ricky_pointer::load(s.my_next, std::memory_order_relaxed) != (tricky_pointer(next)|FLAG), nullptr); in upgrade_to_writer()
502 …__TBB_ASSERT( (tricky_pointer(next)|FLAG) == tricky_pointer::load(s.my_next, std::memory_order_rel… in upgrade_to_writer()
518 …__TBB_ASSERT( !( s.my_next.load(std::memory_order_relaxed) & FLAG ), "use of corrupted pointer!" ); in upgrade_to_writer()
523 expected = tricky_pointer(me)|FLAG; in upgrade_to_writer()
527 predecessor = tricky_pointer::fetch_add(s.my_prev, FLAG, std::memory_order_acquire); in upgrade_to_writer()
541 …y_pointer::compare_exchange_strong(s.my_prev, tricky_pointer(predecessor)|FLAG, predecessor, std::… in upgrade_to_writer()
542 if( tricky_pointer(tmp) & FLAG ) { in upgrade_to_writer()
547 tricky_pointer::spin_wait_while_eq(s.my_prev, tricky_pointer(predecessor)|FLAG); in upgrade_to_writer()