Home
last modified time | relevance | path

Searched refs:PointerAndCounter (Results 1 – 3 of 3) sorted by relevance

/frameworks/libs/binary_translation/base/include/berberis/base/
Dlock_free_stack.h39 return PointerAndCounter<T>::UnpackPointer(head_.load(std::memory_order_relaxed)) == nullptr; in Empty()
46 uint64_t cnt = PointerAndCounter<T>::UnpackCounter(cmp) + 1; in PushRange()
47 uint64_t xch = PointerAndCounter<T>::PackUnsafe(p, cnt); in PushRange()
48 l->next = PointerAndCounter<T>::UnpackPointer(cmp); in PushRange()
61 T* curr = PointerAndCounter<T>::UnpackPointer(cmp); in Pop()
66 uint64_t cnt = PointerAndCounter<T>::UnpackCounter(cmp); in Pop()
67 uint64_t xch = PointerAndCounter<T>::PackUnsafe(next, cnt); in Pop()
75 T* TopForTesting() { return PointerAndCounter<T>::UnpackPointer(head_); } in TopForTesting()
Dpointer_and_counter.h29 struct PointerAndCounter { struct
/frameworks/libs/binary_translation/base/
Dpointer_and_counter_test.cc25 TEST(PointerAndCounter, Smoke) { in TEST() argument
28 auto v = PointerAndCounter<int>::Pack(&x, uint64_t(0xffff)); in TEST()
29 EXPECT_EQ(&x, PointerAndCounter<int>::UnpackPointer(v)); in TEST()
30 EXPECT_EQ(uint64_t(0xffff), PointerAndCounter<int>::UnpackCounter(v)); in TEST()