Subroutine Coverage

blib/lib/CPU/x86_64/InstructionWriter.pm
Criterion Covered Total %
subroutine 431 551 78.2
pod 102 464 21.9


line count pod subroutine
3 17 n/a BEGIN
4 17 n/a BEGIN
5 17 n/a BEGIN
6 17 n/a BEGIN
7 17 n/a BEGIN
8 17 n/a BEGIN
9 17 n/a BEGIN
16 17 n/a BEGIN
26 17 n/a BEGIN
28 0 No AH
28 0 No AL
28 0 No AX
28 0 No BH
28 0 No BL
28 0 No BP
28 0 No BPL
28 0 No BX
28 0 No CH
28 0 No CL
28 0 No CX
28 0 No DH
28 0 No DI
28 0 No DIL
28 0 No DL
28 0 No DX
28 0 No EAX
28 0 No EBP
28 0 No EBX
28 0 No ECX
28 0 No EDI
28 0 No EDX
28 0 No ESI
28 0 No ESP
28 0 No R10
28 0 No R10B
28 0 No R10D
28 0 No R10W
28 0 No R11
28 0 No R11B
28 0 No R11D
28 0 No R11W
28 0 No R12
28 0 No R12B
28 0 No R12D
28 0 No R12W
28 0 No R13
28 0 No R13B
28 0 No R13D
28 0 No R13W
28 0 No R14
28 0 No R14B
28 0 No R14D
28 0 No R14W
28 0 No R15
28 0 No R15B
28 0 No R15D
28 0 No R15W
28 0 No R8
28 0 No R8B
28 0 No R8D
28 0 No R8W
28 0 No R9
28 0 No R9B
28 0 No R9D
28 0 No R9W
28 0 No RAX
28 0 No RBP
28 0 No RBX
28 0 No RCX
28 0 No RDI
28 0 No RDX
28 0 No RFLAGS
28 0 No RIP
28 0 No RSI
28 0 No RSP
28 0 No SI
28 0 No SIL
28 0 No SP
28 0 No SPL
76 8 No unknown
77 0 No unknown8
78 0 No unknown16
79 0 No unknown32
80 54807 No unknown64
81 0 No unknown7
82 0 No unknown15
83 0 No unknown31
84 0 No unknown63
104 139 Yes get_label
117 61 Yes label
143 54830 Yes bytes
149 1 Yes data
150 2 Yes data_i8
151 1 Yes data_i16
152 1 Yes data_i32
153 0 Yes data_i64
156 0 Yes data_f32
157 0 Yes data_f64
161 1 Yes align
167 4 n/a _align
175 20 n/a __ANON__
178 1 No align2
179 1 No align4
180 1 No align8
184 9 n/a _autodetect_signature_dst_src
204 0 n/a _autodetect_signature_1op
220 117 Yes nop
225 0 Yes pause
231 2 Yes call_label
235 17 n/a BEGIN
241 2 n/a __ANON__
252 0 Yes call_rel
260 7 Yes call_abs_reg
267 63 Yes call_abs_mem
271 3 No ret
285 4 Yes jmp
289 17 n/a BEGIN
295 10 n/a __ANON__
309 7 Yes jmp_abs_reg
318 63 Yes jmp_abs_mem
322 4 Yes jmp_if_eq
326 4 Yes jmp_if_ne
331 4 Yes jmp_if_unsigned_lt
335 4 Yes jmp_if_unsigned_gt
338 4 Yes jmp_if_unsigned_le
341 4 Yes jmp_if_unsigned_ge
346 4 Yes jmp_if_signed_lt
349 4 Yes jmp_if_signed_gt
352 4 Yes jmp_if_signed_le
355 4 Yes jmp_if_signed_ge
359 4 Yes jmp_if_sign
362 4 Yes jmp_unless_sign
365 4 Yes jmp_if_overflow
368 4 Yes jmp_unless_overflow
371 4 Yes jmp_if_parity_even
375 4 Yes jmp_if_parity_odd
380 2 Yes jmp_cx_zero
383 2 Yes loop
385 2 Yes loopz
388 2 Yes loopnz
392 6 Yes mov
395 49 Yes mov64_reg_reg
396 1 No mov32_reg_reg
397 0 No mov16_reg_reg
398 0 No mov8_reg_reg
401 443 No mov64_mem_reg
402 445 No mov64_reg_mem
403 442 No mov32_mem_reg
404 446 No mov32_reg_mem
405 442 No mov16_mem_reg
406 444 No mov16_reg_mem
407 442 No mov8_mem_reg
408 444 No mov8_reg_mem
411 3548 n/a _append_mov_reg_mem
425 14 n/a __ANON__
448 63 Yes mov64_reg_imm
453 63 n/a _encode_mov64_imm
454 17 n/a BEGIN
471 57 No mov32_reg_imm
475 57 n/a __ANON__
478 49 No mov16_reg_imm
483 49 n/a __ANON__
486 55 No mov8_reg_imm
495 55 n/a __ANON__
499 63 No mov64_mem_imm
500 63 No mov32_mem_imm
501 63 No mov16_mem_imm
502 63 No mov8_mem_imm
505 3 Yes lea
507 0 Yes lea16_reg_reg
508 441 Yes lea16_reg_mem
509 1 Yes lea32_reg_reg
510 443 Yes lea32_reg_mem
511 0 Yes lea64_reg_reg
512 441 Yes lea64_reg_mem
515 0 Yes add
517 49 No add64_reg_reg
518 49 No add32_reg_reg
519 49 No add16_reg_reg
520 49 No add8_reg_reg
522 441 No add64_reg_mem
523 441 No add32_reg_mem
524 441 No add16_reg_mem
525 441 No add8_reg_mem
527 441 No add64_mem_reg
528 441 No add32_mem_reg
529 441 No add16_mem_reg
530 441 No add8_mem_reg
532 56 No add64_reg_imm
533 56 No add32_reg_imm
534 49 No add16_reg_imm
535 35 No add8_reg_imm
537 504 No add64_mem_imm
538 504 No add32_mem_imm
539 441 No add16_mem_imm
540 315 No add8_mem_imm
543 0 Yes addcarry
546 49 No addcarry64_reg_reg
547 49 No addcarry32_reg_reg
548 49 No addcarry16_reg_reg
549 49 No addcarry8_reg_reg
551 441 No addcarry64_reg_mem
552 441 No addcarry32_reg_mem
553 441 No addcarry16_reg_mem
554 441 No addcarry8_reg_mem
556 441 No addcarry64_mem_reg
557 441 No addcarry32_mem_reg
558 441 No addcarry16_mem_reg
559 441 No addcarry8_mem_reg
561 56 No addcarry64_reg_imm
562 56 No addcarry32_reg_imm
563 49 No addcarry16_reg_imm
564 35 No addcarry8_reg_imm
566 504 No addcarry64_mem_imm
567 504 No addcarry32_mem_imm
568 441 No addcarry16_mem_imm
569 315 No addcarry8_mem_imm
572 0 Yes sub
574 49 No sub64_reg_reg
575 49 No sub32_reg_reg
576 49 No sub16_reg_reg
577 49 No sub8_reg_reg
579 441 No sub64_reg_mem
580 441 No sub32_reg_mem
581 441 No sub16_reg_mem
582 441 No sub8_reg_mem
584 441 No sub64_mem_reg
585 441 No sub32_mem_reg
586 441 No sub16_mem_reg
587 441 No sub8_mem_reg
589 56 No sub64_reg_imm
590 56 No sub32_reg_imm
591 49 No sub16_reg_imm
592 35 No sub8_reg_imm
594 504 No sub64_mem_imm
595 504 No sub32_mem_imm
596 441 No sub16_mem_imm
597 315 No sub8_mem_imm
600 0 Yes and
602 49 No and64_reg_reg
603 49 No and32_reg_reg
604 49 No and16_reg_reg
605 49 No and8_reg_reg
607 441 No and64_reg_mem
608 441 No and32_reg_mem
609 441 No and16_reg_mem
610 441 No and8_reg_mem
612 441 No and64_mem_reg
613 441 No and32_mem_reg
614 441 No and16_mem_reg
615 441 No and8_mem_reg
617 56 No and64_reg_imm
618 56 No and32_reg_imm
619 49 No and16_reg_imm
620 35 No and8_reg_imm
622 504 No and64_mem_imm
623 504 No and32_mem_imm
624 441 No and16_mem_imm
625 315 No and8_mem_imm
628 0 Yes or
630 49 No or64_reg_reg
631 49 No or32_reg_reg
632 49 No or16_reg_reg
633 49 No or8_reg_reg
635 441 No or64_reg_mem
636 441 No or32_reg_mem
637 441 No or16_reg_mem
638 441 No or8_reg_mem
640 441 No or64_mem_reg
641 441 No or32_mem_reg
642 441 No or16_mem_reg
643 441 No or8_mem_reg
645 56 No or64_reg_imm
646 56 No or32_reg_imm
647 49 No or16_reg_imm
648 35 No or8_reg_imm
650 504 No or64_mem_imm
651 504 No or32_mem_imm
652 441 No or16_mem_imm
653 315 No or8_mem_imm
656 0 Yes xor
658 49 No xor64_reg_reg
659 49 No xor32_reg_reg
660 49 No xor16_reg_reg
661 49 No xor8_reg_reg
663 441 No xor64_reg_mem
664 441 No xor32_reg_mem
665 441 No xor16_reg_mem
666 441 No xor8_reg_mem
668 441 No xor64_mem_reg
669 441 No xor32_mem_reg
670 441 No xor16_mem_reg
671 441 No xor8_mem_reg
673 56 No xor64_reg_imm
674 56 No xor32_reg_imm
675 49 No xor16_reg_imm
676 35 No xor8_reg_imm
678 504 No xor64_mem_imm
679 504 No xor32_mem_imm
680 441 No xor16_mem_imm
681 315 No xor8_mem_imm
684 0 Yes shl
686 77 No shl64_reg_imm
687 63 No shl32_reg_imm
688 49 No shl16_reg_imm
689 55 No shl8_reg_imm
691 7 No shl64_reg_cl
692 7 No shl32_reg_cl
693 7 No shl16_reg_cl
694 11 No shl8_reg_cl
696 315 No shl64_mem_imm
697 315 No shl32_mem_imm
698 315 No shl16_mem_imm
699 315 No shl8_mem_imm
701 63 No shl64_mem_cl
702 63 No shl32_mem_cl
703 63 No shl16_mem_cl
704 63 No shl8_mem_cl
707 0 Yes shr
709 77 No shr64_reg_imm
710 63 No shr32_reg_imm
711 49 No shr16_reg_imm
712 55 No shr8_reg_imm
714 7 No shr64_reg_cl
715 7 No shr32_reg_cl
716 7 No shr16_reg_cl
717 11 No shr8_reg_cl
719 315 No shr64_mem_imm
720 315 No shr32_mem_imm
721 315 No shr16_mem_imm
722 315 No shr8_mem_imm
724 63 No shr64_mem_cl
725 63 No shr32_mem_cl
726 63 No shr16_mem_cl
727 63 No shr8_mem_cl
730 0 Yes sar
732 77 No sar64_reg_imm
733 63 No sar32_reg_imm
734 49 No sar16_reg_imm
735 55 No sar8_reg_imm
737 7 No sar64_reg_cl
738 7 No sar32_reg_cl
739 7 No sar16_reg_cl
740 11 No sar8_reg_cl
742 315 No sar64_mem_imm
743 315 No sar32_mem_imm
744 315 No sar16_mem_imm
745 315 No sar8_mem_imm
747 63 No sar64_mem_cl
748 63 No sar32_mem_cl
749 63 No sar16_mem_cl
750 63 No sar8_mem_cl
753 0 Yes cmp
755 49 No cmp64_reg_reg
756 49 No cmp32_reg_reg
757 49 No cmp16_reg_reg
758 49 No cmp8_reg_reg
760 441 No cmp64_reg_mem
761 441 No cmp32_reg_mem
762 441 No cmp16_reg_mem
763 441 No cmp8_reg_mem
765 0 No cmp64_mem_reg
766 0 No cmp32_mem_reg
767 0 No cmp16_mem_reg
768 0 No cmp8_mem_reg
770 56 No cmp64_reg_imm
771 56 No cmp32_reg_imm
772 49 No cmp16_reg_imm
773 35 No cmp8_reg_imm
775 504 No cmp64_mem_imm
776 504 No cmp32_mem_imm
777 441 No cmp16_mem_imm
778 315 No cmp8_mem_imm
781 0 Yes test
783 49 No test64_reg_reg
784 49 No test32_reg_reg
785 49 No test16_reg_reg
786 49 No test8_reg_reg
788 441 No test64_reg_mem
789 441 No test32_reg_mem
790 441 No test16_reg_mem
791 441 No test8_reg_mem
793 56 No test64_reg_imm
794 56 No test32_reg_imm
795 49 No test16_reg_imm
796 35 No test8_reg_imm
798 504 No test64_mem_imm
799 504 No test32_mem_imm
800 441 No test16_mem_imm
801 315 No test8_mem_imm
804 0 Yes dec
806 7 No dec64_reg
807 7 No dec32_reg
808 7 No dec16_reg
809 7 No dec8_reg
811 63 No dec64_mem
812 63 No dec32_mem
813 63 No dec16_mem
814 63 No dec8_mem
817 0 Yes inc
819 7 No inc64_reg
820 7 No inc32_reg
821 7 No inc16_reg
822 7 No inc8_reg
824 63 No inc64_mem
825 63 No inc32_mem
826 63 No inc16_mem
827 63 No inc8_mem
830 0 No not
832 7 No not64_reg
833 7 No not32_reg
834 7 No not16_reg
835 7 No not8_reg
837 63 No not64_mem
838 63 No not32_mem
839 63 No not16_mem
840 63 No not8_mem
843 0 No neg
845 7 No neg64_reg
846 7 No neg32_reg
847 7 No neg16_reg
848 7 No neg8_reg
850 63 No neg64_mem
851 63 No neg32_mem
852 63 No neg16_mem
853 63 No neg8_mem
856 0 No div
857 0 No idiv
859 7 No div64_reg
860 7 No div32_reg
861 7 No div16_reg
862 7 No div8_reg
864 63 No div64_mem
865 63 No div32_mem
866 63 No div16_mem
867 63 No div8_mem
869 7 No idiv64_reg
870 7 No idiv32_reg
871 7 No idiv16_reg
872 7 No idiv8_reg
874 63 No idiv64_mem
875 63 No idiv32_mem
876 63 No idiv16_mem
877 63 No idiv8_mem
904 0 Yes mul64_dxax_reg
905 0 Yes mul32_dxax_reg
906 0 Yes mul16_dxax_reg
907 0 Yes mul8_ax_reg
912 1 Yes sign_extend_al_ax
915 1 Yes sign_extend_ax_eax
918 1 Yes sign_extend_eax_rax
921 1 Yes sign_extend_ax_dx
924 1 Yes sign_extend_eax_edx
927 1 Yes sign_extend_rax_rdx
932 3 Yes flag_carry
933 1 Yes clc
934 1 Yes cmc
935 1 Yes stc
939 17 Yes END
939 0 n/a push
942 7 No push_reg
949 8 No push_imm
950 17 n/a BEGIN
958 63 No push_mem
962 17 Yes END
962 0 n/a pop
965 7 Yes pop_reg
971 63 Yes pop_mem
975 28 No enter
992 1 No leave
996 0 Yes syscall
1001 24 Yes rep
1004 24 Yes repnz
1009 2 Yes flag_direction
1010 1 Yes cld
1011 1 Yes std
1014 4 Yes movs64
1017 4 Yes movs32
1020 4 Yes movs16
1023 4 Yes movs8
1027 4 Yes cmps64
1030 4 Yes cmps32
1033 4 Yes cmps16
1036 4 Yes cmps8
1040 4 Yes scas64
1043 4 Yes scas32
1046 4 Yes scas16
1049 4 Yes scas8
1054 0 Yes mfence
1058 0 Yes lfence
1062 0 Yes sfence
1081 14 n/a _encode_op_reg_reg
1082 17 n/a BEGIN
1096 735 n/a _append_op64_reg_reg
1099 17 n/a BEGIN
1106 646 n/a _append_op32_reg_reg
1109 17 n/a BEGIN
1117 602 n/a _append_op16_reg_reg
1120 17 n/a BEGIN
1128 420 n/a _append_op8_reg_reg
1129 17 n/a BEGIN
1155 212 n/a _append_op8_opreg_reg
1156 17 n/a BEGIN
1181 9263 n/a _append_op64_reg_mem
1194 9013 n/a _append_op32_reg_mem
1206 9009 n/a _append_op16_reg_mem
1219 7308 n/a _append_op8_reg_mem
1241 1260 n/a _append_op8_opreg_mem
1258 63 n/a _append_op8_const_to_mem
1267 63 n/a _append_op16_const_to_mem
1277 63 n/a _append_op32_const_to_mem
1286 63 n/a _append_op64_const_to_mem
1305 50225 n/a _encode_op_reg_mem
1306 17 n/a BEGIN
1381 448 n/a _append_mathop64_const
1386 448 n/a _encode_mathop64_imm
1387 17 n/a BEGIN
1405 448 n/a _append_mathop32_const
1410 448 n/a _encode_mathop32_imm
1411 17 n/a BEGIN
1431 392 n/a _append_mathop16_const
1436 392 n/a _encode_mathop16_imm
1437 17 n/a BEGIN
1465 280 n/a _append_mathop8_const
1466 17 n/a BEGIN
1486 4032 n/a _append_mathop64_const_to_mem
1495 4032 n/a _encode_mathop64_mem_immed
1496 17 n/a BEGIN
1505 4032 n/a _append_mathop32_const_to_mem
1514 4032 n/a _encode_mathop32_mem_immed
1515 17 n/a BEGIN
1524 3528 n/a _append_mathop16_const_to_mem
1534 3528 n/a _encode_mathop16_mem_immed
1535 17 n/a BEGIN
1544 2520 n/a _append_mathop8_const_to_mem
1553 2520 n/a _encode_mathop8_mem_immed
1554 17 n/a BEGIN
1571 732 n/a _append_shiftop_reg_imm
1598 3780 n/a _append_shiftop_mem_imm
1629 64 n/a _append_jmp_cond
1632 17 n/a BEGIN
1638 160 n/a __ANON__
1658 8 n/a _append_jmp_cx
1659 17 n/a BEGIN
1665 8 n/a __ANON__
1676 51729 n/a _append_possible_unknown
1684 0 n/a __ANON__
1716 90 n/a _mark_unresolved
1744 0 n/a _repack
1745 17 n/a BEGIN
1764 54830 n/a _resolve