]> rtime.felk.cvut.cz Git - ulut.git/commitdiff
Extend data queue FIFO to provide function which overwrites FIFO tail.
authorPavel Pisa <pisa@cmp.felk.cvut.cz>
Sun, 20 Oct 2013 22:24:30 +0000 (00:24 +0200)
committerPavel Pisa <pisa@cmp.felk.cvut.cz>
Sun, 20 Oct 2013 22:24:30 +0000 (00:24 +0200)
The generation of function named PREFIX_put_no_check() is added
to the set of UL_DQFIFO_CUST_DEC() generated functions.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
ulut/ul_dqfifo.h

index bcc92c4582aae2e4cb7c13d8394eee96dc01e6d1..0dd8f4dab5dc84b245e0a0d1a996d29aa8a5dc50 100644 (file)
@@ -84,6 +84,19 @@ cust_prefix##_is_empty(cust_prefix##_t *cdqf) \
 } \
 \
 cust_static_inline int \
+cust_prefix##_put_no_check(cust_prefix##_t *cdqf, const cust_data_t *data) \
+{ \
+  ul_dqfifo_loc_t locin; \
+  cust_barrier; \
+  locin = cdqf->dqf.locin; \
+  cdqf->buff[cust_prefix##_loc2idx(cdqf, locin)] = *data; \
+  cust_barrier; \
+  cdqf->dqf.locin = ++locin; \
+  cust_barrier; \
+  return 1; \
+} \
+\
+cust_static_inline int \
 cust_prefix##_put(cust_prefix##_t *cdqf, const cust_data_t *data) \
 { \
   ul_dqfifo_loc_t locin; \