Optimization: replace a division into a conditional move.
This commit is contained in:
1 parent
55332d61fd
commit
aede0547d3
1 file changed
+3
-3
+3
-3
@@ -256,7 +256,7 @@ M_C(name, _init)(buffer_t v, size_t size) \
|
||||
v->overwrite++; \
|
||||
/* Let's clear the last element to overwrite it */ \
|
||||
if (!BUFFERI_POLICY_P((policy), BUFFER_STACK)) { \
|
||||
v->idx_prod = (v->idx_prod - 1) % BUFFERI_SIZE(m_size); \
|
||||
v->idx_prod = (v->idx_prod == 0) ? BUFFERI_SIZE(m_size)-1 : (v->idx_prod - 1); \
|
||||
} else { \
|
||||
(v->idx_prod) --; \
|
||||
} \
|
||||
@@ -279,7 +279,7 @@ M_C(name, _init)(buffer_t v, size_t size) \
|
||||
\
|
||||
/* Increment production INDEX of the buffer */ \
|
||||
if (!BUFFERI_POLICY_P((policy), BUFFER_STACK)) { \
|
||||
v->idx_prod = (v->idx_prod +1) % BUFFERI_SIZE(m_size); \
|
||||
v->idx_prod = (v->idx_prod == BUFFERI_SIZE(m_size)-1) ? 0 : (v->idx_prod + 1); \
|
||||
} else { \
|
||||
(v->idx_prod) ++; \
|
||||
} \
|
||||
@@ -332,7 +332,7 @@ M_C(name, _init)(buffer_t v, size_t size) \
|
||||
} else { \
|
||||
M_DO_INIT_MOVE (oplist, *data, v->data[v->idx_cons]); \
|
||||
} \
|
||||
v->idx_cons = (v->idx_cons +1) % BUFFERI_SIZE(m_size); \
|
||||
v->idx_cons = (v->idx_cons == BUFFERI_SIZE(m_size)-1) ? 0 : (v->idx_cons + 1); \
|
||||
} else { \
|
||||
/* STACK queue */ \
|
||||
v->idx_prod --; \
|
||||
|
||||
Reference in new issue
Block a user