Lines Matching refs:Dst

112 #define TestLeaBaseDisp(Base, BaseValue, Disp, Dst)                            \  in TEST_F()  argument
115 "(" #Base ", " #BaseValue ", " #Dst ")"; \ in TEST_F()
120 __ lea(IceType_i32, Encoded_GPR_##Dst(), \ in TEST_F()
124 ASSERT_EQ(test.Base##d() + (Disp), test.Dst##d()) \ in TEST_F()
327 #define TestLeaAbsolute(Dst, Value) \ in TEST_F() argument
329 static constexpr char TestString[] = "(" #Dst ", " #Value ")"; \ in TEST_F()
330 __ lea(IceType_i32, GPRRegister::Encoded_Reg_##Dst, \ in TEST_F()
336 /*mod*/ 0x00 | /*reg*/ (GPRRegister::Encoded_Reg_##Dst << 3) | \ in TEST_F()
362 #define TestImplRegReg(Dst, Value0, Src, Value1, Size) \ in TEST_F() argument
366 "(" #Dst ", " #Value0 ", " #Src ", " #Value1 ", " #Size ")"; \ in TEST_F()
370 __ mov(IceType_i##Size, Encoded_GPR_##Dst(), Immediate(Value0)); \ in TEST_F()
372 __ test(IceType_i##Size, Encoded_GPR_##Dst(), Encoded_GPR_##Src()); \ in TEST_F()
373 __ mov(IceType_i32, Encoded_GPR_##Dst(), Immediate(ValueIfFalse)); \ in TEST_F()
376 __ mov(IceType_i32, Encoded_GPR_##Dst(), Immediate(ValueIfTrue)); \ in TEST_F()
384 test.Dst()) \ in TEST_F()
389 #define TestImplRegImm(Dst, Value0, Imm, Size) \ in TEST_F() argument
393 "(" #Dst ", " #Value0 ", " #Imm ", " #Size ")"; \ in TEST_F()
397 __ mov(IceType_i##Size, Encoded_GPR_##Dst(), Immediate(Value0)); \ in TEST_F()
398 __ test(IceType_i##Size, Encoded_GPR_##Dst(), \ in TEST_F()
400 __ mov(IceType_i32, Encoded_GPR_##Dst(), Immediate(ValueIfFalse)); \ in TEST_F()
403 __ mov(IceType_i32, Encoded_GPR_##Dst(), Immediate(ValueIfTrue)); \ in TEST_F()
411 test.Dst()) \ in TEST_F()
472 #define TestImplValues(Dst, Value0, Src, Value1, Size) \ in TEST_F() argument
474 TestImplRegReg(Dst, Value0, Src, Value1, Size); \ in TEST_F()
475 TestImplRegImm(Dst, Value0, Value1, Size); \ in TEST_F()
480 #define TestImplSize(Dst, Src, Size) \ in TEST_F() argument
482 TestImplValues(Dst, 0xF0F12101, Src, 0x00000000, Size); \ in TEST_F()
483 TestImplValues(Dst, 0xF0000000, Src, 0xF0000000, Size); \ in TEST_F()
484 TestImplValues(Dst, 0x0F00000F, Src, 0xF00000F0, Size); \ in TEST_F()
487 #define TestImpl(Dst, Src) \ in TEST_F() argument
489 TestImplSize(Dst, Src, 8); \ in TEST_F()
490 TestImplSize(Dst, Src, 16); \ in TEST_F()
491 TestImplSize(Dst, Src, 32); \ in TEST_F()
525 #define TestImplRegReg(Inst, Dst, Value0, Src, Value1, Type, Size, Op) \ in TEST_F() argument
528 "(" #Inst ", " #Dst ", " #Value0 ", " #Src ", " #Value1 \ in TEST_F()
531 __ mov(IceType_i##Size, Encoded_GPR_##Dst(), Immediate(Value0)); \ in TEST_F()
533 __ Inst(IceType_i##Size, Encoded_GPR_##Dst(), Encoded_GPR_##Src()); \ in TEST_F()
541 Mask##Size &test.Dst()) \ in TEST_F()
546 #define TestImplRegAddr(Inst, Dst, Value0, Value1, Type, Size, Op) \ in TEST_F() argument
549 "(" #Inst ", " #Dst ", " #Value0 ", Addr, " #Value1 ", " #Type #Size \ in TEST_F()
554 __ mov(IceType_i##Size, Encoded_GPR_##Dst(), Immediate(Value0)); \ in TEST_F()
556 __ Inst(IceType_i##Size, Encoded_GPR_##Dst(), dwordAddress(T0)); \ in TEST_F()
565 Mask##Size &test.Dst()) \ in TEST_F()
570 #define TestImplRegImm(Inst, Dst, Value0, Imm, Type, Size, Op) \ in TEST_F() argument
573 "(" #Inst ", " #Dst ", " #Value0 ", Imm(" #Imm "), " #Type #Size \ in TEST_F()
576 __ mov(IceType_i##Size, Encoded_GPR_##Dst(), Immediate(Value0)); \ in TEST_F()
577 __ Inst(IceType_i##Size, Encoded_GPR_##Dst(), \ in TEST_F()
586 Mask##Size &test.Dst()) \ in TEST_F()
636 #define TestImplOp(Inst, Dst, Value0, Src, Value1, Type, Size, Op) \ in TEST_F() argument
638 TestImplRegReg(Inst, Dst, Value0, Src, Value1, Type, Size, Op); \ in TEST_F()
639 TestImplRegAddr(Inst, Dst, Value0, Value1, Type, Size, Op); \ in TEST_F()
640 TestImplRegImm(Inst, Dst, Value0, Value1, Type, Size, Op); \ in TEST_F()
645 #define TestImplValues(Dst, Value0, Src, Value1, Size) \ in TEST_F() argument
647 TestImplOp(And, Dst, Value0, Src, Value1, int, Size, &); \ in TEST_F()
648 TestImplOp(And, Dst, Value0, Src, Value1, uint, Size, &); \ in TEST_F()
649 TestImplOp(Or, Dst, Value0, Src, Value1, int, Size, | ); \ in TEST_F()
650 TestImplOp(Or, Dst, Value0, Src, Value1, uint, Size, | ); \ in TEST_F()
651 TestImplOp(Xor, Dst, Value0, Src, Value1, int, Size, ^); \ in TEST_F()
652 TestImplOp(Xor, Dst, Value0, Src, Value1, uint, Size, ^); \ in TEST_F()
653 TestImplOp(add, Dst, Value0, Src, Value1, int, Size, +); \ in TEST_F()
654 TestImplOp(add, Dst, Value0, Src, Value1, uint, Size, +); \ in TEST_F()
655 TestImplOp(sub, Dst, Value0, Src, Value1, int, Size, -); \ in TEST_F()
656 TestImplOp(sub, Dst, Value0, Src, Value1, uint, Size, -); \ in TEST_F()
659 #define TestImplSize(Dst, Src, Size) \ in TEST_F() argument
661 TestImplValues(Dst, 0xF0F12101, Src, 0x00000000, Size); \ in TEST_F()
662 TestImplValues(Dst, 0xF0000000, Src, 0xF0000000, Size); \ in TEST_F()
663 TestImplValues(Dst, 0x0F00000F, Src, 0xF0000070, Size); \ in TEST_F()
664 TestImplValues(Dst, 0x0F00F00F, Src, 0xF000F070, Size); \ in TEST_F()
667 #define TestImpl(Dst, Src) \ in TEST_F() argument
669 TestImplSize(Dst, Src, 8); \ in TEST_F()
670 TestImplSize(Dst, Src, 16); \ in TEST_F()
671 TestImplSize(Dst, Src, 32); \ in TEST_F()
1070 #define TestImplRegReg(Dst, Value0, Src, Value1, Size) \ in TEST_F() argument
1073 "(" #Dst ", " #Value0 ", " #Src ", " #Value1 ", " #Size ")"; \ in TEST_F()
1080 __ mov(IceType_i##Size, Encoded_GPR_##Dst(), \ in TEST_F()
1084 __ imul(IceType_i##Size, Encoded_GPR_##Dst(), Encoded_GPR_##Src()); \ in TEST_F()
1096 ASSERT_EQ(Expected, test.Dst()) << TestString; \ in TEST_F()
1100 #define TestImplRegImm(Dst, Value0, Imm, Size) \ in TEST_F() argument
1103 "(" #Dst ", " #Value0 ", Imm(" #Imm "), " #Size ")"; \ in TEST_F()
1110 __ mov(IceType_i##Size, Encoded_GPR_##Dst(), \ in TEST_F()
1112 __ imul(IceType_i##Size, Encoded_GPR_##Dst(), Immediate(Imm)); \ in TEST_F()
1124 ASSERT_EQ(Expected, test.Dst()) << TestString; \ in TEST_F()
1128 #define TestImplRegAddr(Dst, Value0, Value1, Size) \ in TEST_F() argument
1131 "(" #Dst ", " #Value0 ", Addr," #Value1 ", " #Size ")"; \ in TEST_F()
1139 __ mov(IceType_i##Size, Encoded_GPR_##Dst(), \ in TEST_F()
1141 __ imul(IceType_i##Size, Encoded_GPR_##Dst(), dwordAddress(T0)); \ in TEST_F()
1154 ASSERT_EQ(Expected, test.Dst()) << TestString; \ in TEST_F()
1158 #define TestImplValue(Dst, Value0, Src, Value1, Size) \ in TEST_F() argument
1160 TestImplRegReg(Dst, Value0, Src, Value1, Size); \ in TEST_F()
1161 TestImplRegImm(Dst, Value0, Value1, Size); \ in TEST_F()
1162 TestImplRegAddr(Dst, Value0, Value1, Size); \ in TEST_F()
1165 #define TestImplSize(Dst, Src, Size) \ in TEST_F() argument
1167 TestImplValue(Dst, 1, Src, 1, Size); \ in TEST_F()
1168 TestImplValue(Dst, -10, Src, 0x4050AA20, Size); \ in TEST_F()
1169 TestImplValue(Dst, -2, Src, -55, Size); \ in TEST_F()
1172 #define TestImpl(Dst, Src) \ in TEST_F() argument
1174 TestImplSize(Dst, Src, 16); \ in TEST_F()
1175 TestImplSize(Dst, Src, 32); \ in TEST_F()
1393 #define TestImplRegImm(Inst, Dst, Value0, Imm, Op, Type, Size) \ in TEST_F() argument
1396 "(" #Inst ", " #Dst ", " #Value0 ", Imm(" #Imm "), " #Op ", " #Type \ in TEST_F()
1403 __ mov(IceType_i##Size, Encoded_GPR_##Dst(), \ in TEST_F()
1405 __ Inst(IceType_i##Size, Encoded_GPR_##Dst(), \ in TEST_F()
1411 ASSERT_EQ(static_cast<uint32_t>(Expected), test.Dst()) << TestString; \ in TEST_F()
1415 #define TestImplRegRegImm(Inst, Dst, Value0, Src, Value1, Count, Op0, Op1, \ in TEST_F() argument
1419 "(" #Inst ", " #Dst ", " #Value0 ", " #Src ", " #Value1 \ in TEST_F()
1425 __ mov(IceType_i##Size, Encoded_GPR_##Dst(), \ in TEST_F()
1429 __ Inst(IceType_i##Size, Encoded_GPR_##Dst(), Encoded_GPR_##Src(), \ in TEST_F()
1435 ASSERT_EQ(static_cast<uint32_t>(Expected), test.Dst()) << TestString; \ in TEST_F()
1439 #define TestImplRegCl(Inst, Dst, Value0, Count, Op, Type, Size) \ in TEST_F() argument
1442 "(" #Inst ", " #Dst ", " #Value0 ", " #Count ", " #Op ", " #Type \ in TEST_F()
1449 __ mov(IceType_i##Size, Encoded_GPR_##Dst(), \ in TEST_F()
1452 __ Inst(IceType_i##Size, Encoded_GPR_##Dst(), Encoded_GPR_ecx()); \ in TEST_F()
1457 ASSERT_EQ(static_cast<uint32_t>(Expected), test.Dst()) << TestString; \ in TEST_F()
1461 #define TestImplRegRegCl(Inst, Dst, Value0, Src, Value1, Count, Op0, Op1, \ in TEST_F() argument
1465 "(" #Inst ", " #Dst ", " #Value0 ", " #Src ", " #Value1 ", " #Count \ in TEST_F()
1471 __ mov(IceType_i##Size, Encoded_GPR_##Dst(), \ in TEST_F()
1476 __ Inst(IceType_i##Size, Encoded_GPR_##Dst(), Encoded_GPR_##Src()); \ in TEST_F()
1481 ASSERT_EQ(static_cast<uint32_t>(Expected), test.Dst()) << TestString; \ in TEST_F()
1535 #define TestImplOp(Inst, Dst, Value0, Count, Op, Type, Size) \ in TEST_F() argument
1537 static_assert(Encoded_GPR_##Dst() != Encoded_GPR_ecx(), \ in TEST_F()
1539 TestImplRegImm(Inst, Dst, Value0, Count, Op, Type, Size); \ in TEST_F()
1541 TestImplRegCl(Inst, Dst, Value0, Count, Op, Type, Size); \ in TEST_F()
1545 #define TestImplThreeOperandOp(Inst, Dst, Value0, Src, Value1, Count, Op0, \ in TEST_F() argument
1548 static_assert(Encoded_GPR_##Dst() != Encoded_GPR_ecx(), \ in TEST_F()
1552 TestImplRegRegImm(Inst, Dst, Value0, Src, Value1, Count, Op0, Op1, Type, \ in TEST_F()
1554 TestImplRegRegCl(Inst, Dst, Value0, Src, Value1, Count, Op0, Op1, Type, \ in TEST_F()
1559 #define TestImplValue(Dst, Value0, Count, Size) \ in TEST_F() argument
1561 TestImplOp(rol, Dst, Value0, Count, <<, uint, Size); \ in TEST_F()
1562 TestImplOp(shl, Dst, Value0, Count, <<, uint, Size); \ in TEST_F()
1563 TestImplOp(shr, Dst, Value0, Count, >>, uint, Size); \ in TEST_F()
1564 TestImplOp(sar, Dst, Value0, Count, >>, int, Size); \ in TEST_F()
1567 #define TestImplThreeOperandValue(Dst, Value0, Src, Value1, Count, Size) \ in TEST_F() argument
1569 TestImplThreeOperandOp(shld, Dst, Value0, Src, Value1, Count, <<, >>, \ in TEST_F()
1571 TestImplThreeOperandOp(shrd, Dst, Value0, Src, Value1, Count, >>, <<, \ in TEST_F()
1575 #define TestImplSize(Dst, Size) \ in TEST_F() argument
1577 TestImplValue(Dst, 0x8F, 3, Size); \ in TEST_F()
1578 TestImplValue(Dst, 0x8FFF, 7, Size); \ in TEST_F()
1579 TestImplValue(Dst, 0x8FFFF, 7, Size); \ in TEST_F()
1582 #define TestImplThreeOperandSize(Dst, Src, Size) \ in TEST_F() argument
1584 TestImplThreeOperandValue(Dst, 0xFFF3, Src, 0xA000, 8, Size); \ in TEST_F()
1587 #define TestImpl(Dst, Src) \ in TEST_F() argument
1589 TestImplSize(Dst, 8); \ in TEST_F()
1590 TestImplSize(Dst, 16); \ in TEST_F()
1591 TestImplThreeOperandSize(Dst, Src, 16); \ in TEST_F()
1592 TestImplSize(Dst, 32); \ in TEST_F()
1593 TestImplThreeOperandSize(Dst, Src, 32); \ in TEST_F()
1629 #define TestImplReg(Dst, Size) \ in TEST_F() argument
1632 __ mov(IceType_i##Size, Encoded_GPR_##Dst(), \ in TEST_F()
1634 __ neg(IceType_i##Size, Encoded_GPR_##Dst()); \ in TEST_F()
1635 __ mov(IceType_i##Size, Encoded_GPR_eax(), Encoded_GPR_##Dst()); \ in TEST_F()
1643 << "(" #Dst ", " #Size ")"; \ in TEST_F()
1692 #define TestImpl(Dst) \ in TEST_F() argument
1695 __ mov(IceType_i32, Encoded_GPR_##Dst(), Immediate(Value)); \ in TEST_F()
1696 __ notl(Encoded_GPR_##Dst()); \ in TEST_F()
1701 ASSERT_EQ(~Value, test.Dst()) << "(" #Dst ")"; \ in TEST_F()
1724 #define TestImpl(Dst) \ in TEST_F() argument
1728 __ mov(IceType_i32, Encoded_GPR_##Dst(), Immediate(Value)); \ in TEST_F()
1729 __ bswap(IceType_i32, Encoded_GPR_##Dst()); \ in TEST_F()
1734 ASSERT_EQ(Expected, test.Dst()) << "(" #Dst ")"; \ in TEST_F()
1757 #define TestImpl(Dst, Value0, Src, Value1) \ in TEST_F() argument
1760 "(" #Dst ", " #Value0 ", " #Src ", " #Value1 ")"; \ in TEST_F()
1763 __ mov(IceType_i32, Encoded_GPR_##Dst(), Immediate(Value0)); \ in TEST_F()
1765 __ bt(Encoded_GPR_##Dst(), Encoded_GPR_##Src()); \ in TEST_F()
1819 #define TestImplRegReg(Inst, Dst, Src, Value1, Size) \ in TEST_F() argument
1822 "(" #Inst ", " #Dst ", " #Src ", " #Value1 ", " #Size ")"; \ in TEST_F()
1826 __ Inst(IceType_i##Size, Encoded_GPR_##Dst(), Encoded_GPR_##Src()); \ in TEST_F()
1837 ASSERT_EQ(Expected, test.Dst()) << TestString; \ in TEST_F()
1842 #define TestImplRegAddr(Inst, Dst, Value1, Size) \ in TEST_F() argument
1845 "(" #Inst ", " #Dst ", Addr, " #Value1 ", " #Size ")"; \ in TEST_F()
1849 __ Inst(IceType_i##Size, Encoded_GPR_##Dst(), dwordAddress(T0)); \ in TEST_F()
1861 ASSERT_EQ(Expected, test.Dst()) << TestString; \ in TEST_F()
1866 #define TestImplSize(Dst, Src, Value1, Size) \ in TEST_F() argument
1868 TestImplRegReg(bsf, Dst, Src, Value1, Size); \ in TEST_F()
1869 TestImplRegAddr(bsf, Dst, Value1, Size); \ in TEST_F()
1870 TestImplRegReg(bsr, Dst, Src, Value1, Size); \ in TEST_F()
1871 TestImplRegAddr(bsf, Dst, Value1, Size); \ in TEST_F()
1874 #define TestImplValue(Dst, Src, Value1) \ in TEST_F() argument
1876 TestImplSize(Dst, Src, Value1, 16); \ in TEST_F()
1877 TestImplSize(Dst, Src, Value1, 32); \ in TEST_F()
1880 #define TestImpl(Dst, Src) \ in TEST_F() argument
1882 TestImplValue(Dst, Src, 0x80000001); \ in TEST_F()
1883 TestImplValue(Dst, Src, 0x00000000); \ in TEST_F()
1884 TestImplValue(Dst, Src, 0x80001000); \ in TEST_F()
1885 TestImplValue(Dst, Src, 0x00FFFF00); \ in TEST_F()