Skip to content
Snippets Groups Projects
Commit b20512d2 authored by Moritz Hanke's avatar Moritz Hanke Committed by Thomas Jahns
Browse files

unrolling in fill_acc

parent 69837c2f
No related branches found
No related tags found
No related merge requests found
...@@ -220,8 +220,25 @@ static inline void fill_acc(struct aec_stream *strm) ...@@ -220,8 +220,25 @@ static inline void fill_acc(struct aec_stream *strm)
strm->avail_in -= b; strm->avail_in -= b;
strm->state->bitp += b << 3; strm->state->bitp += b << 3;
while (b--)
switch (b) {
case (7):
strm->state->acc = (strm->state->acc << 8) | *strm->next_in++;
case (6):
strm->state->acc = (strm->state->acc << 8) | *strm->next_in++;
case (5):
strm->state->acc = (strm->state->acc << 8) | *strm->next_in++;
case (4):
strm->state->acc = (strm->state->acc << 8) | *strm->next_in++; strm->state->acc = (strm->state->acc << 8) | *strm->next_in++;
case (3):
strm->state->acc = (strm->state->acc << 8) | *strm->next_in++;
case (2):
strm->state->acc = (strm->state->acc << 8) | *strm->next_in++;
case (1):
strm->state->acc = (strm->state->acc << 8) | *strm->next_in++;
};
} }
static inline uint32_t direct_get(struct aec_stream *strm, unsigned int n) static inline uint32_t direct_get(struct aec_stream *strm, unsigned int n)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment