/src/dovecot/src/lib/bits.h
Line | Count | Source |
1 | | #ifndef BITS_H |
2 | | #define BITS_H |
3 | | |
4 | | #define UINT64_SUM_OVERFLOWS(a, b) \ |
5 | | (a > (uint64_t)-1 - b) |
6 | | |
7 | | #define BIT(n) (1u << (n)) |
8 | | |
9 | | /* These expressions make it easy to ensure that bit test expressions |
10 | | are boolean in order to satisfy the in-house -Wstrict-bool. */ |
11 | | /* ((val & bits) == 0) is very common */ |
12 | | #define HAS_NO_BITS(val,bits) (((val) & (bits)) == 0) |
13 | | /* ((val & bits) != 0) is even more common */ |
14 | | /* Note - illogical behaviour if bits==0, fixing that requires potential |
15 | | multiple evaluation, but it's a corner case that should never occur. */ |
16 | 0 | #define HAS_ANY_BITS(val,bits) (((val) & (bits)) != 0) |
17 | | /* ((val & bits) == bits) is uncommon */ |
18 | 670k | #define HAS_ALL_BITS(val,bits) ((~(val) & (bits)) == 0) |
19 | | |
20 | | /* negation implemented without using the subtraction operator |
21 | | ~(x - 1) = 1 + ~x these are equivalent by -(-x) == ~(~(x)) == x */ |
22 | 12.0k | #define UNSIGNED_MINUS(x) (1 + ~(x)) |
23 | | |
24 | | /* Returns x, such that x is the smallest power of 2 >= num. */ |
25 | | size_t nearest_power(size_t num) ATTR_CONST; |
26 | | |
27 | | /* Return the idx'th bit from a uint64_t array used as a bitmap. */ |
28 | | static inline bool bit64_get(const uint64_t *bits, unsigned int idx) |
29 | 0 | { |
30 | 0 | return (bits[idx / 64] & (1ULL << (idx % 64))) != 0; |
31 | 0 | } Unexecuted instantiation: fuzz-http-response-parser.c:bit64_get Unexecuted instantiation: http-response-parser.c:bit64_get Unexecuted instantiation: http-date.c:bit64_get Unexecuted instantiation: http-parser.c:bit64_get Unexecuted instantiation: http-header.c:bit64_get Unexecuted instantiation: http-message-parser.c:bit64_get Unexecuted instantiation: http-header-parser.c:bit64_get Unexecuted instantiation: http-transfer-chunked.c:bit64_get Unexecuted instantiation: fuzzer.c:bit64_get Unexecuted instantiation: test-istream.c:bit64_get Unexecuted instantiation: buffer.c:bit64_get Unexecuted instantiation: data-stack.c:bit64_get Unexecuted instantiation: event-log.c:bit64_get Unexecuted instantiation: failures.c:bit64_get Unexecuted instantiation: fd-util.c:bit64_get Unexecuted instantiation: hostpid.c:bit64_get Unexecuted instantiation: imem.c:bit64_get Unexecuted instantiation: iostream.c:bit64_get Unexecuted instantiation: iostream-pump.c:bit64_get Unexecuted instantiation: istream.c:bit64_get Unexecuted instantiation: istream-data.c:bit64_get Unexecuted instantiation: istream-file.c:bit64_get Unexecuted instantiation: istream-limit.c:bit64_get Unexecuted instantiation: istream-sized.c:bit64_get Unexecuted instantiation: ioloop.c:bit64_get Unexecuted instantiation: ioloop-notify-inotify.c:bit64_get Unexecuted instantiation: ioloop-epoll.c:bit64_get Unexecuted instantiation: lib.c:bit64_get Unexecuted instantiation: lib-event.c:bit64_get Unexecuted instantiation: lib-signals.c:bit64_get Unexecuted instantiation: memarea.c:bit64_get Unexecuted instantiation: mempool.c:bit64_get Unexecuted instantiation: mempool-alloconly.c:bit64_get Unexecuted instantiation: mempool-datastack.c:bit64_get Unexecuted instantiation: mempool-system.c:bit64_get Unexecuted instantiation: mempool-unsafe-datastack.c:bit64_get Unexecuted instantiation: net.c:bit64_get Unexecuted instantiation: ostream.c:bit64_get Unexecuted instantiation: ostream-file.c:bit64_get Unexecuted instantiation: path-util.c:bit64_get Unexecuted instantiation: printf-format-fix.c:bit64_get Unexecuted instantiation: process-title.c:bit64_get Unexecuted instantiation: priorityq.c:bit64_get Unexecuted instantiation: randgen.c:bit64_get Unexecuted instantiation: rand.c:bit64_get Unexecuted instantiation: restrict-access.c:bit64_get Unexecuted instantiation: safe-memset.c:bit64_get Unexecuted instantiation: sendfile-util.c:bit64_get Unexecuted instantiation: sleep.c:bit64_get Unexecuted instantiation: str.c:bit64_get Unexecuted instantiation: str-sanitize.c:bit64_get Unexecuted instantiation: strescape.c:bit64_get Unexecuted instantiation: strfuncs.c:bit64_get Unexecuted instantiation: strnum.c:bit64_get Unexecuted instantiation: time-util.c:bit64_get Unexecuted instantiation: unichar.c:bit64_get Unexecuted instantiation: unicode-break.c:bit64_get Unexecuted instantiation: unicode-data-tables.c:bit64_get Unexecuted instantiation: unicode-transform.c:bit64_get Unexecuted instantiation: utc-mktime.c:bit64_get Unexecuted instantiation: write-full.c:bit64_get Unexecuted instantiation: array.c:bit64_get Unexecuted instantiation: backtrace-string.c:bit64_get Unexecuted instantiation: bits.c:bit64_get Unexecuted instantiation: env-util.c:bit64_get Unexecuted instantiation: event-filter.c:bit64_get Unexecuted instantiation: event-filter-lexer.c:bit64_get Unexecuted instantiation: event-filter-parser.c:bit64_get Unexecuted instantiation: hash.c:bit64_get Unexecuted instantiation: hmac.c:bit64_get Unexecuted instantiation: ipwd.c:bit64_get Unexecuted instantiation: ioloop-iolist.c:bit64_get Unexecuted instantiation: ioloop-notify-fd.c:bit64_get Unexecuted instantiation: primes.c:bit64_get Unexecuted instantiation: sha2.c:bit64_get Unexecuted instantiation: xxh64.c:bit64_get Unexecuted instantiation: str-parse.c:bit64_get Unexecuted instantiation: wildcard-match.c:bit64_get |
32 | | |
33 | | /* Set the idx'th bit in a uint64_t array used as a bitmap. */ |
34 | | static inline void bit64_set(uint64_t *bits, unsigned int idx) |
35 | 0 | { |
36 | 0 | bits[idx / 64] |= 1ULL << (idx % 64); |
37 | 0 | } Unexecuted instantiation: fuzz-http-response-parser.c:bit64_set Unexecuted instantiation: http-response-parser.c:bit64_set Unexecuted instantiation: http-date.c:bit64_set Unexecuted instantiation: http-parser.c:bit64_set Unexecuted instantiation: http-header.c:bit64_set Unexecuted instantiation: http-message-parser.c:bit64_set Unexecuted instantiation: http-header-parser.c:bit64_set Unexecuted instantiation: http-transfer-chunked.c:bit64_set Unexecuted instantiation: fuzzer.c:bit64_set Unexecuted instantiation: test-istream.c:bit64_set Unexecuted instantiation: buffer.c:bit64_set Unexecuted instantiation: data-stack.c:bit64_set Unexecuted instantiation: event-log.c:bit64_set Unexecuted instantiation: failures.c:bit64_set Unexecuted instantiation: fd-util.c:bit64_set Unexecuted instantiation: hostpid.c:bit64_set Unexecuted instantiation: imem.c:bit64_set Unexecuted instantiation: iostream.c:bit64_set Unexecuted instantiation: iostream-pump.c:bit64_set Unexecuted instantiation: istream.c:bit64_set Unexecuted instantiation: istream-data.c:bit64_set Unexecuted instantiation: istream-file.c:bit64_set Unexecuted instantiation: istream-limit.c:bit64_set Unexecuted instantiation: istream-sized.c:bit64_set Unexecuted instantiation: ioloop.c:bit64_set Unexecuted instantiation: ioloop-notify-inotify.c:bit64_set Unexecuted instantiation: ioloop-epoll.c:bit64_set Unexecuted instantiation: lib.c:bit64_set Unexecuted instantiation: lib-event.c:bit64_set Unexecuted instantiation: lib-signals.c:bit64_set Unexecuted instantiation: memarea.c:bit64_set Unexecuted instantiation: mempool.c:bit64_set Unexecuted instantiation: mempool-alloconly.c:bit64_set Unexecuted instantiation: mempool-datastack.c:bit64_set Unexecuted instantiation: mempool-system.c:bit64_set Unexecuted instantiation: mempool-unsafe-datastack.c:bit64_set Unexecuted instantiation: net.c:bit64_set Unexecuted instantiation: ostream.c:bit64_set Unexecuted instantiation: ostream-file.c:bit64_set Unexecuted instantiation: path-util.c:bit64_set Unexecuted instantiation: printf-format-fix.c:bit64_set Unexecuted instantiation: process-title.c:bit64_set Unexecuted instantiation: priorityq.c:bit64_set Unexecuted instantiation: randgen.c:bit64_set Unexecuted instantiation: rand.c:bit64_set Unexecuted instantiation: restrict-access.c:bit64_set Unexecuted instantiation: safe-memset.c:bit64_set Unexecuted instantiation: sendfile-util.c:bit64_set Unexecuted instantiation: sleep.c:bit64_set Unexecuted instantiation: str.c:bit64_set Unexecuted instantiation: str-sanitize.c:bit64_set Unexecuted instantiation: strescape.c:bit64_set Unexecuted instantiation: strfuncs.c:bit64_set Unexecuted instantiation: strnum.c:bit64_set Unexecuted instantiation: time-util.c:bit64_set Unexecuted instantiation: unichar.c:bit64_set Unexecuted instantiation: unicode-break.c:bit64_set Unexecuted instantiation: unicode-data-tables.c:bit64_set Unexecuted instantiation: unicode-transform.c:bit64_set Unexecuted instantiation: utc-mktime.c:bit64_set Unexecuted instantiation: write-full.c:bit64_set Unexecuted instantiation: array.c:bit64_set Unexecuted instantiation: backtrace-string.c:bit64_set Unexecuted instantiation: bits.c:bit64_set Unexecuted instantiation: env-util.c:bit64_set Unexecuted instantiation: event-filter.c:bit64_set Unexecuted instantiation: event-filter-lexer.c:bit64_set Unexecuted instantiation: event-filter-parser.c:bit64_set Unexecuted instantiation: hash.c:bit64_set Unexecuted instantiation: hmac.c:bit64_set Unexecuted instantiation: ipwd.c:bit64_set Unexecuted instantiation: ioloop-iolist.c:bit64_set Unexecuted instantiation: ioloop-notify-fd.c:bit64_set Unexecuted instantiation: primes.c:bit64_set Unexecuted instantiation: sha2.c:bit64_set Unexecuted instantiation: xxh64.c:bit64_set Unexecuted instantiation: str-parse.c:bit64_set Unexecuted instantiation: wildcard-match.c:bit64_set |
38 | | |
39 | | #if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4) |
40 | | |
41 | | /* Returns TRUE if 2^x=num, i.e. if num has only a single bit set to 1. */ |
42 | | static inline bool ATTR_CONST |
43 | | bits_is_power_of_two(uint64_t num) |
44 | 0 | { |
45 | 0 | return __builtin_popcountll(num) == 1; |
46 | 0 | } Unexecuted instantiation: fuzz-http-response-parser.c:bits_is_power_of_two Unexecuted instantiation: http-response-parser.c:bits_is_power_of_two Unexecuted instantiation: http-date.c:bits_is_power_of_two Unexecuted instantiation: http-parser.c:bits_is_power_of_two Unexecuted instantiation: http-header.c:bits_is_power_of_two Unexecuted instantiation: http-message-parser.c:bits_is_power_of_two Unexecuted instantiation: http-header-parser.c:bits_is_power_of_two Unexecuted instantiation: http-transfer-chunked.c:bits_is_power_of_two Unexecuted instantiation: fuzzer.c:bits_is_power_of_two Unexecuted instantiation: test-istream.c:bits_is_power_of_two Unexecuted instantiation: buffer.c:bits_is_power_of_two Unexecuted instantiation: data-stack.c:bits_is_power_of_two Unexecuted instantiation: event-log.c:bits_is_power_of_two Unexecuted instantiation: failures.c:bits_is_power_of_two Unexecuted instantiation: fd-util.c:bits_is_power_of_two Unexecuted instantiation: hostpid.c:bits_is_power_of_two Unexecuted instantiation: imem.c:bits_is_power_of_two Unexecuted instantiation: iostream.c:bits_is_power_of_two Unexecuted instantiation: iostream-pump.c:bits_is_power_of_two Unexecuted instantiation: istream.c:bits_is_power_of_two Unexecuted instantiation: istream-data.c:bits_is_power_of_two Unexecuted instantiation: istream-file.c:bits_is_power_of_two Unexecuted instantiation: istream-limit.c:bits_is_power_of_two Unexecuted instantiation: istream-sized.c:bits_is_power_of_two Unexecuted instantiation: ioloop.c:bits_is_power_of_two Unexecuted instantiation: ioloop-notify-inotify.c:bits_is_power_of_two Unexecuted instantiation: ioloop-epoll.c:bits_is_power_of_two Unexecuted instantiation: lib.c:bits_is_power_of_two Unexecuted instantiation: lib-event.c:bits_is_power_of_two Unexecuted instantiation: lib-signals.c:bits_is_power_of_two Unexecuted instantiation: memarea.c:bits_is_power_of_two Unexecuted instantiation: mempool.c:bits_is_power_of_two Unexecuted instantiation: mempool-alloconly.c:bits_is_power_of_two Unexecuted instantiation: mempool-datastack.c:bits_is_power_of_two Unexecuted instantiation: mempool-system.c:bits_is_power_of_two Unexecuted instantiation: mempool-unsafe-datastack.c:bits_is_power_of_two Unexecuted instantiation: net.c:bits_is_power_of_two Unexecuted instantiation: ostream.c:bits_is_power_of_two Unexecuted instantiation: ostream-file.c:bits_is_power_of_two Unexecuted instantiation: path-util.c:bits_is_power_of_two Unexecuted instantiation: printf-format-fix.c:bits_is_power_of_two Unexecuted instantiation: process-title.c:bits_is_power_of_two Unexecuted instantiation: priorityq.c:bits_is_power_of_two Unexecuted instantiation: randgen.c:bits_is_power_of_two Unexecuted instantiation: rand.c:bits_is_power_of_two Unexecuted instantiation: restrict-access.c:bits_is_power_of_two Unexecuted instantiation: safe-memset.c:bits_is_power_of_two Unexecuted instantiation: sendfile-util.c:bits_is_power_of_two Unexecuted instantiation: sleep.c:bits_is_power_of_two Unexecuted instantiation: str.c:bits_is_power_of_two Unexecuted instantiation: str-sanitize.c:bits_is_power_of_two Unexecuted instantiation: strescape.c:bits_is_power_of_two Unexecuted instantiation: strfuncs.c:bits_is_power_of_two Unexecuted instantiation: strnum.c:bits_is_power_of_two Unexecuted instantiation: time-util.c:bits_is_power_of_two Unexecuted instantiation: unichar.c:bits_is_power_of_two Unexecuted instantiation: unicode-break.c:bits_is_power_of_two Unexecuted instantiation: unicode-data-tables.c:bits_is_power_of_two Unexecuted instantiation: unicode-transform.c:bits_is_power_of_two Unexecuted instantiation: utc-mktime.c:bits_is_power_of_two Unexecuted instantiation: write-full.c:bits_is_power_of_two Unexecuted instantiation: array.c:bits_is_power_of_two Unexecuted instantiation: backtrace-string.c:bits_is_power_of_two Unexecuted instantiation: bits.c:bits_is_power_of_two Unexecuted instantiation: env-util.c:bits_is_power_of_two Unexecuted instantiation: event-filter.c:bits_is_power_of_two Unexecuted instantiation: event-filter-lexer.c:bits_is_power_of_two Unexecuted instantiation: event-filter-parser.c:bits_is_power_of_two Unexecuted instantiation: hash.c:bits_is_power_of_two Unexecuted instantiation: hmac.c:bits_is_power_of_two Unexecuted instantiation: ipwd.c:bits_is_power_of_two Unexecuted instantiation: ioloop-iolist.c:bits_is_power_of_two Unexecuted instantiation: ioloop-notify-fd.c:bits_is_power_of_two Unexecuted instantiation: primes.c:bits_is_power_of_two Unexecuted instantiation: sha2.c:bits_is_power_of_two Unexecuted instantiation: xxh64.c:bits_is_power_of_two Unexecuted instantiation: str-parse.c:bits_is_power_of_two Unexecuted instantiation: wildcard-match.c:bits_is_power_of_two |
47 | | |
48 | | static inline unsigned int ATTR_CONST |
49 | | bits_required32(uint32_t num) |
50 | 0 | { |
51 | 0 | return num == 0 ? 0 : 32 - __builtin_clz(num); |
52 | 0 | } Unexecuted instantiation: fuzz-http-response-parser.c:bits_required32 Unexecuted instantiation: http-response-parser.c:bits_required32 Unexecuted instantiation: http-date.c:bits_required32 Unexecuted instantiation: http-parser.c:bits_required32 Unexecuted instantiation: http-header.c:bits_required32 Unexecuted instantiation: http-message-parser.c:bits_required32 Unexecuted instantiation: http-header-parser.c:bits_required32 Unexecuted instantiation: http-transfer-chunked.c:bits_required32 Unexecuted instantiation: fuzzer.c:bits_required32 Unexecuted instantiation: test-istream.c:bits_required32 Unexecuted instantiation: buffer.c:bits_required32 Unexecuted instantiation: data-stack.c:bits_required32 Unexecuted instantiation: event-log.c:bits_required32 Unexecuted instantiation: failures.c:bits_required32 Unexecuted instantiation: fd-util.c:bits_required32 Unexecuted instantiation: hostpid.c:bits_required32 Unexecuted instantiation: imem.c:bits_required32 Unexecuted instantiation: iostream.c:bits_required32 Unexecuted instantiation: iostream-pump.c:bits_required32 Unexecuted instantiation: istream.c:bits_required32 Unexecuted instantiation: istream-data.c:bits_required32 Unexecuted instantiation: istream-file.c:bits_required32 Unexecuted instantiation: istream-limit.c:bits_required32 Unexecuted instantiation: istream-sized.c:bits_required32 Unexecuted instantiation: ioloop.c:bits_required32 Unexecuted instantiation: ioloop-notify-inotify.c:bits_required32 Unexecuted instantiation: ioloop-epoll.c:bits_required32 Unexecuted instantiation: lib.c:bits_required32 Unexecuted instantiation: lib-event.c:bits_required32 Unexecuted instantiation: lib-signals.c:bits_required32 Unexecuted instantiation: memarea.c:bits_required32 Unexecuted instantiation: mempool.c:bits_required32 Unexecuted instantiation: mempool-alloconly.c:bits_required32 Unexecuted instantiation: mempool-datastack.c:bits_required32 Unexecuted instantiation: mempool-system.c:bits_required32 Unexecuted instantiation: mempool-unsafe-datastack.c:bits_required32 Unexecuted instantiation: net.c:bits_required32 Unexecuted instantiation: ostream.c:bits_required32 Unexecuted instantiation: ostream-file.c:bits_required32 Unexecuted instantiation: path-util.c:bits_required32 Unexecuted instantiation: printf-format-fix.c:bits_required32 Unexecuted instantiation: process-title.c:bits_required32 Unexecuted instantiation: priorityq.c:bits_required32 Unexecuted instantiation: randgen.c:bits_required32 Unexecuted instantiation: rand.c:bits_required32 Unexecuted instantiation: restrict-access.c:bits_required32 Unexecuted instantiation: safe-memset.c:bits_required32 Unexecuted instantiation: sendfile-util.c:bits_required32 Unexecuted instantiation: sleep.c:bits_required32 Unexecuted instantiation: str.c:bits_required32 Unexecuted instantiation: str-sanitize.c:bits_required32 Unexecuted instantiation: strescape.c:bits_required32 Unexecuted instantiation: strfuncs.c:bits_required32 Unexecuted instantiation: strnum.c:bits_required32 Unexecuted instantiation: time-util.c:bits_required32 Unexecuted instantiation: unichar.c:bits_required32 Unexecuted instantiation: unicode-break.c:bits_required32 Unexecuted instantiation: unicode-data-tables.c:bits_required32 Unexecuted instantiation: unicode-transform.c:bits_required32 Unexecuted instantiation: utc-mktime.c:bits_required32 Unexecuted instantiation: write-full.c:bits_required32 Unexecuted instantiation: array.c:bits_required32 Unexecuted instantiation: backtrace-string.c:bits_required32 Unexecuted instantiation: bits.c:bits_required32 Unexecuted instantiation: env-util.c:bits_required32 Unexecuted instantiation: event-filter.c:bits_required32 Unexecuted instantiation: event-filter-lexer.c:bits_required32 Unexecuted instantiation: event-filter-parser.c:bits_required32 Unexecuted instantiation: hash.c:bits_required32 Unexecuted instantiation: hmac.c:bits_required32 Unexecuted instantiation: ipwd.c:bits_required32 Unexecuted instantiation: ioloop-iolist.c:bits_required32 Unexecuted instantiation: ioloop-notify-fd.c:bits_required32 Unexecuted instantiation: primes.c:bits_required32 Unexecuted instantiation: sha2.c:bits_required32 Unexecuted instantiation: xxh64.c:bits_required32 Unexecuted instantiation: str-parse.c:bits_required32 Unexecuted instantiation: wildcard-match.c:bits_required32 |
53 | | static inline unsigned int ATTR_CONST |
54 | 0 | bits_required8(uint8_t num) { return bits_required32(num); }Unexecuted instantiation: fuzz-http-response-parser.c:bits_required8 Unexecuted instantiation: http-response-parser.c:bits_required8 Unexecuted instantiation: http-date.c:bits_required8 Unexecuted instantiation: http-parser.c:bits_required8 Unexecuted instantiation: http-header.c:bits_required8 Unexecuted instantiation: http-message-parser.c:bits_required8 Unexecuted instantiation: http-header-parser.c:bits_required8 Unexecuted instantiation: http-transfer-chunked.c:bits_required8 Unexecuted instantiation: fuzzer.c:bits_required8 Unexecuted instantiation: test-istream.c:bits_required8 Unexecuted instantiation: buffer.c:bits_required8 Unexecuted instantiation: data-stack.c:bits_required8 Unexecuted instantiation: event-log.c:bits_required8 Unexecuted instantiation: failures.c:bits_required8 Unexecuted instantiation: fd-util.c:bits_required8 Unexecuted instantiation: hostpid.c:bits_required8 Unexecuted instantiation: imem.c:bits_required8 Unexecuted instantiation: iostream.c:bits_required8 Unexecuted instantiation: iostream-pump.c:bits_required8 Unexecuted instantiation: istream.c:bits_required8 Unexecuted instantiation: istream-data.c:bits_required8 Unexecuted instantiation: istream-file.c:bits_required8 Unexecuted instantiation: istream-limit.c:bits_required8 Unexecuted instantiation: istream-sized.c:bits_required8 Unexecuted instantiation: ioloop.c:bits_required8 Unexecuted instantiation: ioloop-notify-inotify.c:bits_required8 Unexecuted instantiation: ioloop-epoll.c:bits_required8 Unexecuted instantiation: lib.c:bits_required8 Unexecuted instantiation: lib-event.c:bits_required8 Unexecuted instantiation: lib-signals.c:bits_required8 Unexecuted instantiation: memarea.c:bits_required8 Unexecuted instantiation: mempool.c:bits_required8 Unexecuted instantiation: mempool-alloconly.c:bits_required8 Unexecuted instantiation: mempool-datastack.c:bits_required8 Unexecuted instantiation: mempool-system.c:bits_required8 Unexecuted instantiation: mempool-unsafe-datastack.c:bits_required8 Unexecuted instantiation: net.c:bits_required8 Unexecuted instantiation: ostream.c:bits_required8 Unexecuted instantiation: ostream-file.c:bits_required8 Unexecuted instantiation: path-util.c:bits_required8 Unexecuted instantiation: printf-format-fix.c:bits_required8 Unexecuted instantiation: process-title.c:bits_required8 Unexecuted instantiation: priorityq.c:bits_required8 Unexecuted instantiation: randgen.c:bits_required8 Unexecuted instantiation: rand.c:bits_required8 Unexecuted instantiation: restrict-access.c:bits_required8 Unexecuted instantiation: safe-memset.c:bits_required8 Unexecuted instantiation: sendfile-util.c:bits_required8 Unexecuted instantiation: sleep.c:bits_required8 Unexecuted instantiation: str.c:bits_required8 Unexecuted instantiation: str-sanitize.c:bits_required8 Unexecuted instantiation: strescape.c:bits_required8 Unexecuted instantiation: strfuncs.c:bits_required8 Unexecuted instantiation: strnum.c:bits_required8 Unexecuted instantiation: time-util.c:bits_required8 Unexecuted instantiation: unichar.c:bits_required8 Unexecuted instantiation: unicode-break.c:bits_required8 Unexecuted instantiation: unicode-data-tables.c:bits_required8 Unexecuted instantiation: unicode-transform.c:bits_required8 Unexecuted instantiation: utc-mktime.c:bits_required8 Unexecuted instantiation: write-full.c:bits_required8 Unexecuted instantiation: array.c:bits_required8 Unexecuted instantiation: backtrace-string.c:bits_required8 Unexecuted instantiation: bits.c:bits_required8 Unexecuted instantiation: env-util.c:bits_required8 Unexecuted instantiation: event-filter.c:bits_required8 Unexecuted instantiation: event-filter-lexer.c:bits_required8 Unexecuted instantiation: event-filter-parser.c:bits_required8 Unexecuted instantiation: hash.c:bits_required8 Unexecuted instantiation: hmac.c:bits_required8 Unexecuted instantiation: ipwd.c:bits_required8 Unexecuted instantiation: ioloop-iolist.c:bits_required8 Unexecuted instantiation: ioloop-notify-fd.c:bits_required8 Unexecuted instantiation: primes.c:bits_required8 Unexecuted instantiation: sha2.c:bits_required8 Unexecuted instantiation: xxh64.c:bits_required8 Unexecuted instantiation: str-parse.c:bits_required8 Unexecuted instantiation: wildcard-match.c:bits_required8 |
55 | | |
56 | | static inline unsigned int ATTR_CONST |
57 | 0 | bits_required16(uint16_t num) { return bits_required32(num); }Unexecuted instantiation: fuzz-http-response-parser.c:bits_required16 Unexecuted instantiation: http-response-parser.c:bits_required16 Unexecuted instantiation: http-date.c:bits_required16 Unexecuted instantiation: http-parser.c:bits_required16 Unexecuted instantiation: http-header.c:bits_required16 Unexecuted instantiation: http-message-parser.c:bits_required16 Unexecuted instantiation: http-header-parser.c:bits_required16 Unexecuted instantiation: http-transfer-chunked.c:bits_required16 Unexecuted instantiation: fuzzer.c:bits_required16 Unexecuted instantiation: test-istream.c:bits_required16 Unexecuted instantiation: buffer.c:bits_required16 Unexecuted instantiation: data-stack.c:bits_required16 Unexecuted instantiation: event-log.c:bits_required16 Unexecuted instantiation: failures.c:bits_required16 Unexecuted instantiation: fd-util.c:bits_required16 Unexecuted instantiation: hostpid.c:bits_required16 Unexecuted instantiation: imem.c:bits_required16 Unexecuted instantiation: iostream.c:bits_required16 Unexecuted instantiation: iostream-pump.c:bits_required16 Unexecuted instantiation: istream.c:bits_required16 Unexecuted instantiation: istream-data.c:bits_required16 Unexecuted instantiation: istream-file.c:bits_required16 Unexecuted instantiation: istream-limit.c:bits_required16 Unexecuted instantiation: istream-sized.c:bits_required16 Unexecuted instantiation: ioloop.c:bits_required16 Unexecuted instantiation: ioloop-notify-inotify.c:bits_required16 Unexecuted instantiation: ioloop-epoll.c:bits_required16 Unexecuted instantiation: lib.c:bits_required16 Unexecuted instantiation: lib-event.c:bits_required16 Unexecuted instantiation: lib-signals.c:bits_required16 Unexecuted instantiation: memarea.c:bits_required16 Unexecuted instantiation: mempool.c:bits_required16 Unexecuted instantiation: mempool-alloconly.c:bits_required16 Unexecuted instantiation: mempool-datastack.c:bits_required16 Unexecuted instantiation: mempool-system.c:bits_required16 Unexecuted instantiation: mempool-unsafe-datastack.c:bits_required16 Unexecuted instantiation: net.c:bits_required16 Unexecuted instantiation: ostream.c:bits_required16 Unexecuted instantiation: ostream-file.c:bits_required16 Unexecuted instantiation: path-util.c:bits_required16 Unexecuted instantiation: printf-format-fix.c:bits_required16 Unexecuted instantiation: process-title.c:bits_required16 Unexecuted instantiation: priorityq.c:bits_required16 Unexecuted instantiation: randgen.c:bits_required16 Unexecuted instantiation: rand.c:bits_required16 Unexecuted instantiation: restrict-access.c:bits_required16 Unexecuted instantiation: safe-memset.c:bits_required16 Unexecuted instantiation: sendfile-util.c:bits_required16 Unexecuted instantiation: sleep.c:bits_required16 Unexecuted instantiation: str.c:bits_required16 Unexecuted instantiation: str-sanitize.c:bits_required16 Unexecuted instantiation: strescape.c:bits_required16 Unexecuted instantiation: strfuncs.c:bits_required16 Unexecuted instantiation: strnum.c:bits_required16 Unexecuted instantiation: time-util.c:bits_required16 Unexecuted instantiation: unichar.c:bits_required16 Unexecuted instantiation: unicode-break.c:bits_required16 Unexecuted instantiation: unicode-data-tables.c:bits_required16 Unexecuted instantiation: unicode-transform.c:bits_required16 Unexecuted instantiation: utc-mktime.c:bits_required16 Unexecuted instantiation: write-full.c:bits_required16 Unexecuted instantiation: array.c:bits_required16 Unexecuted instantiation: backtrace-string.c:bits_required16 Unexecuted instantiation: bits.c:bits_required16 Unexecuted instantiation: env-util.c:bits_required16 Unexecuted instantiation: event-filter.c:bits_required16 Unexecuted instantiation: event-filter-lexer.c:bits_required16 Unexecuted instantiation: event-filter-parser.c:bits_required16 Unexecuted instantiation: hash.c:bits_required16 Unexecuted instantiation: hmac.c:bits_required16 Unexecuted instantiation: ipwd.c:bits_required16 Unexecuted instantiation: ioloop-iolist.c:bits_required16 Unexecuted instantiation: ioloop-notify-fd.c:bits_required16 Unexecuted instantiation: primes.c:bits_required16 Unexecuted instantiation: sha2.c:bits_required16 Unexecuted instantiation: xxh64.c:bits_required16 Unexecuted instantiation: str-parse.c:bits_required16 Unexecuted instantiation: wildcard-match.c:bits_required16 |
58 | | |
59 | | static inline unsigned int ATTR_CONST |
60 | | bits_required64(uint64_t num) |
61 | 206k | { |
62 | 206k | return num == 0 ? 0 : 64 - __builtin_clzll(num); |
63 | 206k | } Unexecuted instantiation: fuzz-http-response-parser.c:bits_required64 Unexecuted instantiation: http-response-parser.c:bits_required64 Unexecuted instantiation: http-date.c:bits_required64 Unexecuted instantiation: http-parser.c:bits_required64 Unexecuted instantiation: http-header.c:bits_required64 Unexecuted instantiation: http-message-parser.c:bits_required64 Unexecuted instantiation: http-header-parser.c:bits_required64 Unexecuted instantiation: http-transfer-chunked.c:bits_required64 Unexecuted instantiation: fuzzer.c:bits_required64 Unexecuted instantiation: test-istream.c:bits_required64 Unexecuted instantiation: buffer.c:bits_required64 Unexecuted instantiation: data-stack.c:bits_required64 Unexecuted instantiation: event-log.c:bits_required64 Unexecuted instantiation: failures.c:bits_required64 Unexecuted instantiation: fd-util.c:bits_required64 Unexecuted instantiation: hostpid.c:bits_required64 Unexecuted instantiation: imem.c:bits_required64 Unexecuted instantiation: iostream.c:bits_required64 Unexecuted instantiation: iostream-pump.c:bits_required64 Unexecuted instantiation: istream.c:bits_required64 Unexecuted instantiation: istream-data.c:bits_required64 Unexecuted instantiation: istream-file.c:bits_required64 Unexecuted instantiation: istream-limit.c:bits_required64 Unexecuted instantiation: istream-sized.c:bits_required64 Unexecuted instantiation: ioloop.c:bits_required64 Unexecuted instantiation: ioloop-notify-inotify.c:bits_required64 Unexecuted instantiation: ioloop-epoll.c:bits_required64 Unexecuted instantiation: lib.c:bits_required64 Unexecuted instantiation: lib-event.c:bits_required64 Unexecuted instantiation: lib-signals.c:bits_required64 Unexecuted instantiation: memarea.c:bits_required64 Unexecuted instantiation: mempool.c:bits_required64 Unexecuted instantiation: mempool-alloconly.c:bits_required64 Unexecuted instantiation: mempool-datastack.c:bits_required64 Unexecuted instantiation: mempool-system.c:bits_required64 Unexecuted instantiation: mempool-unsafe-datastack.c:bits_required64 Unexecuted instantiation: net.c:bits_required64 Unexecuted instantiation: ostream.c:bits_required64 Unexecuted instantiation: ostream-file.c:bits_required64 Unexecuted instantiation: path-util.c:bits_required64 Unexecuted instantiation: printf-format-fix.c:bits_required64 Unexecuted instantiation: process-title.c:bits_required64 Unexecuted instantiation: priorityq.c:bits_required64 Unexecuted instantiation: randgen.c:bits_required64 Unexecuted instantiation: rand.c:bits_required64 Unexecuted instantiation: restrict-access.c:bits_required64 Unexecuted instantiation: safe-memset.c:bits_required64 Unexecuted instantiation: sendfile-util.c:bits_required64 Unexecuted instantiation: sleep.c:bits_required64 Unexecuted instantiation: str.c:bits_required64 Unexecuted instantiation: str-sanitize.c:bits_required64 Unexecuted instantiation: strescape.c:bits_required64 Unexecuted instantiation: strfuncs.c:bits_required64 Unexecuted instantiation: strnum.c:bits_required64 Unexecuted instantiation: time-util.c:bits_required64 Unexecuted instantiation: unichar.c:bits_required64 Unexecuted instantiation: unicode-break.c:bits_required64 Unexecuted instantiation: unicode-data-tables.c:bits_required64 Unexecuted instantiation: unicode-transform.c:bits_required64 Unexecuted instantiation: utc-mktime.c:bits_required64 Unexecuted instantiation: write-full.c:bits_required64 Unexecuted instantiation: array.c:bits_required64 Unexecuted instantiation: backtrace-string.c:bits_required64 Line | Count | Source | 61 | 206k | { | 62 | 206k | return num == 0 ? 0 : 64 - __builtin_clzll(num); | 63 | 206k | } |
Unexecuted instantiation: env-util.c:bits_required64 Unexecuted instantiation: event-filter.c:bits_required64 Unexecuted instantiation: event-filter-lexer.c:bits_required64 Unexecuted instantiation: event-filter-parser.c:bits_required64 Unexecuted instantiation: hash.c:bits_required64 Unexecuted instantiation: hmac.c:bits_required64 Unexecuted instantiation: ipwd.c:bits_required64 Unexecuted instantiation: ioloop-iolist.c:bits_required64 Unexecuted instantiation: ioloop-notify-fd.c:bits_required64 Unexecuted instantiation: primes.c:bits_required64 Unexecuted instantiation: sha2.c:bits_required64 Unexecuted instantiation: xxh64.c:bits_required64 Unexecuted instantiation: str-parse.c:bits_required64 Unexecuted instantiation: wildcard-match.c:bits_required64 |
64 | | |
65 | | #else |
66 | | |
67 | | /* Returns TRUE if 2^x=num, i.e. if num has only a single bit set to 1. */ |
68 | | static inline bool ATTR_CONST |
69 | | bits_is_power_of_two(uint64_t num) |
70 | | { |
71 | | return num != 0 && (num & (num + ~0ULL)) == 0; |
72 | | } |
73 | | |
74 | | unsigned int bits_required8(uint8_t num) ATTR_CONST; |
75 | | |
76 | | static inline |
77 | | unsigned int bits_required16(uint16_t num) |
78 | | { |
79 | | return (num <= 0xff) ? bits_required8(num) |
80 | | : 8 + bits_required8(num >> 8); |
81 | | } |
82 | | static inline |
83 | | unsigned int bits_required32(uint32_t num) |
84 | | { |
85 | | return (num <= 0xffff) ? bits_required16(num) |
86 | | : 16 + bits_required16(num >> 16); |
87 | | } |
88 | | static inline |
89 | | unsigned int bits_required64(uint64_t num) |
90 | | { |
91 | | return (num <= 0xffffffff) ? bits_required32(num) |
92 | | : 32 + bits_required32(num >> 32); |
93 | | } |
94 | | |
95 | | #endif |
96 | | |
97 | | static inline uint64_t ATTR_NO_SANITIZE_INTEGER |
98 | | ATTR_NO_SANITIZE_IMPLICIT_CONVERSION |
99 | | bits_rotl64(uint64_t num, unsigned int count) |
100 | 0 | { |
101 | 0 | const unsigned int mask = CHAR_BIT*sizeof(num) - 1; |
102 | 0 | count &= mask; |
103 | 0 | return (num << count) | (num >> (UNSIGNED_MINUS(count) & mask)); |
104 | 0 | } Unexecuted instantiation: fuzz-http-response-parser.c:bits_rotl64 Unexecuted instantiation: http-response-parser.c:bits_rotl64 Unexecuted instantiation: http-date.c:bits_rotl64 Unexecuted instantiation: http-parser.c:bits_rotl64 Unexecuted instantiation: http-header.c:bits_rotl64 Unexecuted instantiation: http-message-parser.c:bits_rotl64 Unexecuted instantiation: http-header-parser.c:bits_rotl64 Unexecuted instantiation: http-transfer-chunked.c:bits_rotl64 Unexecuted instantiation: fuzzer.c:bits_rotl64 Unexecuted instantiation: test-istream.c:bits_rotl64 Unexecuted instantiation: buffer.c:bits_rotl64 Unexecuted instantiation: data-stack.c:bits_rotl64 Unexecuted instantiation: event-log.c:bits_rotl64 Unexecuted instantiation: failures.c:bits_rotl64 Unexecuted instantiation: fd-util.c:bits_rotl64 Unexecuted instantiation: hostpid.c:bits_rotl64 Unexecuted instantiation: imem.c:bits_rotl64 Unexecuted instantiation: iostream.c:bits_rotl64 Unexecuted instantiation: iostream-pump.c:bits_rotl64 Unexecuted instantiation: istream.c:bits_rotl64 Unexecuted instantiation: istream-data.c:bits_rotl64 Unexecuted instantiation: istream-file.c:bits_rotl64 Unexecuted instantiation: istream-limit.c:bits_rotl64 Unexecuted instantiation: istream-sized.c:bits_rotl64 Unexecuted instantiation: ioloop.c:bits_rotl64 Unexecuted instantiation: ioloop-notify-inotify.c:bits_rotl64 Unexecuted instantiation: ioloop-epoll.c:bits_rotl64 Unexecuted instantiation: lib.c:bits_rotl64 Unexecuted instantiation: lib-event.c:bits_rotl64 Unexecuted instantiation: lib-signals.c:bits_rotl64 Unexecuted instantiation: memarea.c:bits_rotl64 Unexecuted instantiation: mempool.c:bits_rotl64 Unexecuted instantiation: mempool-alloconly.c:bits_rotl64 Unexecuted instantiation: mempool-datastack.c:bits_rotl64 Unexecuted instantiation: mempool-system.c:bits_rotl64 Unexecuted instantiation: mempool-unsafe-datastack.c:bits_rotl64 Unexecuted instantiation: net.c:bits_rotl64 Unexecuted instantiation: ostream.c:bits_rotl64 Unexecuted instantiation: ostream-file.c:bits_rotl64 Unexecuted instantiation: path-util.c:bits_rotl64 Unexecuted instantiation: printf-format-fix.c:bits_rotl64 Unexecuted instantiation: process-title.c:bits_rotl64 Unexecuted instantiation: priorityq.c:bits_rotl64 Unexecuted instantiation: randgen.c:bits_rotl64 Unexecuted instantiation: rand.c:bits_rotl64 Unexecuted instantiation: restrict-access.c:bits_rotl64 Unexecuted instantiation: safe-memset.c:bits_rotl64 Unexecuted instantiation: sendfile-util.c:bits_rotl64 Unexecuted instantiation: sleep.c:bits_rotl64 Unexecuted instantiation: str.c:bits_rotl64 Unexecuted instantiation: str-sanitize.c:bits_rotl64 Unexecuted instantiation: strescape.c:bits_rotl64 Unexecuted instantiation: strfuncs.c:bits_rotl64 Unexecuted instantiation: strnum.c:bits_rotl64 Unexecuted instantiation: time-util.c:bits_rotl64 Unexecuted instantiation: unichar.c:bits_rotl64 Unexecuted instantiation: unicode-break.c:bits_rotl64 Unexecuted instantiation: unicode-data-tables.c:bits_rotl64 Unexecuted instantiation: unicode-transform.c:bits_rotl64 Unexecuted instantiation: utc-mktime.c:bits_rotl64 Unexecuted instantiation: write-full.c:bits_rotl64 Unexecuted instantiation: array.c:bits_rotl64 Unexecuted instantiation: backtrace-string.c:bits_rotl64 Unexecuted instantiation: bits.c:bits_rotl64 Unexecuted instantiation: env-util.c:bits_rotl64 Unexecuted instantiation: event-filter.c:bits_rotl64 Unexecuted instantiation: event-filter-lexer.c:bits_rotl64 Unexecuted instantiation: event-filter-parser.c:bits_rotl64 Unexecuted instantiation: hash.c:bits_rotl64 Unexecuted instantiation: hmac.c:bits_rotl64 Unexecuted instantiation: ipwd.c:bits_rotl64 Unexecuted instantiation: ioloop-iolist.c:bits_rotl64 Unexecuted instantiation: ioloop-notify-fd.c:bits_rotl64 Unexecuted instantiation: primes.c:bits_rotl64 Unexecuted instantiation: sha2.c:bits_rotl64 Unexecuted instantiation: xxh64.c:bits_rotl64 Unexecuted instantiation: str-parse.c:bits_rotl64 Unexecuted instantiation: wildcard-match.c:bits_rotl64 |
105 | | |
106 | | static inline uint32_t ATTR_NO_SANITIZE_INTEGER |
107 | | ATTR_NO_SANITIZE_IMPLICIT_CONVERSION |
108 | | bits_rotl32(uint32_t num, unsigned int count) |
109 | 0 | { |
110 | 0 | const unsigned int mask = CHAR_BIT*sizeof(num) - 1; |
111 | 0 | count &= mask; |
112 | 0 | return (num << count) | (num >> (UNSIGNED_MINUS(count) & mask)); |
113 | 0 | } Unexecuted instantiation: fuzz-http-response-parser.c:bits_rotl32 Unexecuted instantiation: http-response-parser.c:bits_rotl32 Unexecuted instantiation: http-date.c:bits_rotl32 Unexecuted instantiation: http-parser.c:bits_rotl32 Unexecuted instantiation: http-header.c:bits_rotl32 Unexecuted instantiation: http-message-parser.c:bits_rotl32 Unexecuted instantiation: http-header-parser.c:bits_rotl32 Unexecuted instantiation: http-transfer-chunked.c:bits_rotl32 Unexecuted instantiation: fuzzer.c:bits_rotl32 Unexecuted instantiation: test-istream.c:bits_rotl32 Unexecuted instantiation: buffer.c:bits_rotl32 Unexecuted instantiation: data-stack.c:bits_rotl32 Unexecuted instantiation: event-log.c:bits_rotl32 Unexecuted instantiation: failures.c:bits_rotl32 Unexecuted instantiation: fd-util.c:bits_rotl32 Unexecuted instantiation: hostpid.c:bits_rotl32 Unexecuted instantiation: imem.c:bits_rotl32 Unexecuted instantiation: iostream.c:bits_rotl32 Unexecuted instantiation: iostream-pump.c:bits_rotl32 Unexecuted instantiation: istream.c:bits_rotl32 Unexecuted instantiation: istream-data.c:bits_rotl32 Unexecuted instantiation: istream-file.c:bits_rotl32 Unexecuted instantiation: istream-limit.c:bits_rotl32 Unexecuted instantiation: istream-sized.c:bits_rotl32 Unexecuted instantiation: ioloop.c:bits_rotl32 Unexecuted instantiation: ioloop-notify-inotify.c:bits_rotl32 Unexecuted instantiation: ioloop-epoll.c:bits_rotl32 Unexecuted instantiation: lib.c:bits_rotl32 Unexecuted instantiation: lib-event.c:bits_rotl32 Unexecuted instantiation: lib-signals.c:bits_rotl32 Unexecuted instantiation: memarea.c:bits_rotl32 Unexecuted instantiation: mempool.c:bits_rotl32 Unexecuted instantiation: mempool-alloconly.c:bits_rotl32 Unexecuted instantiation: mempool-datastack.c:bits_rotl32 Unexecuted instantiation: mempool-system.c:bits_rotl32 Unexecuted instantiation: mempool-unsafe-datastack.c:bits_rotl32 Unexecuted instantiation: net.c:bits_rotl32 Unexecuted instantiation: ostream.c:bits_rotl32 Unexecuted instantiation: ostream-file.c:bits_rotl32 Unexecuted instantiation: path-util.c:bits_rotl32 Unexecuted instantiation: printf-format-fix.c:bits_rotl32 Unexecuted instantiation: process-title.c:bits_rotl32 Unexecuted instantiation: priorityq.c:bits_rotl32 Unexecuted instantiation: randgen.c:bits_rotl32 Unexecuted instantiation: rand.c:bits_rotl32 Unexecuted instantiation: restrict-access.c:bits_rotl32 Unexecuted instantiation: safe-memset.c:bits_rotl32 Unexecuted instantiation: sendfile-util.c:bits_rotl32 Unexecuted instantiation: sleep.c:bits_rotl32 Unexecuted instantiation: str.c:bits_rotl32 Unexecuted instantiation: str-sanitize.c:bits_rotl32 Unexecuted instantiation: strescape.c:bits_rotl32 Unexecuted instantiation: strfuncs.c:bits_rotl32 Unexecuted instantiation: strnum.c:bits_rotl32 Unexecuted instantiation: time-util.c:bits_rotl32 Unexecuted instantiation: unichar.c:bits_rotl32 Unexecuted instantiation: unicode-break.c:bits_rotl32 Unexecuted instantiation: unicode-data-tables.c:bits_rotl32 Unexecuted instantiation: unicode-transform.c:bits_rotl32 Unexecuted instantiation: utc-mktime.c:bits_rotl32 Unexecuted instantiation: write-full.c:bits_rotl32 Unexecuted instantiation: array.c:bits_rotl32 Unexecuted instantiation: backtrace-string.c:bits_rotl32 Unexecuted instantiation: bits.c:bits_rotl32 Unexecuted instantiation: env-util.c:bits_rotl32 Unexecuted instantiation: event-filter.c:bits_rotl32 Unexecuted instantiation: event-filter-lexer.c:bits_rotl32 Unexecuted instantiation: event-filter-parser.c:bits_rotl32 Unexecuted instantiation: hash.c:bits_rotl32 Unexecuted instantiation: hmac.c:bits_rotl32 Unexecuted instantiation: ipwd.c:bits_rotl32 Unexecuted instantiation: ioloop-iolist.c:bits_rotl32 Unexecuted instantiation: ioloop-notify-fd.c:bits_rotl32 Unexecuted instantiation: primes.c:bits_rotl32 Unexecuted instantiation: sha2.c:bits_rotl32 Unexecuted instantiation: xxh64.c:bits_rotl32 Unexecuted instantiation: str-parse.c:bits_rotl32 Unexecuted instantiation: wildcard-match.c:bits_rotl32 |
114 | | |
115 | | static inline uint64_t ATTR_NO_SANITIZE_INTEGER |
116 | | ATTR_NO_SANITIZE_IMPLICIT_CONVERSION |
117 | | bits_rotr64(uint64_t num, unsigned int count) |
118 | 0 | { |
119 | 0 | const unsigned int mask = CHAR_BIT*sizeof(num) - 1; |
120 | 0 | count &= mask; |
121 | 0 | return (num >> count) | (num << (UNSIGNED_MINUS(count) & mask)); |
122 | 0 | } Unexecuted instantiation: fuzz-http-response-parser.c:bits_rotr64 Unexecuted instantiation: http-response-parser.c:bits_rotr64 Unexecuted instantiation: http-date.c:bits_rotr64 Unexecuted instantiation: http-parser.c:bits_rotr64 Unexecuted instantiation: http-header.c:bits_rotr64 Unexecuted instantiation: http-message-parser.c:bits_rotr64 Unexecuted instantiation: http-header-parser.c:bits_rotr64 Unexecuted instantiation: http-transfer-chunked.c:bits_rotr64 Unexecuted instantiation: fuzzer.c:bits_rotr64 Unexecuted instantiation: test-istream.c:bits_rotr64 Unexecuted instantiation: buffer.c:bits_rotr64 Unexecuted instantiation: data-stack.c:bits_rotr64 Unexecuted instantiation: event-log.c:bits_rotr64 Unexecuted instantiation: failures.c:bits_rotr64 Unexecuted instantiation: fd-util.c:bits_rotr64 Unexecuted instantiation: hostpid.c:bits_rotr64 Unexecuted instantiation: imem.c:bits_rotr64 Unexecuted instantiation: iostream.c:bits_rotr64 Unexecuted instantiation: iostream-pump.c:bits_rotr64 Unexecuted instantiation: istream.c:bits_rotr64 Unexecuted instantiation: istream-data.c:bits_rotr64 Unexecuted instantiation: istream-file.c:bits_rotr64 Unexecuted instantiation: istream-limit.c:bits_rotr64 Unexecuted instantiation: istream-sized.c:bits_rotr64 Unexecuted instantiation: ioloop.c:bits_rotr64 Unexecuted instantiation: ioloop-notify-inotify.c:bits_rotr64 Unexecuted instantiation: ioloop-epoll.c:bits_rotr64 Unexecuted instantiation: lib.c:bits_rotr64 Unexecuted instantiation: lib-event.c:bits_rotr64 Unexecuted instantiation: lib-signals.c:bits_rotr64 Unexecuted instantiation: memarea.c:bits_rotr64 Unexecuted instantiation: mempool.c:bits_rotr64 Unexecuted instantiation: mempool-alloconly.c:bits_rotr64 Unexecuted instantiation: mempool-datastack.c:bits_rotr64 Unexecuted instantiation: mempool-system.c:bits_rotr64 Unexecuted instantiation: mempool-unsafe-datastack.c:bits_rotr64 Unexecuted instantiation: net.c:bits_rotr64 Unexecuted instantiation: ostream.c:bits_rotr64 Unexecuted instantiation: ostream-file.c:bits_rotr64 Unexecuted instantiation: path-util.c:bits_rotr64 Unexecuted instantiation: printf-format-fix.c:bits_rotr64 Unexecuted instantiation: process-title.c:bits_rotr64 Unexecuted instantiation: priorityq.c:bits_rotr64 Unexecuted instantiation: randgen.c:bits_rotr64 Unexecuted instantiation: rand.c:bits_rotr64 Unexecuted instantiation: restrict-access.c:bits_rotr64 Unexecuted instantiation: safe-memset.c:bits_rotr64 Unexecuted instantiation: sendfile-util.c:bits_rotr64 Unexecuted instantiation: sleep.c:bits_rotr64 Unexecuted instantiation: str.c:bits_rotr64 Unexecuted instantiation: str-sanitize.c:bits_rotr64 Unexecuted instantiation: strescape.c:bits_rotr64 Unexecuted instantiation: strfuncs.c:bits_rotr64 Unexecuted instantiation: strnum.c:bits_rotr64 Unexecuted instantiation: time-util.c:bits_rotr64 Unexecuted instantiation: unichar.c:bits_rotr64 Unexecuted instantiation: unicode-break.c:bits_rotr64 Unexecuted instantiation: unicode-data-tables.c:bits_rotr64 Unexecuted instantiation: unicode-transform.c:bits_rotr64 Unexecuted instantiation: utc-mktime.c:bits_rotr64 Unexecuted instantiation: write-full.c:bits_rotr64 Unexecuted instantiation: array.c:bits_rotr64 Unexecuted instantiation: backtrace-string.c:bits_rotr64 Unexecuted instantiation: bits.c:bits_rotr64 Unexecuted instantiation: env-util.c:bits_rotr64 Unexecuted instantiation: event-filter.c:bits_rotr64 Unexecuted instantiation: event-filter-lexer.c:bits_rotr64 Unexecuted instantiation: event-filter-parser.c:bits_rotr64 Unexecuted instantiation: hash.c:bits_rotr64 Unexecuted instantiation: hmac.c:bits_rotr64 Unexecuted instantiation: ipwd.c:bits_rotr64 Unexecuted instantiation: ioloop-iolist.c:bits_rotr64 Unexecuted instantiation: ioloop-notify-fd.c:bits_rotr64 Unexecuted instantiation: primes.c:bits_rotr64 Unexecuted instantiation: sha2.c:bits_rotr64 Unexecuted instantiation: xxh64.c:bits_rotr64 Unexecuted instantiation: str-parse.c:bits_rotr64 Unexecuted instantiation: wildcard-match.c:bits_rotr64 |
123 | | |
124 | | static inline uint32_t ATTR_NO_SANITIZE_INTEGER |
125 | | ATTR_NO_SANITIZE_IMPLICIT_CONVERSION |
126 | | bits_rotr32(uint32_t num, unsigned int count) |
127 | 0 | { |
128 | 0 | const unsigned int mask = CHAR_BIT*sizeof(num) - 1; |
129 | 0 | count &= mask; |
130 | 0 | return (num >> count) | (num << (UNSIGNED_MINUS(count) & mask)); |
131 | 0 | } Unexecuted instantiation: fuzz-http-response-parser.c:bits_rotr32 Unexecuted instantiation: http-response-parser.c:bits_rotr32 Unexecuted instantiation: http-date.c:bits_rotr32 Unexecuted instantiation: http-parser.c:bits_rotr32 Unexecuted instantiation: http-header.c:bits_rotr32 Unexecuted instantiation: http-message-parser.c:bits_rotr32 Unexecuted instantiation: http-header-parser.c:bits_rotr32 Unexecuted instantiation: http-transfer-chunked.c:bits_rotr32 Unexecuted instantiation: fuzzer.c:bits_rotr32 Unexecuted instantiation: test-istream.c:bits_rotr32 Unexecuted instantiation: buffer.c:bits_rotr32 Unexecuted instantiation: data-stack.c:bits_rotr32 Unexecuted instantiation: event-log.c:bits_rotr32 Unexecuted instantiation: failures.c:bits_rotr32 Unexecuted instantiation: fd-util.c:bits_rotr32 Unexecuted instantiation: hostpid.c:bits_rotr32 Unexecuted instantiation: imem.c:bits_rotr32 Unexecuted instantiation: iostream.c:bits_rotr32 Unexecuted instantiation: iostream-pump.c:bits_rotr32 Unexecuted instantiation: istream.c:bits_rotr32 Unexecuted instantiation: istream-data.c:bits_rotr32 Unexecuted instantiation: istream-file.c:bits_rotr32 Unexecuted instantiation: istream-limit.c:bits_rotr32 Unexecuted instantiation: istream-sized.c:bits_rotr32 Unexecuted instantiation: ioloop.c:bits_rotr32 Unexecuted instantiation: ioloop-notify-inotify.c:bits_rotr32 Unexecuted instantiation: ioloop-epoll.c:bits_rotr32 Unexecuted instantiation: lib.c:bits_rotr32 Unexecuted instantiation: lib-event.c:bits_rotr32 Unexecuted instantiation: lib-signals.c:bits_rotr32 Unexecuted instantiation: memarea.c:bits_rotr32 Unexecuted instantiation: mempool.c:bits_rotr32 Unexecuted instantiation: mempool-alloconly.c:bits_rotr32 Unexecuted instantiation: mempool-datastack.c:bits_rotr32 Unexecuted instantiation: mempool-system.c:bits_rotr32 Unexecuted instantiation: mempool-unsafe-datastack.c:bits_rotr32 Unexecuted instantiation: net.c:bits_rotr32 Unexecuted instantiation: ostream.c:bits_rotr32 Unexecuted instantiation: ostream-file.c:bits_rotr32 Unexecuted instantiation: path-util.c:bits_rotr32 Unexecuted instantiation: printf-format-fix.c:bits_rotr32 Unexecuted instantiation: process-title.c:bits_rotr32 Unexecuted instantiation: priorityq.c:bits_rotr32 Unexecuted instantiation: randgen.c:bits_rotr32 Unexecuted instantiation: rand.c:bits_rotr32 Unexecuted instantiation: restrict-access.c:bits_rotr32 Unexecuted instantiation: safe-memset.c:bits_rotr32 Unexecuted instantiation: sendfile-util.c:bits_rotr32 Unexecuted instantiation: sleep.c:bits_rotr32 Unexecuted instantiation: str.c:bits_rotr32 Unexecuted instantiation: str-sanitize.c:bits_rotr32 Unexecuted instantiation: strescape.c:bits_rotr32 Unexecuted instantiation: strfuncs.c:bits_rotr32 Unexecuted instantiation: strnum.c:bits_rotr32 Unexecuted instantiation: time-util.c:bits_rotr32 Unexecuted instantiation: unichar.c:bits_rotr32 Unexecuted instantiation: unicode-break.c:bits_rotr32 Unexecuted instantiation: unicode-data-tables.c:bits_rotr32 Unexecuted instantiation: unicode-transform.c:bits_rotr32 Unexecuted instantiation: utc-mktime.c:bits_rotr32 Unexecuted instantiation: write-full.c:bits_rotr32 Unexecuted instantiation: array.c:bits_rotr32 Unexecuted instantiation: backtrace-string.c:bits_rotr32 Unexecuted instantiation: bits.c:bits_rotr32 Unexecuted instantiation: env-util.c:bits_rotr32 Unexecuted instantiation: event-filter.c:bits_rotr32 Unexecuted instantiation: event-filter-lexer.c:bits_rotr32 Unexecuted instantiation: event-filter-parser.c:bits_rotr32 Unexecuted instantiation: hash.c:bits_rotr32 Unexecuted instantiation: hmac.c:bits_rotr32 Unexecuted instantiation: ipwd.c:bits_rotr32 Unexecuted instantiation: ioloop-iolist.c:bits_rotr32 Unexecuted instantiation: ioloop-notify-fd.c:bits_rotr32 Unexecuted instantiation: primes.c:bits_rotr32 Unexecuted instantiation: sha2.c:bits_rotr32 Unexecuted instantiation: xxh64.c:bits_rotr32 Unexecuted instantiation: str-parse.c:bits_rotr32 Unexecuted instantiation: wildcard-match.c:bits_rotr32 |
132 | | |
133 | | /* These functions look too big to be inline, but in almost all expected |
134 | | uses, 'fracbits' will be a compile-time constant, and most of the |
135 | | expressions will simplify greatly. |
136 | | */ |
137 | | |
138 | | /* Perform a piecewise-linear approximation to a log2, with fracbits "fractional" bits. |
139 | | Best explained with examples: |
140 | | With 2 fractional bits splitting each power of 2 into 4 bands: |
141 | | 00, 01, 10, 11 -> 00, 01, 10, 11 (small corner cases) |
142 | | 100, 101, 110, 111 -> 100, 101, 110, 111 ([4-8) split into 4 bands) |
143 | | 1000, 1001, 1010, 1011 -> 1000, 1000, 1001, 1001 ([8-15) split ... |
144 | | 1100, 1101, 1110, 1111 -> 1010, 1010, 1011, 1011 ... into 4 bands) |
145 | | [16..31) -> 11bb |
146 | | [32..63) -> 100bb |
147 | | [64..127) -> 101bb |
148 | | [128..255) -> 110bb |
149 | | e.g. 236 = 11101100 -> ((8-2)<<2 == 11000) + (111.....>> 5 == 111) - 100 == 11011 |
150 | | */ |
151 | | static inline unsigned int ATTR_CONST |
152 | | bits_fraclog(unsigned int val, unsigned int fracbits) |
153 | 0 | { |
154 | 0 | unsigned int bits = bits_required32(val); |
155 | 0 | if (bits <= fracbits + 1) |
156 | 0 | return val; |
157 | 0 |
|
158 | 0 | unsigned int bandnum = bits - fracbits; |
159 | 0 | unsigned int bandstart = bandnum << fracbits; |
160 | 0 | unsigned int fracoffsbad = val >> (bandnum - 1); /* has leading 1 still */ |
161 | 0 | unsigned int bucket = bandstart + fracoffsbad - BIT(fracbits); |
162 | 0 | return bucket; |
163 | 0 | } Unexecuted instantiation: fuzz-http-response-parser.c:bits_fraclog Unexecuted instantiation: http-response-parser.c:bits_fraclog Unexecuted instantiation: http-date.c:bits_fraclog Unexecuted instantiation: http-parser.c:bits_fraclog Unexecuted instantiation: http-header.c:bits_fraclog Unexecuted instantiation: http-message-parser.c:bits_fraclog Unexecuted instantiation: http-header-parser.c:bits_fraclog Unexecuted instantiation: http-transfer-chunked.c:bits_fraclog Unexecuted instantiation: fuzzer.c:bits_fraclog Unexecuted instantiation: test-istream.c:bits_fraclog Unexecuted instantiation: buffer.c:bits_fraclog Unexecuted instantiation: data-stack.c:bits_fraclog Unexecuted instantiation: event-log.c:bits_fraclog Unexecuted instantiation: failures.c:bits_fraclog Unexecuted instantiation: fd-util.c:bits_fraclog Unexecuted instantiation: hostpid.c:bits_fraclog Unexecuted instantiation: imem.c:bits_fraclog Unexecuted instantiation: iostream.c:bits_fraclog Unexecuted instantiation: iostream-pump.c:bits_fraclog Unexecuted instantiation: istream.c:bits_fraclog Unexecuted instantiation: istream-data.c:bits_fraclog Unexecuted instantiation: istream-file.c:bits_fraclog Unexecuted instantiation: istream-limit.c:bits_fraclog Unexecuted instantiation: istream-sized.c:bits_fraclog Unexecuted instantiation: ioloop.c:bits_fraclog Unexecuted instantiation: ioloop-notify-inotify.c:bits_fraclog Unexecuted instantiation: ioloop-epoll.c:bits_fraclog Unexecuted instantiation: lib.c:bits_fraclog Unexecuted instantiation: lib-event.c:bits_fraclog Unexecuted instantiation: lib-signals.c:bits_fraclog Unexecuted instantiation: memarea.c:bits_fraclog Unexecuted instantiation: mempool.c:bits_fraclog Unexecuted instantiation: mempool-alloconly.c:bits_fraclog Unexecuted instantiation: mempool-datastack.c:bits_fraclog Unexecuted instantiation: mempool-system.c:bits_fraclog Unexecuted instantiation: mempool-unsafe-datastack.c:bits_fraclog Unexecuted instantiation: net.c:bits_fraclog Unexecuted instantiation: ostream.c:bits_fraclog Unexecuted instantiation: ostream-file.c:bits_fraclog Unexecuted instantiation: path-util.c:bits_fraclog Unexecuted instantiation: printf-format-fix.c:bits_fraclog Unexecuted instantiation: process-title.c:bits_fraclog Unexecuted instantiation: priorityq.c:bits_fraclog Unexecuted instantiation: randgen.c:bits_fraclog Unexecuted instantiation: rand.c:bits_fraclog Unexecuted instantiation: restrict-access.c:bits_fraclog Unexecuted instantiation: safe-memset.c:bits_fraclog Unexecuted instantiation: sendfile-util.c:bits_fraclog Unexecuted instantiation: sleep.c:bits_fraclog Unexecuted instantiation: str.c:bits_fraclog Unexecuted instantiation: str-sanitize.c:bits_fraclog Unexecuted instantiation: strescape.c:bits_fraclog Unexecuted instantiation: strfuncs.c:bits_fraclog Unexecuted instantiation: strnum.c:bits_fraclog Unexecuted instantiation: time-util.c:bits_fraclog Unexecuted instantiation: unichar.c:bits_fraclog Unexecuted instantiation: unicode-break.c:bits_fraclog Unexecuted instantiation: unicode-data-tables.c:bits_fraclog Unexecuted instantiation: unicode-transform.c:bits_fraclog Unexecuted instantiation: utc-mktime.c:bits_fraclog Unexecuted instantiation: write-full.c:bits_fraclog Unexecuted instantiation: array.c:bits_fraclog Unexecuted instantiation: backtrace-string.c:bits_fraclog Unexecuted instantiation: bits.c:bits_fraclog Unexecuted instantiation: env-util.c:bits_fraclog Unexecuted instantiation: event-filter.c:bits_fraclog Unexecuted instantiation: event-filter-lexer.c:bits_fraclog Unexecuted instantiation: event-filter-parser.c:bits_fraclog Unexecuted instantiation: hash.c:bits_fraclog Unexecuted instantiation: hmac.c:bits_fraclog Unexecuted instantiation: ipwd.c:bits_fraclog Unexecuted instantiation: ioloop-iolist.c:bits_fraclog Unexecuted instantiation: ioloop-notify-fd.c:bits_fraclog Unexecuted instantiation: primes.c:bits_fraclog Unexecuted instantiation: sha2.c:bits_fraclog Unexecuted instantiation: xxh64.c:bits_fraclog Unexecuted instantiation: str-parse.c:bits_fraclog Unexecuted instantiation: wildcard-match.c:bits_fraclog |
164 | | static inline unsigned int ATTR_CONST |
165 | | bits_fraclog_bucket_start(unsigned int bucket, unsigned int fracbits) |
166 | 0 | { |
167 | 0 | unsigned int bandnum = bucket >> fracbits; |
168 | 0 | if (bandnum <= 1) |
169 | 0 | return bucket; |
170 | 0 | if (fracbits == 0) |
171 | 0 | return BIT(bucket - 1); |
172 | 0 | unsigned int fracoffs = bucket & (BIT(fracbits)-1); |
173 | 0 | unsigned int fracoffs1 = BIT(fracbits) + fracoffs; |
174 | 0 | unsigned int bandstart = fracoffs1 << (bandnum - 1); |
175 | 0 | return bandstart; |
176 | 0 | } Unexecuted instantiation: fuzz-http-response-parser.c:bits_fraclog_bucket_start Unexecuted instantiation: http-response-parser.c:bits_fraclog_bucket_start Unexecuted instantiation: http-date.c:bits_fraclog_bucket_start Unexecuted instantiation: http-parser.c:bits_fraclog_bucket_start Unexecuted instantiation: http-header.c:bits_fraclog_bucket_start Unexecuted instantiation: http-message-parser.c:bits_fraclog_bucket_start Unexecuted instantiation: http-header-parser.c:bits_fraclog_bucket_start Unexecuted instantiation: http-transfer-chunked.c:bits_fraclog_bucket_start Unexecuted instantiation: fuzzer.c:bits_fraclog_bucket_start Unexecuted instantiation: test-istream.c:bits_fraclog_bucket_start Unexecuted instantiation: buffer.c:bits_fraclog_bucket_start Unexecuted instantiation: data-stack.c:bits_fraclog_bucket_start Unexecuted instantiation: event-log.c:bits_fraclog_bucket_start Unexecuted instantiation: failures.c:bits_fraclog_bucket_start Unexecuted instantiation: fd-util.c:bits_fraclog_bucket_start Unexecuted instantiation: hostpid.c:bits_fraclog_bucket_start Unexecuted instantiation: imem.c:bits_fraclog_bucket_start Unexecuted instantiation: iostream.c:bits_fraclog_bucket_start Unexecuted instantiation: iostream-pump.c:bits_fraclog_bucket_start Unexecuted instantiation: istream.c:bits_fraclog_bucket_start Unexecuted instantiation: istream-data.c:bits_fraclog_bucket_start Unexecuted instantiation: istream-file.c:bits_fraclog_bucket_start Unexecuted instantiation: istream-limit.c:bits_fraclog_bucket_start Unexecuted instantiation: istream-sized.c:bits_fraclog_bucket_start Unexecuted instantiation: ioloop.c:bits_fraclog_bucket_start Unexecuted instantiation: ioloop-notify-inotify.c:bits_fraclog_bucket_start Unexecuted instantiation: ioloop-epoll.c:bits_fraclog_bucket_start Unexecuted instantiation: lib.c:bits_fraclog_bucket_start Unexecuted instantiation: lib-event.c:bits_fraclog_bucket_start Unexecuted instantiation: lib-signals.c:bits_fraclog_bucket_start Unexecuted instantiation: memarea.c:bits_fraclog_bucket_start Unexecuted instantiation: mempool.c:bits_fraclog_bucket_start Unexecuted instantiation: mempool-alloconly.c:bits_fraclog_bucket_start Unexecuted instantiation: mempool-datastack.c:bits_fraclog_bucket_start Unexecuted instantiation: mempool-system.c:bits_fraclog_bucket_start Unexecuted instantiation: mempool-unsafe-datastack.c:bits_fraclog_bucket_start Unexecuted instantiation: net.c:bits_fraclog_bucket_start Unexecuted instantiation: ostream.c:bits_fraclog_bucket_start Unexecuted instantiation: ostream-file.c:bits_fraclog_bucket_start Unexecuted instantiation: path-util.c:bits_fraclog_bucket_start Unexecuted instantiation: printf-format-fix.c:bits_fraclog_bucket_start Unexecuted instantiation: process-title.c:bits_fraclog_bucket_start Unexecuted instantiation: priorityq.c:bits_fraclog_bucket_start Unexecuted instantiation: randgen.c:bits_fraclog_bucket_start Unexecuted instantiation: rand.c:bits_fraclog_bucket_start Unexecuted instantiation: restrict-access.c:bits_fraclog_bucket_start Unexecuted instantiation: safe-memset.c:bits_fraclog_bucket_start Unexecuted instantiation: sendfile-util.c:bits_fraclog_bucket_start Unexecuted instantiation: sleep.c:bits_fraclog_bucket_start Unexecuted instantiation: str.c:bits_fraclog_bucket_start Unexecuted instantiation: str-sanitize.c:bits_fraclog_bucket_start Unexecuted instantiation: strescape.c:bits_fraclog_bucket_start Unexecuted instantiation: strfuncs.c:bits_fraclog_bucket_start Unexecuted instantiation: strnum.c:bits_fraclog_bucket_start Unexecuted instantiation: time-util.c:bits_fraclog_bucket_start Unexecuted instantiation: unichar.c:bits_fraclog_bucket_start Unexecuted instantiation: unicode-break.c:bits_fraclog_bucket_start Unexecuted instantiation: unicode-data-tables.c:bits_fraclog_bucket_start Unexecuted instantiation: unicode-transform.c:bits_fraclog_bucket_start Unexecuted instantiation: utc-mktime.c:bits_fraclog_bucket_start Unexecuted instantiation: write-full.c:bits_fraclog_bucket_start Unexecuted instantiation: array.c:bits_fraclog_bucket_start Unexecuted instantiation: backtrace-string.c:bits_fraclog_bucket_start Unexecuted instantiation: bits.c:bits_fraclog_bucket_start Unexecuted instantiation: env-util.c:bits_fraclog_bucket_start Unexecuted instantiation: event-filter.c:bits_fraclog_bucket_start Unexecuted instantiation: event-filter-lexer.c:bits_fraclog_bucket_start Unexecuted instantiation: event-filter-parser.c:bits_fraclog_bucket_start Unexecuted instantiation: hash.c:bits_fraclog_bucket_start Unexecuted instantiation: hmac.c:bits_fraclog_bucket_start Unexecuted instantiation: ipwd.c:bits_fraclog_bucket_start Unexecuted instantiation: ioloop-iolist.c:bits_fraclog_bucket_start Unexecuted instantiation: ioloop-notify-fd.c:bits_fraclog_bucket_start Unexecuted instantiation: primes.c:bits_fraclog_bucket_start Unexecuted instantiation: sha2.c:bits_fraclog_bucket_start Unexecuted instantiation: xxh64.c:bits_fraclog_bucket_start Unexecuted instantiation: str-parse.c:bits_fraclog_bucket_start Unexecuted instantiation: wildcard-match.c:bits_fraclog_bucket_start |
177 | | static inline unsigned int ATTR_CONST ATTR_NO_SANITIZE_INTEGER |
178 | | ATTR_NO_SANITIZE_IMPLICIT_CONVERSION |
179 | | bits_fraclog_bucket_end(unsigned int bucket, unsigned int fracbits) |
180 | 0 | { |
181 | 0 | unsigned int bandnum = bucket >> fracbits; |
182 | 0 | if (bandnum <= 1) |
183 | 0 | return bucket; |
184 | 0 | if (fracbits == 0) |
185 | 0 | return BIT(bucket - 1) * 2 - 1; |
186 | 0 | unsigned int fracoffs = bucket & (BIT(fracbits)-1); |
187 | 0 | unsigned int nextfracoffs1 = 1 + BIT(fracbits) + fracoffs; |
188 | 0 | unsigned int nextbandstart = nextfracoffs1 << (bandnum - 1); |
189 | 0 | return nextbandstart - 1; |
190 | 0 | } Unexecuted instantiation: fuzz-http-response-parser.c:bits_fraclog_bucket_end Unexecuted instantiation: http-response-parser.c:bits_fraclog_bucket_end Unexecuted instantiation: http-date.c:bits_fraclog_bucket_end Unexecuted instantiation: http-parser.c:bits_fraclog_bucket_end Unexecuted instantiation: http-header.c:bits_fraclog_bucket_end Unexecuted instantiation: http-message-parser.c:bits_fraclog_bucket_end Unexecuted instantiation: http-header-parser.c:bits_fraclog_bucket_end Unexecuted instantiation: http-transfer-chunked.c:bits_fraclog_bucket_end Unexecuted instantiation: fuzzer.c:bits_fraclog_bucket_end Unexecuted instantiation: test-istream.c:bits_fraclog_bucket_end Unexecuted instantiation: buffer.c:bits_fraclog_bucket_end Unexecuted instantiation: data-stack.c:bits_fraclog_bucket_end Unexecuted instantiation: event-log.c:bits_fraclog_bucket_end Unexecuted instantiation: failures.c:bits_fraclog_bucket_end Unexecuted instantiation: fd-util.c:bits_fraclog_bucket_end Unexecuted instantiation: hostpid.c:bits_fraclog_bucket_end Unexecuted instantiation: imem.c:bits_fraclog_bucket_end Unexecuted instantiation: iostream.c:bits_fraclog_bucket_end Unexecuted instantiation: iostream-pump.c:bits_fraclog_bucket_end Unexecuted instantiation: istream.c:bits_fraclog_bucket_end Unexecuted instantiation: istream-data.c:bits_fraclog_bucket_end Unexecuted instantiation: istream-file.c:bits_fraclog_bucket_end Unexecuted instantiation: istream-limit.c:bits_fraclog_bucket_end Unexecuted instantiation: istream-sized.c:bits_fraclog_bucket_end Unexecuted instantiation: ioloop.c:bits_fraclog_bucket_end Unexecuted instantiation: ioloop-notify-inotify.c:bits_fraclog_bucket_end Unexecuted instantiation: ioloop-epoll.c:bits_fraclog_bucket_end Unexecuted instantiation: lib.c:bits_fraclog_bucket_end Unexecuted instantiation: lib-event.c:bits_fraclog_bucket_end Unexecuted instantiation: lib-signals.c:bits_fraclog_bucket_end Unexecuted instantiation: memarea.c:bits_fraclog_bucket_end Unexecuted instantiation: mempool.c:bits_fraclog_bucket_end Unexecuted instantiation: mempool-alloconly.c:bits_fraclog_bucket_end Unexecuted instantiation: mempool-datastack.c:bits_fraclog_bucket_end Unexecuted instantiation: mempool-system.c:bits_fraclog_bucket_end Unexecuted instantiation: mempool-unsafe-datastack.c:bits_fraclog_bucket_end Unexecuted instantiation: net.c:bits_fraclog_bucket_end Unexecuted instantiation: ostream.c:bits_fraclog_bucket_end Unexecuted instantiation: ostream-file.c:bits_fraclog_bucket_end Unexecuted instantiation: path-util.c:bits_fraclog_bucket_end Unexecuted instantiation: printf-format-fix.c:bits_fraclog_bucket_end Unexecuted instantiation: process-title.c:bits_fraclog_bucket_end Unexecuted instantiation: priorityq.c:bits_fraclog_bucket_end Unexecuted instantiation: randgen.c:bits_fraclog_bucket_end Unexecuted instantiation: rand.c:bits_fraclog_bucket_end Unexecuted instantiation: restrict-access.c:bits_fraclog_bucket_end Unexecuted instantiation: safe-memset.c:bits_fraclog_bucket_end Unexecuted instantiation: sendfile-util.c:bits_fraclog_bucket_end Unexecuted instantiation: sleep.c:bits_fraclog_bucket_end Unexecuted instantiation: str.c:bits_fraclog_bucket_end Unexecuted instantiation: str-sanitize.c:bits_fraclog_bucket_end Unexecuted instantiation: strescape.c:bits_fraclog_bucket_end Unexecuted instantiation: strfuncs.c:bits_fraclog_bucket_end Unexecuted instantiation: strnum.c:bits_fraclog_bucket_end Unexecuted instantiation: time-util.c:bits_fraclog_bucket_end Unexecuted instantiation: unichar.c:bits_fraclog_bucket_end Unexecuted instantiation: unicode-break.c:bits_fraclog_bucket_end Unexecuted instantiation: unicode-data-tables.c:bits_fraclog_bucket_end Unexecuted instantiation: unicode-transform.c:bits_fraclog_bucket_end Unexecuted instantiation: utc-mktime.c:bits_fraclog_bucket_end Unexecuted instantiation: write-full.c:bits_fraclog_bucket_end Unexecuted instantiation: array.c:bits_fraclog_bucket_end Unexecuted instantiation: backtrace-string.c:bits_fraclog_bucket_end Unexecuted instantiation: bits.c:bits_fraclog_bucket_end Unexecuted instantiation: env-util.c:bits_fraclog_bucket_end Unexecuted instantiation: event-filter.c:bits_fraclog_bucket_end Unexecuted instantiation: event-filter-lexer.c:bits_fraclog_bucket_end Unexecuted instantiation: event-filter-parser.c:bits_fraclog_bucket_end Unexecuted instantiation: hash.c:bits_fraclog_bucket_end Unexecuted instantiation: hmac.c:bits_fraclog_bucket_end Unexecuted instantiation: ipwd.c:bits_fraclog_bucket_end Unexecuted instantiation: ioloop-iolist.c:bits_fraclog_bucket_end Unexecuted instantiation: ioloop-notify-fd.c:bits_fraclog_bucket_end Unexecuted instantiation: primes.c:bits_fraclog_bucket_end Unexecuted instantiation: sha2.c:bits_fraclog_bucket_end Unexecuted instantiation: xxh64.c:bits_fraclog_bucket_end Unexecuted instantiation: str-parse.c:bits_fraclog_bucket_end Unexecuted instantiation: wildcard-match.c:bits_fraclog_bucket_end |
191 | | /* UNSAFE: multiple use of parameter (but expecting a constant in reality). |
192 | | But a macro as it's most likely to be used to declare an array size. |
193 | | */ |
194 | | #define BITS_FRACLOG_BUCKETS(bits) ((33u - (bits)) << (bits)) |
195 | | |
196 | | #endif |