lifo               25 opal/class/opal_lifo.c static void opal_lifo_construct (opal_lifo_t *lifo)
lifo               27 opal/class/opal_lifo.c     OBJ_CONSTRUCT(&lifo->opal_lifo_ghost, opal_list_item_t);
lifo               28 opal/class/opal_lifo.c     lifo->opal_lifo_ghost.opal_list_next = &lifo->opal_lifo_ghost;
lifo               29 opal/class/opal_lifo.c     lifo->opal_lifo_head.data.item = (intptr_t) &lifo->opal_lifo_ghost;
lifo               30 opal/class/opal_lifo.c     lifo->opal_lifo_head.data.counter = 0;
lifo              133 opal/class/opal_lifo.h static inline bool opal_lifo_is_empty( opal_lifo_t* lifo )
lifo              135 opal/class/opal_lifo.h     return (opal_list_item_t *) lifo->opal_lifo_head.data.item == &lifo->opal_lifo_ghost;
lifo              145 opal/class/opal_lifo.h static inline opal_list_item_t *opal_lifo_push_atomic (opal_lifo_t *lifo,
lifo              148 opal/class/opal_lifo.h     opal_list_item_t *next = (opal_list_item_t *) lifo->opal_lifo_head.data.item;
lifo              155 opal/class/opal_lifo.h         if (opal_atomic_compare_exchange_strong_ptr (&lifo->opal_lifo_head.data.item, (intptr_t *) &next, (intptr_t) item)) {
lifo              165 opal/class/opal_lifo.h static inline opal_list_item_t *opal_lifo_pop_atomic (opal_lifo_t* lifo)
lifo              170 opal/class/opal_lifo.h     opal_read_counted_pointer (&lifo->opal_lifo_head, &old_head);
lifo              174 opal/class/opal_lifo.h         if (item == &lifo->opal_lifo_ghost) {
lifo              178 opal/class/opal_lifo.h         if (opal_update_counted_pointer (&lifo->opal_lifo_head, &old_head,
lifo              193 opal/class/opal_lifo.h static inline opal_list_item_t *opal_lifo_push_atomic (opal_lifo_t *lifo,
lifo              196 opal/class/opal_lifo.h     opal_list_item_t *next = (opal_list_item_t *) lifo->opal_lifo_head.data.item;
lifo              204 opal/class/opal_lifo.h         if (opal_atomic_compare_exchange_strong_ptr (&lifo->opal_lifo_head.data.item, (intptr_t *) &next, (intptr_t) item)) {
lifo              219 opal/class/opal_lifo.h static inline opal_list_item_t *opal_lifo_pop_atomic (opal_lifo_t* lifo)
lifo              232 opal/class/opal_lifo.h         opal_atomic_ll_ptr(&lifo->opal_lifo_head.data.item, item);
lifo              233 opal/class/opal_lifo.h         if (&lifo->opal_lifo_ghost == item) {
lifo              238 opal/class/opal_lifo.h         opal_atomic_sc_ptr(&lifo->opal_lifo_head.data.item, next, ret);
lifo              252 opal/class/opal_lifo.h static inline opal_list_item_t *opal_lifo_pop_atomic (opal_lifo_t* lifo)
lifo              254 opal/class/opal_lifo.h     opal_list_item_t *item, *head, *ghost = &lifo->opal_lifo_ghost;
lifo              256 opal/class/opal_lifo.h     while ((item=(opal_list_item_t *)lifo->opal_lifo_head.data.item) != ghost) {
lifo              266 opal/class/opal_lifo.h         if (opal_atomic_compare_exchange_strong_ptr (&lifo->opal_lifo_head.data.item, (intptr_t *) &head,
lifo              278 opal/class/opal_lifo.h     if (item == &lifo->opal_lifo_ghost) {
lifo              293 opal/class/opal_lifo.h static inline opal_list_item_t *opal_lifo_push_st (opal_lifo_t *lifo,
lifo              296 opal/class/opal_lifo.h     item->opal_list_next = (opal_list_item_t *) lifo->opal_lifo_head.data.item;
lifo              298 opal/class/opal_lifo.h     lifo->opal_lifo_head.data.item = (intptr_t) item;
lifo              302 opal/class/opal_lifo.h static inline opal_list_item_t *opal_lifo_pop_st (opal_lifo_t *lifo)
lifo              305 opal/class/opal_lifo.h     item = (opal_list_item_t *) lifo->opal_lifo_head.data.item;
lifo              306 opal/class/opal_lifo.h     lifo->opal_lifo_head.data.item = (intptr_t) item->opal_list_next;
lifo              307 opal/class/opal_lifo.h     if (item == &lifo->opal_lifo_ghost) {
lifo              317 opal/class/opal_lifo.h static inline opal_list_item_t *opal_lifo_push (opal_lifo_t *lifo,
lifo              321 opal/class/opal_lifo.h         return opal_lifo_push_atomic (lifo, item);
lifo              324 opal/class/opal_lifo.h     return opal_lifo_push_st (lifo, item);
lifo              327 opal/class/opal_lifo.h static inline opal_list_item_t *opal_lifo_pop (opal_lifo_t *lifo)
lifo              330 opal/class/opal_lifo.h         return opal_lifo_pop_atomic (lifo);
lifo              333 opal/class/opal_lifo.h     return opal_lifo_pop_st (lifo);
lifo               43 test/class/opal_lifo.c     opal_lifo_t *lifo = (opal_lifo_t *) arg;
lifo               50 test/class/opal_lifo.c         item = opal_lifo_pop_atomic (lifo);
lifo               52 test/class/opal_lifo.c             (void) opal_lifo_push_atomic (lifo, item);
lifo               67 test/class/opal_lifo.c static bool check_lifo_consistency (opal_lifo_t *lifo, int expected_count)
lifo               72 test/class/opal_lifo.c     for (count = 0, item = lifo->opal_lifo_head.data.item ; item != &lifo->opal_lifo_ghost ;
lifo               82 test/class/opal_lifo.c     opal_lifo_t lifo;
lifo               96 test/class/opal_lifo.c     OBJ_CONSTRUCT(&lifo, opal_lifo_t);
lifo               99 test/class/opal_lifo.c     prev = opal_lifo_push_st (&lifo, item);
lifo              100 test/class/opal_lifo.c     if (&lifo.opal_lifo_ghost == prev) {
lifo              106 test/class/opal_lifo.c     item2 = opal_lifo_pop_st (&lifo);
lifo              118 test/class/opal_lifo.c         opal_lifo_push_st (&lifo, item);
lifo              121 test/class/opal_lifo.c     if (check_lifo_consistency (&lifo, ITEM_COUNT)) {
lifo              129 test/class/opal_lifo.c         item = opal_lifo_pop_st (&lifo);
lifo              130 test/class/opal_lifo.c         (void) opal_lifo_push_st (&lifo, item);
lifo              138 test/class/opal_lifo.c     if (check_lifo_consistency (&lifo, ITEM_COUNT)) {
lifo              147 test/class/opal_lifo.c     thread_test (&lifo);
lifo              149 test/class/opal_lifo.c     if (check_lifo_consistency (&lifo, ITEM_COUNT)) {
lifo              157 test/class/opal_lifo.c         pthread_create (threads + i, NULL, thread_test, &lifo);
lifo              171 test/class/opal_lifo.c     if (check_lifo_consistency (&lifo, ITEM_COUNT)) {
lifo              182 test/class/opal_lifo.c         item = opal_lifo_pop_st (&lifo);
lifo              196 test/class/opal_lifo.c     OBJ_DESTRUCT(&lifo);