Branch Coverage

AM.xs
Criterion Covered Total %
branch 141 164 85.9


line true false branch
237 768 192 for (i = 0; i < NUM_LATTICES; ++i) {
307 49944 6243 for (j = 8; j; --j) {
314 0 6243 Copy(p, dividend, length, AM_LONG);
318 64348 6243 while (length && (*(dividend + length - 1) == 0)) {
49944 14404 while (length && (*(dividend + length - 1) == 0)) {
321 6243 14404 if (length == 0) {
327 14408 14404 while (dptr >= dividend) {
331 230528 14408 for (i = 16; i; ) {
333 17580 212948 if (tens[i] <= *dptr) {
366 222091 121818 while (*intersection_list_top > *subcontext_list_top) {
369 9227 112591 if (*intersection_list_top == 0) {
372 33008 79583 if (*intersection_list_top < *subcontext_list_top) {
401 513960 184391 while (*intersection_list_top > *subcontext_list_top) {
404 21261 163130 if (*intersection_list_top == 0) {
407 94156 68974 if (*intersection_list_top < *subcontext_list_top) {
418 29835 39139 if (class == 0) {
420 1747 28088 if (length > 1) {
428 10720 28419 if (class != subcontext_class[*intersection_list_top]) {
450 160 10 for (i = 16; i; i--) {
502 768 192 for (i = 0; i < NUM_LATTICES; ++i) {
504 0 768 Newxz(guts.lptr[i], 1 << v, AM_SHORT);
505 0 768 Newxz(guts.sptr[i], 1 << (v + 1), AM_SUPRA); /* CHANGED */ /* TODO: what changed? */
562 776 194 for (chunk = 0; chunk < NUM_LATTICES; ++chunk) {
566 0 776 Zero(lptr[chunk], 1 << lattice_sizes[chunk], AM_SHORT);
569 6272 776 for (i = 1; i < 1 << (lattice_sizes[chunk] + 1); ++i) {/* CHANGED (TODO: changed what?) */
589 0 194 subcontextnumber = (AM_SHORT) HvUSEDKEYS(context_to_class);
590 0 194 Newxz(subcontext, NUM_LATTICES * (subcontextnumber + 1), AM_SHORT);
592 0 194 Newxz(subcontext_class, subcontextnumber + 1, AM_SHORT);
594 0 194 Newxz(intersectlist, subcontextnumber + 1, AM_SHORT);
595 0 194 Newxz(intersectlist2, subcontextnumber + 1, AM_SHORT);
597 0 194 Newxz(intersectlist3, subcontextnumber + 1, AM_SHORT);
601 8188 194 while ((he = hv_iternext(context_to_class))) {
604 32752 8188 for (chunk = 0; chunk < NUM_LATTICES; ++chunk, ++contextptr) {
681 6364 26388 if (context == 0) {
682 22212 6364 for (iter_supras(p, supralist)) {
684 0 22212 Newxz(data, p->data[0] + 3, AM_SHORT);
691 732 5632 if (lattice[context] == 0) {
708 2991 732 for (i = 0; i < (1 << active); ++i) {
709 1641 1350 if (lattice[i] == 0) {
721 55397 26388 for (i = 1 << (active - 1); i; i >>= 1) {
722 15490 39907 if (!(i & context)) {
729 25331 1057 if (pi) {
740 0 26388 Newxz(c->data, p->data[0] + 3, AM_SHORT);
747 16929 26388 while (--t) {
749 1439 16929 for (i = 0, tt = ~t & (t - 1); tt; tt >>= 1, ++i) {
755 16440 489 if (pi) {
771 0 15785 Newxz(c->data, p->data[0] + 3, AM_SHORT);
786 39994 95958 if (supralist[i = p->next].count == 0) {
795 109564 26388 } while (p->next);
827 630 194 for (iter_supras(p0, sptr[0])) {
828 2121 630 for (iter_supras(p1, sptr[1])) {
836 154 1967 if (k == ilist2top) {
841 7106 1967 for (iter_supras(p2, sptr[2])) {
850 694 6412 if (k == ilist3top) {
855 33728 6412 for (iter_supras(p3, sptr[3])) {
868 15621 18107 if (length) {
889 15601 20 if(!linear_flag){
892 34957 15601 for (i = 0; i < length; ++i) {
893 0 34957 pointercount += (AM_LONG) SvUV(*hv_fetch(contextsize,
896 0 15601 if (pointercount & 0xffff0000) {
932 34990 15621 for (i = 0; i < length; ++i) {
938 2745 32245 if (!SvPOK(tempsv)) {
939 2745 0 SvUPGRADE(tempsv, SVt_PVNV);
940 2745 0 SvGROW(tempsv, 8 * sizeof(AM_LONG) + 1);
2745 0 SvGROW(tempsv, 8 * sizeof(AM_LONG) + 1);
946 244930 34990 for (j = 0; j < 7; ++j) {
958 630 194 for (iter_supras(p0, sptr[0])) {
961 639 194 for (iter_supras(p1, sptr[1])) {
964 682 194 for (iter_supras(p2, sptr[2])) {
967 960 194 for (iter_supras(p3, sptr[3])) {
993 2745 194 while ((he = hv_iternext(pointers))) {
1013 19215 2745 for (i = 0; i < 7; ++i) {
1020 0 2745 if (counthi) {
1021 0 0 for (i = 0; i < 6; ++i) {
1026 19215 2745 for (i = 0; i < 7; ++i) {
1033 2745 0 SvUPGRADE(tempsv, SVt_PVNV);
1040 2702 43 if (this_class) {
1042 18914 2702 for (i = 0; i < 7; ++i) {
1048 112 43 while (SvIOK(dataitem)) {
1052 784 112 for (i = 0; i < 7; ++i) {
1060 559 194 for (i = 1; i <= num_classes; ++i) {
1064 194 0 SvUPGRADE(tempsv, SVt_PVNV);