Lines Matching full:count

762     uint8_t count;  in exec_shl()  local
767 count = decode->op[1].val; in exec_shl()
768 count &= 0x1f; /* count is masked to 5 bits*/ in exec_shl()
769 if (!count) { in exec_shl()
777 if (count <= 8) { in exec_shl()
778 res = (decode->op[0].val << count); in exec_shl()
779 cf = (decode->op[0].val >> (8 - count)) & 0x1; in exec_shl()
793 if (count <= 16) { in exec_shl()
794 res = (decode->op[0].val << count); in exec_shl()
795 cf = (decode->op[0].val >> (16 - count)) & 0x1; in exec_shl()
806 uint32_t res = decode->op[0].val << count; in exec_shl()
810 cf = (decode->op[0].val >> (32 - count)) & 0x1; in exec_shl()
849 uint8_t count; in exec_ror() local
852 count = decode->op[1].val; in exec_ror()
860 if ((count & 0x07) == 0) { in exec_ror()
861 if (count & 0x18) { in exec_ror()
867 count &= 0x7; /* use only bottom 3 bits */ in exec_ror()
868 res = ((uint8_t)decode->op[0].val >> count) | in exec_ror()
869 ((uint8_t)decode->op[0].val << (8 - count)); in exec_ror()
873 /* set eflags: ROR count affects the following flags: C, O */ in exec_ror()
883 if ((count & 0x0f) == 0) { in exec_ror()
884 if (count & 0x10) { in exec_ror()
891 count &= 0x0f; /* use only 4 LSB's */ in exec_ror()
892 res = ((uint16_t)decode->op[0].val >> count) | in exec_ror()
893 ((uint16_t)decode->op[0].val << (16 - count)); in exec_ror()
908 count &= 0x1f; in exec_ror()
909 if (count) { in exec_ror()
910 res = ((uint32_t)decode->op[0].val >> count) | in exec_ror()
911 ((uint32_t)decode->op[0].val << (32 - count)); in exec_ror()
927 uint8_t count; in exec_rol() local
930 count = decode->op[1].val; in exec_rol()
938 if ((count & 0x07) == 0) { in exec_rol()
939 if (count & 0x18) { in exec_rol()
945 count &= 0x7; /* use only lowest 3 bits */ in exec_rol()
946 res = ((uint8_t)decode->op[0].val << count) | in exec_rol()
947 ((uint8_t)decode->op[0].val >> (8 - count)); in exec_rol()
951 * ROL count affects the following flags: C, O in exec_rol()
964 if ((count & 0x0f) == 0) { in exec_rol()
965 if (count & 0x10) { in exec_rol()
972 count &= 0x0f; /* only use bottom 4 bits */ in exec_rol()
973 res = ((uint16_t)decode->op[0].val << count) | in exec_rol()
974 ((uint16_t)decode->op[0].val >> (16 - count)); in exec_rol()
989 count &= 0x1f; in exec_rol()
990 if (count) { in exec_rol()
991 res = ((uint32_t)decode->op[0].val << count) | in exec_rol()
992 ((uint32_t)decode->op[0].val >> (32 - count)); in exec_rol()
1009 uint8_t count; in exec_rcl() local
1013 count = decode->op[1].val & 0x1f; in exec_rcl()
1020 count %= 9; in exec_rcl()
1021 if (!count) { in exec_rcl()
1025 if (1 == count) { in exec_rcl()
1028 res = (op1_8 << count) | (get_CF(env) << (count - 1)) | in exec_rcl()
1029 (op1_8 >> (9 - count)); in exec_rcl()
1034 cf = (op1_8 >> (8 - count)) & 0x01; in exec_rcl()
1044 count %= 17; in exec_rcl()
1045 if (!count) { in exec_rcl()
1049 if (1 == count) { in exec_rcl()
1051 } else if (count == 16) { in exec_rcl()
1054 res = (op1_16 << count) | (get_CF(env) << (count - 1)) | in exec_rcl()
1055 (op1_16 >> (17 - count)); in exec_rcl()
1060 cf = (op1_16 >> (16 - count)) & 0x1; in exec_rcl()
1070 if (!count) { in exec_rcl()
1074 if (1 == count) { in exec_rcl()
1077 res = (op1_32 << count) | (get_CF(env) << (count - 1)) | in exec_rcl()
1078 (op1_32 >> (33 - count)); in exec_rcl()
1083 cf = (op1_32 >> (32 - count)) & 0x1; in exec_rcl()
1094 uint8_t count; in exec_rcr() local
1098 count = decode->op[1].val & 0x1f; in exec_rcr()
1106 count %= 9; in exec_rcr()
1107 if (!count) { in exec_rcr()
1110 res = (op1_8 >> count) | (get_CF(env) << (8 - count)) | in exec_rcr()
1111 (op1_8 << (9 - count)); in exec_rcr()
1115 cf = (op1_8 >> (count - 1)) & 0x1; in exec_rcr()
1125 count %= 17; in exec_rcr()
1126 if (!count) { in exec_rcr()
1129 res = (op1_16 >> count) | (get_CF(env) << (16 - count)) | in exec_rcr()
1130 (op1_16 << (17 - count)); in exec_rcr()
1134 cf = (op1_16 >> (count - 1)) & 0x1; in exec_rcr()
1145 if (!count) { in exec_rcr()
1149 if (1 == count) { in exec_rcr()
1152 res = (op1_32 >> count) | (get_CF(env) << (32 - count)) | in exec_rcr()
1153 (op1_32 << (33 - count)); in exec_rcr()
1158 cf = (op1_32 >> (count - 1)) & 0x1; in exec_rcr()