Branch Coverage

xxhash.h
Criterion Covered Total %
branch 23 298 7.7


line true false branch
2876 0 0 if (align==XXH_unaligned) {
3004 0 0 XXH_ASSERT(acc != NULL);
3027 0 0 XXH_ASSERT(acc != NULL);
3028 0 0 XXH_ASSERT(input != NULL);
3029 0 0 XXH_ASSERT(len >= 16);
3035 0 0 } while (input < limit);
3047 0 0 XXH_ASSERT(acc != NULL);
3081 0 0 if (ptr==NULL) XXH_ASSERT(len == 0);
0 0 if (ptr==NULL) XXH_ASSERT(len == 0);
3086 0 0 while (len >= 4) {
3090 0 0 while (len > 0) {
3161 0 0 if (input==NULL) XXH_ASSERT(len == 0);
0 0 if (input==NULL) XXH_ASSERT(len == 0);
3163 0 0 if (len>=16) {
3437 0 0 if (align==XXH_unaligned)
3523 0 0 XXH_ASSERT(acc != NULL);
3546 0 0 XXH_ASSERT(acc != NULL);
3547 0 0 XXH_ASSERT(input != NULL);
3548 0 0 XXH_ASSERT(len >= 32);
3563 0 0 } while (input < limit);
3575 0 0 XXH_ASSERT(acc != NULL);
3613 0 0 if (ptr==NULL) XXH_ASSERT(len == 0);
0 0 if (ptr==NULL) XXH_ASSERT(len == 0);
3615 0 0 while (len >= 8) {
3622 0 0 if (len >= 4) {
3628 0 0 while (len > 0) {
3658 0 0 if (input==NULL) XXH_ASSERT(len == 0);
0 0 if (input==NULL) XXH_ASSERT(len == 0);
3660 0 0 if (len>=32) { /* Process a large block of data */
4575 5391611 0 XXH_ASSERT(0 <= shift && shift < 64);
0 5391611 XXH_ASSERT(0 <= shift && shift < 64);
4643 0 29733 XXH_ASSERT(input != NULL);
4644 29733 0 XXH_ASSERT(1 <= len && len <= 3);
0 29733 XXH_ASSERT(1 <= len && len <= 3);
4645 0 29733 XXH_ASSERT(secret != NULL);
4665 0 5391607 XXH_ASSERT(input != NULL);
4666 0 5391607 XXH_ASSERT(secret != NULL);
4667 5391607 0 XXH_ASSERT(4 <= len && len <= 8);
0 5391607 XXH_ASSERT(4 <= len && len <= 8);
4681 0 2 XXH_ASSERT(input != NULL);
4682 0 2 XXH_ASSERT(secret != NULL);
4683 2 0 XXH_ASSERT(9 <= len && len <= 16);
0 2 XXH_ASSERT(9 <= len && len <= 16);
4698 0 5421354 XXH_ASSERT(len <= 16);
4699 2 5421352 { if (XXH_likely(len > 8)) return XXH3_len_9to16_64b(input, len, secret, seed);
4700 5391607 29745 if (XXH_likely(len >= 4)) return XXH3_len_4to8_64b(input, len, secret, seed);
4701 29733 12 if (len) return XXH3_len_1to3_64b(input, len, secret, seed);
4770 0 0 XXH_ASSERT(secretSize >= XXH3_SECRET_SIZE_MIN); (void)secretSize;
4771 0 0 XXH_ASSERT(16 < len && len <= 128);
0 0 XXH_ASSERT(16 < len && len <= 128);
4782 0 0 if (len > 32) {
4783 0 0 if (len > 64) {
4784 0 0 if (len > 96) {
4806 0 0 XXH_ASSERT(secretSize >= XXH3_SECRET_SIZE_MIN); (void)secretSize;
4807 0 0 XXH_ASSERT(128 < len && len <= XXH3_MIDSIZE_MAX);
0 0 XXH_ASSERT(128 < len && len <= XXH3_MIDSIZE_MAX);
4816 0 0 XXH_ASSERT(128 < len && len <= XXH3_MIDSIZE_MAX);
0 0 XXH_ASSERT(128 < len && len <= XXH3_MIDSIZE_MAX);
4817 0 0 for (i=0; i<8; i++) {
4822 0 0 XXH_ASSERT(nbRounds >= 8);
4849 0 0 for (i=8 ; i < nbRounds; i++) {
5179 0 0 XXH_ASSERT((((size_t)acc) & 15) == 0);
5189 0 0 for (i=0; i < XXH_STRIPE_LEN/sizeof(__m128i); i++) {
5207 0 0 XXH_FORCE_INLINE XXH_TARGET_SSE2 XXH3_ACCUMULATE_TEMPLATE(sse2)
5212 0 0 XXH_ASSERT((((size_t)acc) & 15) == 0);
5220 0 0 for (i=0; i < XXH_STRIPE_LEN/sizeof(__m128i); i++) {
5263 0 0 XXH_ASSERT(((size_t)src16 & 15) == 0); /* control alignment */
5264 0 0 XXH_ASSERT(((size_t)dst16 & 15) == 0);
5266 0 0 for (i=0; i < nbRounds; ++i) {
5786 0 0 XXH_ASSERT(lane < XXH_ACC_NB);
5787 0 0 XXH_ASSERT(((size_t)acc & (XXH_ACC_ALIGN-1)) == 0);
5813 0 0 for (i=0; i < XXH_ACC_NB; i++) {
5817 0 0 XXH_FORCE_INLINE XXH3_ACCUMULATE_TEMPLATE(scalar)
5833 0 0 XXH_ASSERT((((size_t)acc) & (XXH_ACC_ALIGN-1)) == 0);
5834 0 0 XXH_ASSERT(lane < XXH_ACC_NB);
5853 0 0 for (i=0; i < XXH_ACC_NB; i++) {
5906 0 0 for (i=0; i < nbRounds; i++) {
6000 0 0 XXH_ASSERT(secretSize >= XXH3_SECRET_SIZE_MIN);
6002 0 0 for (n = 0; n < nb_blocks; n++) {
6008 0 0 XXH_ASSERT(len > XXH_STRIPE_LEN);
6010 0 0 XXH_ASSERT(nbStripes <= (secretSize / XXH_SECRET_CONSUME_RATE));
6034 0 0 for (i = 0; i < 4; i++) {
6079 0 0 XXH_ASSERT(secretSize >= sizeof(acc) + XXH_SECRET_MERGEACCS_START);
6131 0 0 if (seed == 0)
6164 0 5421354 XXH_ASSERT(secretLen >= XXH3_SECRET_SIZE_MIN);
6172 5421354 0 if (len <= 16)
6174 0 0 if (len <= 128)
6176 0 0 if (len <= XXH3_MIDSIZE_MAX)
6240 0 0 XXH_ASSERT(align <= 128 && align >= 8); /* range check */
0 0 XXH_ASSERT(align <= 128 && align >= 8); /* range check */
6241 0 0 XXH_ASSERT((align & (align-1)) == 0); /* power of 2 */
6242 0 0 XXH_ASSERT(s != 0 && s < (s + align)); /* empty/overflow */
0 0 XXH_ASSERT(s != 0 && s < (s + align)); /* empty/overflow */
6245 0 0 if (base != NULL) {
6256 0 0 XXH_ASSERT((size_t)ptr % align == 0);
6271 0 0 if (p != NULL) {
6331 0 0 XXH_ASSERT(offsetof(XXH3_state_t, nbStripesPerBlock) > initStart);
6332 0 0 XXH_ASSERT(statePtr != NULL);
6346 0 0 XXH_ASSERT(secretSize >= XXH3_SECRET_SIZE_MIN);
6422 0 0 if (nbStripes >= (nbStripesPerBlock - *nbStripesSoFarPtr)) {
6435 0 0 } while (nbStripes >= nbStripesPerBlock);
6439 0 0 if (nbStripes > 0) {
6462 0 0 if (input==NULL) {
6463 0 0 XXH_ASSERT(len == 0);
6467 0 0 XXH_ASSERT(state != NULL);
6469 0 0 const unsigned char* const secret = (state->extSecret == NULL) ? state->customSecret : state->extSecret;
6481 0 0 XXH_ASSERT(state->bufferedSize <= XXH3_INTERNALBUFFER_SIZE);
6484 0 0 if (len <= XXH3_INTERNALBUFFER_SIZE - state->bufferedSize) {
6498 0 0 if (state->bufferedSize) {
6509 0 0 XXH_ASSERT(input < bEnd);
6510 0 0 if (bEnd - input > XXH3_INTERNALBUFFER_SIZE) {
6521 0 0 XXH_ASSERT(input < bEnd);
6522 0 0 XXH_ASSERT(bEnd - input <= XXH3_INTERNALBUFFER_SIZE);
6523 0 0 XXH_ASSERT(state->bufferedSize == 0);
6557 0 0 if (state->bufferedSize >= XXH_STRIPE_LEN) {
6570 0 0 XXH_ASSERT(state->bufferedSize > 0); /* there is always some input buffered */
6620 0 0 XXH_ASSERT(input != NULL);
6621 0 0 XXH_ASSERT(1 <= len && len <= 3);
0 0 XXH_ASSERT(1 <= len && len <= 3);
6622 0 0 XXH_ASSERT(secret != NULL);
6648 0 0 XXH_ASSERT(input != NULL);
6649 0 0 XXH_ASSERT(secret != NULL);
6650 0 0 XXH_ASSERT(4 <= len && len <= 8);
0 0 XXH_ASSERT(4 <= len && len <= 8);
6675 0 0 XXH_ASSERT(input != NULL);
6676 0 0 XXH_ASSERT(secret != NULL);
6677 0 0 XXH_ASSERT(9 <= len && len <= 16);
0 0 XXH_ASSERT(9 <= len && len <= 16);
6750 0 0 XXH_ASSERT(len <= 16);
6751 0 0 { if (len > 8) return XXH3_len_9to16_128b(input, len, secret, seed);
6752 0 0 if (len >= 4) return XXH3_len_4to8_128b(input, len, secret, seed);
6753 0 0 if (len) return XXH3_len_1to3_128b(input, len, secret, seed);
6783 0 0 XXH_ASSERT(secretSize >= XXH3_SECRET_SIZE_MIN); (void)secretSize;
6784 0 0 XXH_ASSERT(16 < len && len <= 128);
0 0 XXH_ASSERT(16 < len && len <= 128);
6799 0 0 if (len > 32) {
6800 0 0 if (len > 64) {
6801 0 0 if (len > 96) {
6827 0 0 XXH_ASSERT(secretSize >= XXH3_SECRET_SIZE_MIN); (void)secretSize;
6828 0 0 XXH_ASSERT(128 < len && len <= XXH3_MIDSIZE_MAX);
0 0 XXH_ASSERT(128 < len && len <= XXH3_MIDSIZE_MAX);
6840 0 0 for (i = 32; i < 160; i += 32) {
6854 0 0 for (i=160; i <= len; i += 32) {
6903 0 0 XXH_ASSERT(secretSize >= sizeof(acc) + XXH_SECRET_MERGEACCS_START);
6944 0 0 if (seed64 == 0)
6975 0 0 XXH_ASSERT(secretLen >= XXH3_SECRET_SIZE_MIN);
6982 0 0 if (len <= 16)
6984 0 0 if (len <= 128)
6986 0 0 if (len <= XXH3_MIDSIZE_MAX)