Skip to content

Commit

Permalink
Revert "Factor out bitptr adjustment"
Browse files Browse the repository at this point in the history
This reverts commit a3bdbfc.
  • Loading branch information
lpereira committed May 9, 2024
1 parent bdaf9d4 commit 10e6865
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 8 deletions.
10 changes: 6 additions & 4 deletions src/lib/lwan-h2-huffman.c
Expand Up @@ -276,18 +276,20 @@ struct bit_reader {
static inline uint8_t peek_byte(struct bit_reader *reader)
{
if (reader->bitcount < 8) {
const uint64_t adjust = reader->bitcount + (reader->bitcount & 1);
if (reader->total_bitcount >= 64) {
reader->bitbuf |= read64be(reader->bitptr) >> reader->bitcount;
reader->bitptr += (63 - adjust) >> 3;
reader->bitptr +=
(63 - reader->bitcount + (reader->bitcount & 1)) >> 3;
reader->bitcount |= 56;
} else if (reader->total_bitcount >= 32) {
reader->bitbuf |= read32be(reader->bitptr) >> reader->bitcount;
reader->bitptr += (31 - adjust) >> 3;
reader->bitptr +=
(31 - reader->bitcount + (reader->bitcount & 1)) >> 3;
reader->bitcount |= 24;
} else {
reader->bitbuf |= *reader->bitptr >> reader->bitcount;
reader->bitptr += (7 - adjust) >> 3;
reader->bitptr +=
(7 - reader->bitcount + (reader->bitcount & 1)) >> 3;
reader->bitcount |= 8;
}
}
Expand Down
7 changes: 3 additions & 4 deletions src/scripts/gentables.py
Expand Up @@ -182,18 +182,17 @@ def generate_level(level, next_table):
static inline uint8_t peek_byte(struct bit_reader *reader)
{
if (reader->bitcount < 8) {
const uint64_t adjust = reader->bitcount + (reader->bitcount & 1);
if (reader->total_bitcount >= 64) {
reader->bitbuf |= read64be(reader->bitptr) >> reader->bitcount;
reader->bitptr += (63 - adjust) >> 3;
reader->bitptr += (63 - reader->bitcount + (reader->bitcount & 1)) >> 3;
reader->bitcount |= 56;
} else if (reader->total_bitcount >= 32) {
reader->bitbuf |= read32be(reader->bitptr) >> reader->bitcount;
reader->bitptr += (31 - adjust) >> 3;
reader->bitptr += (31 - reader->bitcount + (reader->bitcount & 1)) >> 3;
reader->bitcount |= 24;
} else {
reader->bitbuf |= *reader->bitptr >> reader->bitcount;
reader->bitptr += (7 - adjust) >> 3;
reader->bitptr += (7 - reader->bitcount + (reader->bitcount & 1)) >> 3;
reader->bitcount |= 8;
}
}
Expand Down

0 comments on commit 10e6865

Please sign in to comment.