Branch Coverage

engine.c
Criterion Covered Total %
branch 629 906 69.4


line true false branch
290 6 1 for (i = 0; i < sizeof(forced_byte_expl); ++i)
296 8 1 for (i = 0; i < 8; ++i)
316 274 11 for (i = 0; i < expl_size; ++i)
329 266 6 *unf = TOLOWER(c);
42 224 *unf = TOLOWER(c);
330 266 6 unf[1] = ((*unf >= 'a') && (*unf <= 'z')) ? *unf - 'a' + 'A' : *unf;
266 0 unf[1] = ((*unf >= 'a') && (*unf <= 'z')) ? *unf - 'a' + 'A' : *unf;
341 8541 5200 while (mask != prev_mask)
344 17082 8541 for (i = 0; i < 2; ++i)
346 187902 17082 for (j = 0; j < SIZEOF_ARRAY(regclass_superset); ++j)
350 93951 93951 if (i)
359 21868 166034 if (mask & b)
380 0 0 if (p == desc)
386 0 0 while (p)
389 0 0 for (i = 0; i < SIZEOF_ARRAY(regclass_names); ++i)
391 0 0 if (!strncmp(p + 6, regclass_names[i], strlen(regclass_names[i])))
393 0 0 if (sign == '+')
395 0 0 if (mask & (regclass_blocks[i] << MIRROR_SHIFT))
397 0 0 *map = invert ? 0 : EVERY_BLOCK;
403 0 0 else if (sign == '!')
405 0 0 if (mask & regclass_blocks[i])
407 0 0 *map = invert ? 0 : EVERY_BLOCK;
426 0 0 if ((mask & ALPHA_BLOCK) && (mask & NUMBER_BLOCK))
0 0 if ((mask & ALPHA_BLOCK) && (mask & NUMBER_BLOCK))
431 0 0 if (invert)
436 0 0 if ((mask & ALPHA_BLOCK) && (mask & NUMBER_BLOCK))
0 0 if ((mask & ALPHA_BLOCK) && (mask & NUMBER_BLOCK))
455 206 0 : (SvCUR(invlist) / sizeof(UV)) - *get_invlist_offset_addr(invlist);
560 30 0 ila = ill ? invlist_array(invlist) : 0;
565 0 0 if (!memcmp(ila, perl_space_invlist, sizeof(perl_space_invlist)))
576 0 0 if (!memcmp(ila, perl_space_invlist + 1,
601 0 0 if (!memcmp(ila, horizontal_space_invlist, sizeof(horizontal_space_invlist)))
612 0 0 if (!memcmp(ila, horizontal_space_invlist + 1,
624 0 0 if (!memcmp(ila, vertical_space_invlist, sizeof(vertical_space_invlist)))
635 0 0 if (!memcmp(ila, vertical_space_invlist + 1,
647 0 0 if (!memcmp(ila, xposix_digit_invlist, sizeof(xposix_digit_invlist)))
658 0 0 if (!memcmp(ila, xposix_digit_invlist + 1,
670 0 0 if (!memcmp(ila, xposix_alnum_invlist, sizeof(xposix_alnum_invlist)))
681 10 0 if (!memcmp(ila, xposix_alnum_invlist + 1,
693 0 0 if (!memcmp(ila, xposix_alpha_invlist, sizeof(xposix_alpha_invlist)))
704 20 0 if (!memcmp(ila, xposix_alpha_invlist + 1,
716 0 0 if (!memcmp(ila, xposix_word_invlist, sizeof(xposix_word_invlist)))
727 0 0 if (!memcmp(ila, xposix_word_invlist + 1,
739 0 0 if (!memcmp(ila, xposix_xdigit_invlist, sizeof(xposix_xdigit_invlist)))
750 0 0 if (!memcmp(ila, xposix_xdigit_invlist + 1,
762 30 0 if (mask)
764 0 30 if (invert)
802 0 30 if (!pr) /* this should have been tested by find_internal during
811 30 0 if ((n < rdata->count) &&
30 0 if ((n < rdata->count) &&
825 30 0 if (si && (si != &PL_sv_undef))
0 30 if (si && (si != &PL_sv_undef))
831 0 0 return convert_desc_to_map(SvPV_nolen(*ary),
839 30 0 if (av_len(av) >= 3)
843 0 30 if (SvUV(ary[4])) /* invlist_has_user_defined_property */
0 30 if (SvUV(ary[4])) /* invlist_has_user_defined_property */
872 176 0 if (data && data->count)
176 0 if (data && data->count)
876 176 0 if (data->what[n] == 's')
885 176 0 if (av_tindex(av) >= 3)
905 30 42 if (ANYOF_FLAGS(a->rn) & (ANYOF_SHARED_d_UPPER_LATIN1_UTF8_STRING_MATCHES_non_d_RUNTIME_USER_PROP
928 0 5368 if (a->rn->flags >= SIZEOF_ARRAY(posix_regclass_blocks))
935 0 5368 if (!mask)
980 0 4182 if (!convert_class_narrow(a, map))
993 0 988 if (!convert_class_narrow(a, &mask))
1007 0 644 if (offs <= 2)
1020 1540 1484 if (((p->type == EXACT) || (p->type == EXACTF) || (p->type == EXACTFU)) &&
1540 0 if (((p->type == EXACT) || (p->type == EXACTF) || (p->type == EXACTFU)) &&
24 1516 if (((p->type == EXACT) || (p->type == EXACTF) || (p->type == EXACTFU)) &&
1508 0 if (((p->type == EXACT) || (p->type == EXACTF) || (p->type == EXACTFU)) &&
1025 502 1014 else if (trivial_nodes[p->type] ||
439 63 else if (trivial_nodes[p->type] ||
1026 408 31 (p->type == REG_ANY) || (p->type == SANY) ||
356 52 (p->type == REG_ANY) || (p->type == SANY) ||
1027 322 34 (p->type == POSIXD) || (p->type == NPOSIXD) ||
250 72 (p->type == POSIXD) || (p->type == NPOSIXD) ||
1028 247 3 (p->type == POSIXU) || (p->type == NPOSIXU) ||
168 79 (p->type == POSIXU) || (p->type == NPOSIXU) ||
1029 159 9 (p->type == POSIXA) || (p->type == NPOSIXA) ||
4 155 (p->type == POSIXA) || (p->type == NPOSIXA) ||
1034 101 54 else if ((p->type == ANYOF) || (p->type == ANYOFD))
95 6 else if ((p->type == ANYOF) || (p->type == ANYOFD))
1040 0 149 if (unknown)
1067 2 4 else if ((p->type == IFMATCH) || (p->type == UNLESSM) ||
0 2 else if ((p->type == IFMATCH) || (p->type == UNLESSM) ||
0 0 else if ((p->type == IFMATCH) || (p->type == UNLESSM) ||
1083 4106 2892 while (e->type != END)
1085 4004 102 offs = GET_OFFSET(e);
1086 0 4106 if (offs <= 0)
1113 18112 0 if (pt->engine && (pt->engine != &PL_core_reg_engine))
0 18112 if (pt->engine && (pt->engine != &PL_core_reg_engine))
1121 0 18112 if (!pr)
1128 0 18112 if (!p)
1134 18112 0 if (!((p->flags == REG_MAGIC) &&
0 18112 if (!((p->flags == REG_MAGIC) &&
1167 216 0 if (('0' <= d) && (d <= '9'))
149 67 if (('0' <= d) && (d <= '9'))
1198 116050 18126 for (i = 0; i < prelen; ++i)
1202 1252 114798 if (c == '.')
1210 104056 11994 if (!quoted)
1214 11994 92062 if (c == '\\')
1223 441 11553 if (c == 'N')
1226 24 417 if ((i + 8 < prelen) &&
11 13 if ((i + 8 < prelen) &&
1227 11 0 !memcmp(precomp + i + 1, "{U+00", 5) &&
1228 11 0 isxdigit(precomp[i + 6]) && isxdigit(precomp[i + 7]) &&
11 0 isxdigit(precomp[i + 6]) && isxdigit(precomp[i + 7]) &&
1232 5 6 if ((x != '\r') && (x != '\n'))
0 5 if ((x != '\r') && (x != '\n'))
1239 220 210 else if ((i + 1 < prelen) &&
13 207 else if ((i + 1 < prelen) &&
1250 117 11436 else if (c == 'x')
1253 97 0 isxdigit(precomp[i + 1]) && isxdigit(precomp[i + 2]))
1256 88 9 if ((x != '\r') && (x != '\n'))
85 3 if ((x != '\r') && (x != '\n'))
1269 11456 538 if (!matched)
1272 339 11117 if (forced_byte[bf.offs] & bf.mask)
1290 0 913 if (!alt)
1310 0 376 if (!alt)
1317 376 0 if ((last >= REGNODE_MAX) || !trivial_nodes[last])
0 376 if ((last >= REGNODE_MAX) || !trivial_nodes[last])
1337 14594 1503 offs = GET_OFFSET(a->rn);
1338 0 16097 if (offs <= 0)
1353 10771 5326 if (++(a->spent) >= a->rn->flags)
1371 17403 1409 offs = GET_OFFSET(a->rn);
1372 0 18812 if (offs <= 0)
1383 73 33023 if (a->rn->type == END)
1387 18226 14797 else if ((a->rn->type == EXACT) || (a->rn->type == EXACTF) || (a->rn->type == EXACTFU)
18002 224 else if ((a->rn->type == EXACT) || (a->rn->type == EXACTF) || (a->rn->type == EXACTFU)
1076 16926 else if ((a->rn->type == EXACT) || (a->rn->type == EXACTF) || (a->rn->type == EXACTFU)
1408 92 0 offs = GET_OFFSET(p);
1409 0 92 if (offs <= 0)
1415 32 92 while (trivial_nodes[q->type])
1417 22 10 offs = GET_OFFSET(q);
1418 0 32 if (offs <= 0)
1433 0 18133 if (!rs)
1439 0 18128 if (!rx)
1449 18128 0 if (rx)
1461 672 5809 if (anchored)
1468 73 5736 if (rv <= 0)
1485 0 13144 if (rv <= 0)
1492 0 13144 if (rv <= 0)
1498 0 13144 if (rv < 0)
1503 257 12887 if (!rv)
1523 0 821 if (rv <= 0)
1539 0 262 if (offs < 0)
1562 0 80 if (sz1 < 0)
1568 0 80 if (sz2 < 0)
1574 0 80 if (!alt1)
1580 0 80 if (!alt2)
1597 1 79 if (rv <= 0)
1622 0 77 if (sz1 < 0)
1628 0 77 if (sz2 < 0)
1634 0 77 if (!alt1)
1640 0 77 if (!alt2)
1657 2 75 if (rv <= 0)
1682 0 31 if (sz1 < 0)
1688 0 31 if (sz2 < 0)
1694 0 31 if (!alt1)
1700 0 31 if (!alt2)
1717 1 30 if (rv <= 0)
1736 8 629 if (anchored)
1741 0 629 if (bump_regular(a1) <= 0)
1747 62 567 if (!rv)
1776 234 47542 if (p->flags & ANYOF_INVERT)
1796 26160 792 for (i = 0; i < ANYOF_BITMAP_SIZE; ++i)
1798 3623 22537 loc1 = b1 ? b1[i] : get_bitmap_byte(a1->rn, i);
1799 6609 19551 loc2 = b2 ? b2[i] : get_bitmap_byte(a2->rn, i);
1800 163 25997 if (loc1 & ~loc2)
1845 2 3 if (a1->rn->flags & ANYOF_MATCHES_ALL_ABOVE_BITMAP)
1851 6 0 for (i = 0; i < ANYOF_BITMAP_SIZE; ++i)
1853 3 3 req = (i != bf.offs) ? 0 : bf.mask;
1854 3 3 if (get_bitmap_byte(a1->rn, i) != req)
1861 0 0 if (bump_regular(&tail1) <= 0)
1867 0 0 if (bump_regular(&tail2) <= 0)
1977 421 92 if ((extra_left || (a1->rn->flags & ANYOF_MATCHES_ALL_ABOVE_BITMAP)) &&
59 362 if ((extra_left || (a1->rn->flags & ANYOF_MATCHES_ALL_ABOVE_BITMAP)) &&
96 55 if ((extra_left || (a1->rn->flags & ANYOF_MATCHES_ALL_ABOVE_BITMAP)) &&
1988 91 5 if ((a1->rn->flags & ANYOF_SHARED_d_UPPER_LATIN1_UTF8_STRING_MATCHES_non_d_RUNTIME_USER_PROP) &&
88 3 if ((a1->rn->flags & ANYOF_SHARED_d_UPPER_LATIN1_UTF8_STRING_MATCHES_non_d_RUNTIME_USER_PROP) &&
1993 88 0 if (invlist1 && invlist2)
88 0 if (invlist1 && invlist2)
1997 88 0 if (ill1 && (ill1 == ill2))
88 0 if (ill1 && (ill1 == ill2))
2001 88 0 if (!memcmp(ila1, ila2, ill1 * sizeof(UV)))
2010 0 8 if (cr1 == -1)
2016 0 8 if (cr2 == -1)
2023 0 8 if (m2 & NOT_ALNUM_BLOCK)
2029 8 0 if (!cr1 || !cr2 || (m1 & ~m2))
8 0 if (!cr1 || !cr2 || (m1 & ~m2))
3 5 if (!cr1 || !cr2 || (m1 & ~m2))
2193 0 0 for (i = 0; i < left->expl_size; ++i)
2196 0 0 if (!(get_bitmap_byte(a2->rn, bf.offs) & bf.mask))
2209 32 2 for (i = 0; i < 16; ++i)
2211 0 32 if (!(get_bitmap_byte(a2->rn, i) & 0xff))
2229 1398 0 if (!cr1 || !cr2 || (m1 & ~m2))
1398 0 if (!cr1 || !cr2 || (m1 & ~m2))
259 1139 if (!cr1 || !cr2 || (m1 & ~m2))
2246 693 0 if (!cr1 || !cr2)
0 693 if (!cr1 || !cr2)
2253 76 617 if ((m1 & VERTICAL_SPACE_BLOCK) && !(m2 & VERTICAL_SPACE_BLOCK))
72 4 if ((m1 & VERTICAL_SPACE_BLOCK) && !(m2 & VERTICAL_SPACE_BLOCK))
2258 189 504 if (m1 & m2)
2280 494 0 if (!cr2 || !cr2 || (m1 & ~m2))
494 0 if (!cr2 || !cr2 || (m1 & ~m2))
128 366 if (!cr2 || !cr2 || (m1 & ~m2))
2299 59 832 if (!_generic_isCC_A(*seq, a2->rn->flags))
2319 75 36 for (i = 0; i < 2; ++i)
2321 3 72 if (!_generic_isCC_A(unf[i], a2->rn->flags))
2340 22 761 if (_generic_isCC_A(*seq, a2->rn->flags))
2361 121 60 for (i = 0; i < 2; ++i)
2363 1 120 if (_generic_isCC_A(unf[i], a2->rn->flags))
2391 0 130 if (!convert_class_narrow(a1, &left_block))
2398 39 91 if (!(a2->rn->flags & ANYOF_MATCHES_ALL_ABOVE_BITMAP))
2404 1 38 if (a2->rn->flags & ANYOF_INVERT)
2411 0 38 if (cr == -1)
2416 38 0 if (!cr || !(right_map & left_block))
32 6 if (!cr || !(right_map & left_block))
2424 0 97 if (a1->rn->flags >= SIZEOF_ARRAY(posix_regclass_bitmaps))
2430 0 97 if (!b)
2449 0 68 if (!convert_class_narrow(a1, &left_block))
2460 19 49 if (!(a2->rn->flags & ANYOF_MATCHES_ALL_ABOVE_BITMAP))
2466 1 18 if (a2->rn->flags & ANYOF_INVERT)
2473 0 18 if (cr == -1)
2487 18 0 if (!cr || !(right_map & left_block))
7 11 if (!cr || !(right_map & left_block))
2493 0 60 if (a1->rn->flags >= SIZEOF_ARRAY(posix_regclass_bitmaps))
2499 0 60 if (!b)
2520 288 588 if (!(get_bitmap_byte(a2->rn, bf.offs) & bf.mask))
2543 76 37 for (i = 0; i < 2; ++i)
2546 1 75 if (!(get_bitmap_byte(a2->rn, bf.offs) & bf.mask))
2756 4 6 if ((*cur == '\r') && ((a1->spent + 1) < a1->rn->flags))
2 2 if ((*cur == '\r') && ((a1->spent + 1) < a1->rn->flags))
2761 2 0 if (*next == '\n')
2769 4 4 if (!_generic_isCC_A(*cur, _CC_VERTSPACE))
2786 31 596 if (!lookup[(unsigned char)(*seq)])
2814 2 6 if (a2->rn->flags & ANYOF_MATCHES_ALL_ABOVE_BITMAP)
2889 0 97 if (a2->rn->flags >= SIZEOF_ARRAY(posix_regclass_bitmaps))
2896 0 97 if (!b)
2964 1 12 if (ANYOF_FLAGS(a1->rn) & ANYOF_SHARED_d_UPPER_LATIN1_UTF8_STRING_MATCHES_non_d_RUNTIME_USER_PROP)
2969 0 12 if (a2->rn->flags >= SIZEOF_ARRAY(posix_regclass_bitmaps))
2976 0 12 if (!b)
2995 0 75 if (a2->rn->flags >= SIZEOF_ARRAY(posix_regclass_nbitmaps))
3002 0 75 if (!b)
3082 0 256 if (flags >= SIZEOF_ARRAY(newline_posix_regclasses))
3089 54 202 if (newline_posix_regclasses[flags])
3104 0 125 if (flags >= SIZEOF_ARRAY(newline_posix_regclasses))
3110 82 43 if (!newline_posix_regclasses[flags])
3124 7 18 if (a1->rn->flags != _CC_VERTSPACE)
3142 1 5 if (a1->rn->flags & ANYOF_MATCHES_ALL_ABOVE_BITMAP)
3150 41 0 for (i = 0; i < ANYOF_BITMAP_SIZE; ++i)
3152 5 36 req = (i != bf.offs) ? 0 : bf.mask;
3153 5 36 if (get_bitmap_byte(a1->rn, i) != req)
3206 3 18 if (a1->rn->flags & ANYOF_MATCHES_ALL_ABOVE_BITMAP)
3214 36 18 for (i = 0; i < 2; ++i)
3219 0 18 if (bf[0].offs == bf[1].offs)
3225 36 18 for (i = 0; i < 2; ++i)
3282 2546 4233 if (*q1 != *q2)
3302 10 78 if ((*q1 != unf[0]) && (*q1 != unf[1]))
6 4 if ((*q1 != unf[0]) && (*q1 != unf[1]))
3322 23 5 if ((unf[0] != *q2) || (unf[1] != *q2))
22 1 if ((unf[0] != *q2) || (unf[1] != *q2))
3341 507 10 l1 = TOLOWER(*q1);
5 502 l1 = TOLOWER(*q1);
3342 507 10 l2 = TOLOWER(*q2);
12 495 l2 = TOLOWER(*q2);
3344 58 459 if (l1 != l2)
3366 1257 580 while (p1->type == BRANCH)
3368 0 1257 if (p1->next_off == 0)
3383 0 1257 if (rv < 0)
3388 37 1220 if (!rv)
3401 0 580 if (tsz <= 0)
3419 18 0 offs = GET_OFFSET(a1->rn);
3420 0 18 if (offs <= 0)
3427 0 18 if (sz < 0)
3433 0 18 if (!alt)
3448 557 17 for (i = 0; i < ANYOF_BITMAP_SIZE; ++i)
3451 4452 556 for (j = 0; j < 8; ++j)
3453 0 4452 loc = b1 ? b1[i] : get_bitmap_byte(a1->rn, i);
3454 465 3987 if (loc & power)
3464 0 465 if (rv < 0)
3470 1 464 if (!rv)
3483 0 17 if (!right.rn)
3539 3697 567 while ((p2->type == BRANCH) && !rv)
2573 1124 while ((p2->type == BRANCH) && !rv)
3546 0 2573 if (p2->next_off == 0)
3561 0 1691 if (rv < 0)
3566 132 1559 if (!rv)
3592 0 413 if (sz < 0)
3601 413 0 offs = GET_OFFSET(p2);
3602 0 413 if (offs <= 0)
3612 0 413 if (rv < 0)
3617 9 404 if (rv == 0)
3623 0 9 if (rv < 0)
3628 4 5 if (!rv)
3636 0 5 if (!anchored)
3642 0 409 if (rv <= 0)
3674 123 13 if (rv)
3679 13 0 offs = GET_OFFSET(p1);
3681 0 13 if (offs <= 0)
3715 140 16 if (rv)
3720 16 0 offs = GET_OFFSET(p2);
3722 0 16 if (offs <= 0)
3747 0 310 if (n <= 0)
3755 0 310 if (sz < 0)
3764 310 0 offs = GET_OFFSET(p2);
3765 0 310 if (offs <= 0)
3775 0 310 if (rv < 0)
3780 4 306 if (rv == 0)
3783 0 4 if (!alt)
3792 0 4 if (rv < 0)
3798 2 2 if (!rv)
3805 2 0 if (cnt[1] < INFINITE_COUNT)
3810 1 1 if ((cnt[1] > 0) && !anchored)
0 1 if ((cnt[1] > 0) && !anchored)
3825 0 308 if (rv <= 0)
3848 0 505 if (sz < 0)
3853 0 505 if (sz < 2)
3860 0 505 if (!alt)
3865 14 491 if (anchored)
3868 0 14 if (offs <= 0)
3874 6 8 if (q->type != END)
3895 4 2 if (rv <= 0)
3925 0 275 if (sz < 0)
3930 0 275 if (sz < 2)
3944 0 275 if (rv < 0)
3949 24 251 if (!rv)
3963 0 1257 if (bump_regular(a2) <= 0)
3985 0 21 if (cnt[0] < 0)
3992 0 21 if (!cnt[0])
4005 9 12 if (cnt[0] > 1)
4034 11 19 if (!rv)
4057 0 41 if (cnt[0] < 0)
4064 2 39 if (cnt[0] > 1) /* FIXME: fails '(?:aa)+' => 'a{2,}' */
4073 35 4 if (cnt[1] != INFINITE_COUNT)
4076 0 35 if (offs <= 0)
4082 0 35 if (e2->type != END)
4093 0 39 return (!rv && !cnt[0]) ? compare_next(anchored, a1, a2) : rv;
0 0 return (!rv && !cnt[0]) ? compare_next(anchored, a1, a2) : rv;
4109 155 220 if (altcnt[1] < INFINITE_COUNT)
4130 8 626 if (!cnt[0])
4137 0 626 if (sz < 0)
4142 0 626 if (sz < 3)
4148 339 287 if (cnt[0] > 1)
4152 339 0 offs = GET_OFFSET(p1);
4153 0 339 if (offs < 0)
4158 0 339 if (offs < 3)
4165 0 339 if (!alt)
4184 47 240 if (anchored && !((cnt[0] == 1) && (cnt[1] == 1)))
47 0 if (anchored && !((cnt[0] == 1) && (cnt[1] == 1)))
7 40 if (anchored && !((cnt[0] == 1) && (cnt[1] == 1)))
4189 0 7 if (!alt)
4195 0 7 if (offs <= 0)
4201 0 7 if (q->type != END)
4222 0 0 if (rv <= 0)
4248 0 475 if (cnt[0] < 0)
4259 165 310 if (cnt[0] > 0)
4263 0 165 if (sz < 0)
4268 0 165 if (sz < 3)
4280 0 165 if (rv < 0)
4285 23 142 if (!rv)
4289 0 23 if (rv)
4296 15 8 if (cnt[0] > 1)
4298 15 0 offs = GET_OFFSET(p2);
4299 0 15 if (offs < 0)
4304 0 15 if (offs < 3)
4311 0 15 if (!alt)
4334 81 61 if (cnt[0] == 1)
4339 40 21 if (a1->rn->type == END)
4352 0 21 if (!alt)
4359 21 0 if (altcnt[1] > 0)
4374 2 19 if (rv <= 0)
4407 0 342 if (cnt1[0] < 0)
4417 0 342 if (cnt2[0] < 0)
4424 5 337 if (cnt2[0] > cnt1[0]) /* FIXME: fails '(?:aa){1,}' => 'a{2,}' */
4434 36 301 if (cnt1[1] > cnt2[1])
4438 0 36 if (offs <= 0)
4445 3 33 if (e2->type != END)
4459 8 326 return (!rv && !cnt2[0]) ? compare_next(anchored, a1, a2) : rv;
3 5 return (!rv && !cnt2[0]) ? compare_next(anchored, a1, a2) : rv;
4476 0 119 if (bump_with_check(&left) <= 0)
4482 0 119 if (t >= REGNODE_MAX)
4487 1 118 else if (t == ANYOF)
4491 0 1 if (left.rn->flags & ANYOF_MATCHES_ALL_ABOVE_BITMAP)
4496 32 1 for (i = 0; i < ANYOF_BITMAP_SIZE; ++i)
4498 0 32 if (get_bitmap_byte(left.rn, i) & ~bitmap[i])
4504 33 85 else if ((t == EXACT) || (t == EXACTF) || (t == EXACTFU))
33 0 else if ((t == EXACT) || (t == EXACTF) || (t == EXACTFU))
2 31 else if ((t == EXACT) || (t == EXACTF) || (t == EXACTFU))
4507 43 44 if (!lookup[(unsigned char)(*seq)])
4512 30 1 else if ((t == POSIXD) || (t == NPOSIXD) || (t == POSIXU) || (t == NPOSIXU))
30 0 else if ((t == POSIXD) || (t == NPOSIXD) || (t == POSIXU) || (t == NPOSIXU))
23 7 else if ((t == POSIXD) || (t == NPOSIXD) || (t == POSIXU) || (t == NPOSIXU))
0 23 else if ((t == POSIXD) || (t == NPOSIXD) || (t == POSIXU) || (t == NPOSIXU))
4515 8 0 if ((flags >= regclasses_size) || !regclasses[flags])
0 8 if ((flags >= regclasses_size) || !regclasses[flags])
4520 17 6 else if (!oktypes[t])
4526 0 59 if (bump_with_check(&right) <= 0)
4531 9 50 return move_left ? compare(1, &left, &right) :
4572 174 5 for (i = 0; (i < ANYOF_BITMAP_SIZE) && (cmp[0] || cmp[1]); ++i)
125 49 for (i = 0; (i < ANYOF_BITMAP_SIZE) && (cmp[0] || cmp[1]); ++i)
48 1 for (i = 0; (i < ANYOF_BITMAP_SIZE) && (cmp[0] || cmp[1]); ++i)
4574 0 173 loc = bitmap1 ? bitmap1[i] : get_bitmap_byte(a1->rn, i);
4576 13 160 if (loc & ~bitmap2[i])
4581 4 169 if (loc & bitmap2[i])
4587 3 3 if (cmp[0] && cmp[1])
0 3 if (cmp[0] && cmp[1])
4593 9 1 for (i = 0; i < SIZEOF_ARRAY(cmp); ++i)
4595 5 4 if (cmp[i])
4612 1 4 if (a1->rn->flags & ANYOF_MATCHES_ALL_ABOVE_BITMAP)
4625 1 2 if (a1->rn->flags & ANYOF_MATCHES_ALL_ABOVE_BITMAP)
4677 63 1 compare_next_nword : compare_next_word;
4693 15 2 compare_next_word : compare_next_nword;
4704 10 0 if ((flags >= SIZEOF_ARRAY(word_posix_regclasses)) ||
10 0 if ((flags >= SIZEOF_ARRAY(word_posix_regclasses)) ||
4705 5 5 (flags >= SIZEOF_ARRAY(non_word_posix_regclasses)) ||
4706 0 5 (!word_posix_regclasses[flags] && !non_word_posix_regclasses[flags]))
4714 5 5 compare_next_nword : compare_next_word;
4725 9 0 if ((flags >= SIZEOF_ARRAY(word_posix_regclasses)) ||
9 0 if ((flags >= SIZEOF_ARRAY(word_posix_regclasses)) ||
4726 4 5 (flags >= SIZEOF_ARRAY(non_word_posix_regclasses)) ||
4727 0 4 (!word_posix_regclasses[flags] && !non_word_posix_regclasses[flags]))
4735 5 4 compare_next_word : compare_next_nword;
4747 3 2 if (a1->rn->flags != _CC_WORDCHAR)
4763 7 2 if (a1->rn->flags != _CC_WORDCHAR)
4805 7 9056 if ((get_forced_semantics(pt1) | get_forced_semantics(pt2)) == FORCED_MISMATCH)
4811 0 9056 if (!p1)
4817 0 9056 if (!p2)
4863 38246 0 if ((a1->rn->type >= REGNODE_MAX) || (a2->rn->type >= REGNODE_MAX))
0 38246 if ((a1->rn->type >= REGNODE_MAX) || (a2->rn->type >= REGNODE_MAX))
4870 933 37313 if (!cmp)
4896 10 1 for (i = 0; i < SIZEOF_ARRAY(digit_expl); ++i)
4906 6 1 for (i = 0; i < 6; ++i)
4912 6 1 for (i = 0; i < 6; ++i)
4927 26 1 for (i = 0; i < LETTER_COUNT; ++i)
4933 26 1 for (i = 0; i < LETTER_COUNT; ++i)
4943 26 1 for (i = 0; i < LETTER_COUNT; ++i)
4949 26 1 for (i = 0; i < LETTER_COUNT; ++i)
5004 92 1 for (i = 0; i < REGNODE_MAX; ++i)
5009 92 1 for (i = 0; i < REGNODE_MAX; ++i)
5727 92 1 for (i = 0; i < REGNODE_MAX; ++i)
5873 92 1 for (i = 0; i < REGNODE_MAX; ++i)
5886 92 1 for (i = 0; i < REGNODE_MAX; ++i)
5899 92 1 for (i = 0; i < REGNODE_MAX; ++i)
5924 92 1 for (i = 0; i < REGNODE_MAX; ++i)
5944 92 1 for (i = 0; i < REGNODE_MAX; ++i)
5965 92 1 for (i = 0; i < REGNODE_MAX; ++i)
5986 92 1 for (i = 0; i < REGNODE_MAX; ++i)
6007 92 1 for (i = 0; i < REGNODE_MAX; ++i)
6020 92 1 for (i = 0; i < REGNODE_MAX; ++i)
6027 92 1 for (i = 0; i < REGNODE_MAX; ++i)
6124 92 1 for (i = 0; i < REGNODE_MAX; ++i)
6176 92 1 for (i = 0; i < REGNODE_MAX; ++i)