Lines Matching refs:current

881   byte* current = data + 1;  in AVXInstruction()  local
884 get_modrm(*current, &mod, &regop, &rm); in AVXInstruction()
889 current += PrintRightXMMOperand(current); in AVXInstruction()
894 current += PrintRightXMMOperand(current); in AVXInstruction()
899 current += PrintRightXMMOperand(current); in AVXInstruction()
904 current += PrintRightXMMOperand(current); in AVXInstruction()
909 current += PrintRightXMMOperand(current); in AVXInstruction()
914 current += PrintRightXMMOperand(current); in AVXInstruction()
919 current += PrintRightXMMOperand(current); in AVXInstruction()
924 current += PrintRightXMMOperand(current); in AVXInstruction()
929 current += PrintRightXMMOperand(current); in AVXInstruction()
934 current += PrintRightXMMOperand(current); in AVXInstruction()
939 current += PrintRightXMMOperand(current); in AVXInstruction()
944 current += PrintRightXMMOperand(current); in AVXInstruction()
949 current += PrintRightOperand(current); in AVXInstruction()
957 get_modrm(*current, &mod, &regop, &rm); in AVXInstruction()
962 current += PrintRightXMMOperand(current); in AVXInstruction()
963 AppendToBuffer(",0x%x", *current++); in AVXInstruction()
970 get_modrm(*current, &mod, &regop, &rm); in AVXInstruction()
977 current += PrintRightXMMOperand(current); in AVXInstruction()
981 current += PrintRightXMMOperand(current); in AVXInstruction()
990 current += PrintRightOperand(current); in AVXInstruction()
995 current += PrintRightXMMOperand(current); in AVXInstruction()
1000 current += PrintRightXMMOperand(current); in AVXInstruction()
1005 current += PrintRightXMMOperand(current); in AVXInstruction()
1010 current += PrintRightXMMOperand(current); in AVXInstruction()
1015 current += PrintRightXMMOperand(current); in AVXInstruction()
1020 current += PrintRightXMMOperand(current); in AVXInstruction()
1025 current += PrintRightXMMOperand(current); in AVXInstruction()
1030 current += PrintRightXMMOperand(current); in AVXInstruction()
1037 get_modrm(*current, &mod, &regop, &rm); in AVXInstruction()
1044 current += PrintRightXMMOperand(current); in AVXInstruction()
1048 current += PrintRightXMMOperand(current); in AVXInstruction()
1057 current += PrintRightOperand(current); in AVXInstruction()
1062 current += PrintRightXMMOperand(current); in AVXInstruction()
1067 current += PrintRightXMMOperand(current); in AVXInstruction()
1072 current += PrintRightXMMOperand(current); in AVXInstruction()
1077 current += PrintRightXMMOperand(current); in AVXInstruction()
1082 current += PrintRightXMMOperand(current); in AVXInstruction()
1087 current += PrintRightXMMOperand(current); in AVXInstruction()
1092 current += PrintRightXMMOperand(current); in AVXInstruction()
1097 current += PrintRightXMMOperand(current); in AVXInstruction()
1102 current += PrintRightXMMOperand(current); in AVXInstruction()
1107 current += PrintRightXMMOperand(current); in AVXInstruction()
1114 get_modrm(*current, &mod, &regop, &rm); in AVXInstruction()
1120 current += PrintRightOperand(current); in AVXInstruction()
1125 current += PrintRightOperand(current); in AVXInstruction()
1131 current += PrintRightOperand(current); in AVXInstruction()
1150 current += PrintRightOperand(current); in AVXInstruction()
1158 get_modrm(*current, &mod, &regop, &rm); in AVXInstruction()
1163 current += PrintRightOperand(current); in AVXInstruction()
1168 current += PrintRightOperand(current); in AVXInstruction()
1173 current += PrintRightOperand(current); in AVXInstruction()
1181 get_modrm(*current, &mod, &regop, &rm); in AVXInstruction()
1186 current += PrintRightOperand(current); in AVXInstruction()
1191 current += PrintRightOperand(current); in AVXInstruction()
1199 get_modrm(*current, &mod, &regop, &rm); in AVXInstruction()
1204 current += PrintRightOperand(current); in AVXInstruction()
1207 AppendToBuffer(",%d", *current & 0x1f); in AVXInstruction()
1210 AppendToBuffer(",%d", *current & 0x3f); in AVXInstruction()
1215 current += 1; in AVXInstruction()
1222 get_modrm(*current, &mod, &regop, &rm); in AVXInstruction()
1226 current += PrintRightXMMOperand(current); in AVXInstruction()
1230 current += PrintRightXMMOperand(current); in AVXInstruction()
1235 current += PrintRightXMMOperand(current); in AVXInstruction()
1240 current += PrintRightXMMOperand(current); in AVXInstruction()
1245 current += PrintRightXMMOperand(current); in AVXInstruction()
1252 get_modrm(*current, &mod, &regop, &rm); in AVXInstruction()
1256 current += PrintRightXMMOperand(current); in AVXInstruction()
1260 current += PrintRightXMMOperand(current); in AVXInstruction()
1265 current += PrintRightXMMOperand(current); in AVXInstruction()
1269 current += PrintRightXMMOperand(current); in AVXInstruction()
1274 current += PrintRightXMMOperand(current); in AVXInstruction()
1279 current += PrintRightXMMOperand(current); in AVXInstruction()
1284 current += PrintRightXMMOperand(current); in AVXInstruction()
1289 current += PrintRightOperand(current); in AVXInstruction()
1294 current += PrintRightXMMOperand(current); in AVXInstruction()
1295 AppendToBuffer(",%u", *current++); in AVXInstruction()
1300 current += PrintRightXMMOperand(current); in AVXInstruction()
1304 current += PrintRightOperand(current); in AVXInstruction()
1315 return static_cast<int>(current - data); in AVXInstruction()
1504 byte* current = data + 2; in TwoByteOpcodeInstruction() local
1511 byte third_byte = *current; in TwoByteOpcodeInstruction()
1512 current = data + 3; in TwoByteOpcodeInstruction()
1514 get_modrm(*current, &mod, &regop, &rm); in TwoByteOpcodeInstruction()
1516 current += PrintRightOperand(current); in TwoByteOpcodeInstruction()
1517 AppendToBuffer(",%s,%d", NameOfXMMRegister(regop), (*current) & 3); in TwoByteOpcodeInstruction()
1518 current += 1; in TwoByteOpcodeInstruction()
1520 get_modrm(*current, &mod, &regop, &rm); in TwoByteOpcodeInstruction()
1523 current += PrintRightXMMOperand(current); in TwoByteOpcodeInstruction()
1524 AppendToBuffer(",0x%x", (*current) & 3); in TwoByteOpcodeInstruction()
1525 current += 1; in TwoByteOpcodeInstruction()
1527 get_modrm(*current, &mod, &rm, &regop); in TwoByteOpcodeInstruction()
1529 current += PrintRightOperand(current); in TwoByteOpcodeInstruction()
1530 AppendToBuffer(",%s,%d", NameOfXMMRegister(regop), (*current) & 3); in TwoByteOpcodeInstruction()
1531 current += 1; in TwoByteOpcodeInstruction()
1533 get_modrm(*current, &mod, &regop, &rm); in TwoByteOpcodeInstruction()
1536 current += PrintRightOperand(current); in TwoByteOpcodeInstruction()
1537 AppendToBuffer(",%d", (*current) & 3); in TwoByteOpcodeInstruction()
1538 current += 1; in TwoByteOpcodeInstruction()
1543 get_modrm(*current, &mod, &regop, &rm); in TwoByteOpcodeInstruction()
1545 current++; in TwoByteOpcodeInstruction()
1547 current++; in TwoByteOpcodeInstruction()
1550 current += 1; in TwoByteOpcodeInstruction()
1552 current += 4; in TwoByteOpcodeInstruction()
1557 current += PrintRightXMMOperand(current); in TwoByteOpcodeInstruction()
1560 current += PrintRightXMMOperand(current); in TwoByteOpcodeInstruction()
1566 current += PrintRightOperand(current); in TwoByteOpcodeInstruction()
1570 current += PrintRightXMMOperand(current); in TwoByteOpcodeInstruction()
1574 current += PrintRightOperand(current); in TwoByteOpcodeInstruction()
1578 current += PrintRightXMMOperand(current); in TwoByteOpcodeInstruction()
1582 current += PrintRightXMMOperand(current); in TwoByteOpcodeInstruction()
1586 current += PrintRightXMMOperand(current); in TwoByteOpcodeInstruction()
1588 current += 1; in TwoByteOpcodeInstruction()
1590 NameOfXMMRegister(rm), *current & 0x7f); in TwoByteOpcodeInstruction()
1591 current += 1; in TwoByteOpcodeInstruction()
1593 current += 1; in TwoByteOpcodeInstruction()
1595 NameOfXMMRegister(rm), *current & 0x7f); in TwoByteOpcodeInstruction()
1596 current += 1; in TwoByteOpcodeInstruction()
1619 current += PrintRightXMMOperand(current); in TwoByteOpcodeInstruction()
1629 get_modrm(*current, &mod, &regop, &rm); in TwoByteOpcodeInstruction()
1631 current += PrintRightXMMOperand(current); in TwoByteOpcodeInstruction()
1635 current += PrintRightXMMOperand(current); in TwoByteOpcodeInstruction()
1640 get_modrm(*current, &mod, &regop, &rm); in TwoByteOpcodeInstruction()
1642 current += PrintRightOperand(current); in TwoByteOpcodeInstruction()
1647 get_modrm(*current, &mod, &regop, &rm); in TwoByteOpcodeInstruction()
1650 current += PrintRightXMMOperand(current); in TwoByteOpcodeInstruction()
1654 get_modrm(*current, &mod, &regop, &rm); in TwoByteOpcodeInstruction()
1657 current += PrintRightXMMOperand(current); in TwoByteOpcodeInstruction()
1661 get_modrm(*current, &mod, &regop, &rm); in TwoByteOpcodeInstruction()
1663 current += PrintRightXMMOperand(current); in TwoByteOpcodeInstruction()
1667 get_modrm(*current, &mod, &regop, &rm); in TwoByteOpcodeInstruction()
1679 pseudo_op[current[1]], in TwoByteOpcodeInstruction()
1682 current += 2; in TwoByteOpcodeInstruction()
1692 get_modrm(*current, &mod, &regop, &rm); in TwoByteOpcodeInstruction()
1694 current += PrintRightOperand(current); in TwoByteOpcodeInstruction()
1698 current += PrintRightOperand(current); in TwoByteOpcodeInstruction()
1703 get_modrm(*current, &mod, &regop, &rm); in TwoByteOpcodeInstruction()
1705 current += PrintRightOperand(current); in TwoByteOpcodeInstruction()
1710 get_modrm(*current, &mod, &regop, &rm); in TwoByteOpcodeInstruction()
1713 current += PrintRightXMMOperand(current); in TwoByteOpcodeInstruction()
1716 get_modrm(*current, &mod, &regop, &rm); in TwoByteOpcodeInstruction()
1718 current += PrintRightXMMOperand(current); in TwoByteOpcodeInstruction()
1722 get_modrm(*current, &mod, &regop, &rm); in TwoByteOpcodeInstruction()
1724 current += PrintRightXMMOperand(current); in TwoByteOpcodeInstruction()
1727 get_modrm(*current, &mod, &regop, &rm); in TwoByteOpcodeInstruction()
1730 current += PrintRightOperand(current); in TwoByteOpcodeInstruction()
1733 get_modrm(*current, &mod, &regop, &rm); in TwoByteOpcodeInstruction()
1736 current += PrintRightOperand(current); in TwoByteOpcodeInstruction()
1739 get_modrm(*current, &mod, &regop, &rm); in TwoByteOpcodeInstruction()
1742 current += PrintRightOperand(current); in TwoByteOpcodeInstruction()
1746 get_modrm(*current, &mod, &regop, &rm); in TwoByteOpcodeInstruction()
1750 AppendToBuffer("%s %s,%s", pseudo_op[current[1]], in TwoByteOpcodeInstruction()
1752 current += 2; in TwoByteOpcodeInstruction()
1759 get_modrm(*current, &mod, &regop, &rm); in TwoByteOpcodeInstruction()
1760 current++; in TwoByteOpcodeInstruction()
1762 current++; in TwoByteOpcodeInstruction()
1765 current += 1; in TwoByteOpcodeInstruction()
1767 current += 4; in TwoByteOpcodeInstruction()
1774 get_modrm(*current, &mod, &regop, &rm); in TwoByteOpcodeInstruction()
1776 current += PrintRightXMMOperand(current); in TwoByteOpcodeInstruction()
1781 get_modrm(*current, &mod, &regop, &rm); in TwoByteOpcodeInstruction()
1783 current += PrintRightXMMOperand(current); in TwoByteOpcodeInstruction()
1788 get_modrm(*current, &mod, &regop, &rm); in TwoByteOpcodeInstruction()
1790 current += PrintRightXMMOperand(current); in TwoByteOpcodeInstruction()
1800 current += PrintOperands(idesc.mnem, idesc.op_order_, current); in TwoByteOpcodeInstruction()
1819 get_modrm(*current, &mod, &regop, &rm); in TwoByteOpcodeInstruction()
1823 current += PrintRightXMMOperand(current); in TwoByteOpcodeInstruction()
1828 get_modrm(*current, &mod, &regop, &rm); in TwoByteOpcodeInstruction()
1830 current += PrintRightXMMOperand(current); in TwoByteOpcodeInstruction()
1831 AppendToBuffer(", %d", (*current) & 3); in TwoByteOpcodeInstruction()
1832 current += 1; in TwoByteOpcodeInstruction()
1837 get_modrm(*current, &mod, &regop, &rm); in TwoByteOpcodeInstruction()
1839 current += PrintRightXMMOperand(current); in TwoByteOpcodeInstruction()
1843 current = data + JumpConditional(data); in TwoByteOpcodeInstruction()
1848 current += PrintOperands(mnemonic, REG_OPER_OP_ORDER, current); in TwoByteOpcodeInstruction()
1852 current = data + SetCC(data); in TwoByteOpcodeInstruction()
1858 get_modrm(*current, &mod, &regop, &rm); in TwoByteOpcodeInstruction()
1859 current += PrintRightOperand(current); in TwoByteOpcodeInstruction()
1869 get_modrm(*current, &mod, &regop, &rm); in TwoByteOpcodeInstruction()
1871 current += PrintRightOperand(current); in TwoByteOpcodeInstruction()
1877 return static_cast<int>(current - data); in TwoByteOpcodeInstruction()
1941 byte current; in InstructionDecode() local
1945 current = *data; in InstructionDecode()
1946 if (current == OPERAND_SIZE_OVERRIDE_PREFIX) { // Group 3 prefix. in InstructionDecode()
1947 operand_size_ = current; in InstructionDecode()
1948 } else if ((current & 0xF0) == 0x40) { // REX prefix. in InstructionDecode()
1949 setRex(current); in InstructionDecode()
1951 } else if ((current & 0xFE) == 0xF2) { // Group 1 prefix (0xF2 or 0xF3). in InstructionDecode()
1952 group_1_prefix_ = current; in InstructionDecode()
1953 } else if (current == VEX3_PREFIX) { in InstructionDecode()
1954 vex_byte0_ = current; in InstructionDecode()
1960 } else if (current == VEX2_PREFIX) { in InstructionDecode()
1961 vex_byte0_ = current; in InstructionDecode()
1977 const InstructionDesc& idesc = instruction_table_->Get(current); in InstructionDecode()
1981 if (current >= 0xA4 && current <= 0xA7) { in InstructionDecode()
2006 NameOfCPURegister(base_reg(current & 0x07))); in InstructionDecode()
2011 NameOfCPURegister(base_reg(current & 0x07))); in InstructionDecode()
2036 NameOfCPURegister(base_reg(current & 0x07)), in InstructionDecode()