12345678910111213141516171819202122232425262728293031 |
- #pragma once
- #include "foundation/types.h"
- #include "nu/queue_node.h"
- #include "foundation/align.h"
- #ifdef __cplusplus
- extern "C" {
- #endif
- typedef NALIGN(8) struct lifo_struct_t
- {
- volatile queue_node_t *head;
- uint32_t aba;
- } lifo_t;
-
- queue_node_t *lifo_malloc(size_t bytes);
- void lifo_free(queue_node_t *ptr);
- void lifo_init(lifo_t *lifo);
- void lifo_push(lifo_t *lifo, queue_node_t *cl);
- queue_node_t *lifo_pop(lifo_t *lifo);
-
- #ifdef __cplusplus
- }
- #endif
|