Lines Matching refs:Dst
124 #define TestLeaBaseDisp(Base, BaseValue, Disp, Dst) \ in TEST_F() argument
127 "(" #Base ", " #BaseValue ", " #Dst ")"; \ in TEST_F()
133 __ lea(IceType_i32, GPRRegister::Encoded_Reg_##Dst, \ in TEST_F()
138 ASSERT_EQ(test.Base() + (Disp), test.Dst()) << TestString << " with Disp " \ in TEST_F()
294 #define TestLeaAbsolute(Dst, Value) \ in TEST_F() argument
296 static constexpr char TestString[] = "(" #Dst ", " #Value ")"; \ in TEST_F()
297 __ lea(IceType_i32, GPRRegister::Encoded_Reg_##Dst, \ in TEST_F()
303 /*mod=*/0x00 | /*reg*/ (GPRRegister::Encoded_Reg_##Dst << 3) | \ in TEST_F()
326 #define TestImplRegReg(Dst, Value0, Src, Value1, Size) \ in TEST_F() argument
330 "(" #Dst ", " #Value0 ", " #Src ", " #Value1 ", " #Size ")"; \ in TEST_F()
334 __ mov(IceType_i##Size, GPRRegister::Encoded_Reg_##Dst, \ in TEST_F()
338 __ test(IceType_i##Size, GPRRegister::Encoded_Reg_##Dst, \ in TEST_F()
340 __ mov(IceType_i32, GPRRegister::Encoded_Reg_##Dst, \ in TEST_F()
344 __ mov(IceType_i32, GPRRegister::Encoded_Reg_##Dst, \ in TEST_F()
353 test.Dst()) \ in TEST_F()
358 #define TestImplRegImm(Dst, Value0, Imm, Size) \ in TEST_F() argument
362 "(" #Dst ", " #Value0 ", " #Imm ", " #Size ")"; \ in TEST_F()
366 __ mov(IceType_i##Size, GPRRegister::Encoded_Reg_##Dst, \ in TEST_F()
368 __ test(IceType_i##Size, GPRRegister::Encoded_Reg_##Dst, \ in TEST_F()
370 __ mov(IceType_i32, GPRRegister::Encoded_Reg_##Dst, \ in TEST_F()
374 __ mov(IceType_i32, GPRRegister::Encoded_Reg_##Dst, \ in TEST_F()
383 test.Dst()) \ in TEST_F()
446 #define TestImplValues(Dst, Value0, Src, Value1, Size) \ in TEST_F() argument
448 TestImplRegReg(Dst, Value0, Src, Value1, Size); \ in TEST_F()
449 TestImplRegImm(Dst, Value0, Value1, Size); \ in TEST_F()
454 #define TestImplSize(Dst, Src, Size) \ in TEST_F() argument
456 TestImplValues(Dst, 0xF0F12101, Src, 0x00000000, Size); \ in TEST_F()
457 TestImplValues(Dst, 0xF0000000, Src, 0xF0000000, Size); \ in TEST_F()
458 TestImplValues(Dst, 0x0F00000F, Src, 0xF00000F0, Size); \ in TEST_F()
461 #define TestImpl(Dst, Src) \ in TEST_F() argument
463 TestImplSize(Dst, Src, 8); \ in TEST_F()
464 TestImplSize(Dst, Src, 16); \ in TEST_F()
465 TestImplSize(Dst, Src, 32); \ in TEST_F()
491 #define TestImplRegReg(Inst, Dst, Value0, Src, Value1, Type, Size, Op) \ in TEST_F() argument
494 "(" #Inst ", " #Dst ", " #Value0 ", " #Src ", " #Value1 \ in TEST_F()
497 __ mov(IceType_i##Size, GPRRegister::Encoded_Reg_##Dst, \ in TEST_F()
501 __ Inst(IceType_i##Size, GPRRegister::Encoded_Reg_##Dst, \ in TEST_F()
510 Mask##Size &test.Dst()) \ in TEST_F()
515 #define TestImplRegAddr(Inst, Dst, Value0, Value1, Type, Size, Op) \ in TEST_F() argument
518 "(" #Inst ", " #Dst ", " #Value0 ", Addr, " #Value1 ", " #Type #Size \ in TEST_F()
523 __ mov(IceType_i##Size, GPRRegister::Encoded_Reg_##Dst, \ in TEST_F()
526 __ Inst(IceType_i##Size, GPRRegister::Encoded_Reg_##Dst, \ in TEST_F()
536 Mask##Size &test.Dst()) \ in TEST_F()
541 #define TestImplRegImm(Inst, Dst, Value0, Imm, Type, Size, Op) \ in TEST_F() argument
544 "(" #Inst ", " #Dst ", " #Value0 ", Imm(" #Imm "), " #Type #Size \ in TEST_F()
547 __ mov(IceType_i##Size, GPRRegister::Encoded_Reg_##Dst, \ in TEST_F()
549 __ Inst(IceType_i##Size, GPRRegister::Encoded_Reg_##Dst, \ in TEST_F()
558 Mask##Size &test.Dst()) \ in TEST_F()
610 #define TestImplOp(Inst, Dst, Value0, Src, Value1, Type, Size, Op) \ in TEST_F() argument
612 TestImplRegReg(Inst, Dst, Value0, Src, Value1, Type, Size, Op); \ in TEST_F()
613 TestImplRegAddr(Inst, Dst, Value0, Value1, Type, Size, Op); \ in TEST_F()
614 TestImplRegImm(Inst, Dst, Value0, Value1, Type, Size, Op); \ in TEST_F()
619 #define TestImplValues(Dst, Value0, Src, Value1, Size) \ in TEST_F() argument
621 TestImplOp(And, Dst, Value0, Src, Value1, int, Size, &); \ in TEST_F()
622 TestImplOp(And, Dst, Value0, Src, Value1, uint, Size, &); \ in TEST_F()
623 TestImplOp(Or, Dst, Value0, Src, Value1, int, Size, | ); \ in TEST_F()
624 TestImplOp(Or, Dst, Value0, Src, Value1, uint, Size, | ); \ in TEST_F()
625 TestImplOp(Xor, Dst, Value0, Src, Value1, int, Size, ^); \ in TEST_F()
626 TestImplOp(Xor, Dst, Value0, Src, Value1, uint, Size, ^); \ in TEST_F()
627 TestImplOp(add, Dst, Value0, Src, Value1, int, Size, +); \ in TEST_F()
628 TestImplOp(add, Dst, Value0, Src, Value1, uint, Size, +); \ in TEST_F()
629 TestImplOp(sub, Dst, Value0, Src, Value1, int, Size, -); \ in TEST_F()
630 TestImplOp(sub, Dst, Value0, Src, Value1, uint, Size, -); \ in TEST_F()
633 #define TestImplSize(Dst, Src, Size) \ in TEST_F() argument
635 TestImplValues(Dst, 0xF0F12101, Src, 0x00000000, Size); \ in TEST_F()
636 TestImplValues(Dst, 0xF0000000, Src, 0xF0000000, Size); \ in TEST_F()
637 TestImplValues(Dst, 0x0F00000F, Src, 0xF0000070, Size); \ in TEST_F()
638 TestImplValues(Dst, 0x0F00F00F, Src, 0xF000F070, Size); \ in TEST_F()
641 #define TestImpl(Dst, Src) \ in TEST_F() argument
644 GPRRegister::Encoded_Reg_##Dst <= 3) { \ in TEST_F()
645 TestImplSize(Dst, Src, 8); \ in TEST_F()
647 TestImplSize(Dst, Src, 16); \ in TEST_F()
648 TestImplSize(Dst, Src, 32); \ in TEST_F()
1039 #define TestImplRegReg(Dst, Value0, Src, Value1, Size) \ in TEST_F() argument
1042 "(" #Dst ", " #Value0 ", " #Src ", " #Value1 ", " #Size ")"; \ in TEST_F()
1049 __ mov(IceType_i##Size, GPRRegister::Encoded_Reg_##Dst, \ in TEST_F()
1053 __ imul(IceType_i##Size, GPRRegister::Encoded_Reg_##Dst, \ in TEST_F()
1070 ASSERT_EQ(Expected, test.Dst()) << TestString; \ in TEST_F()
1074 #define TestImplRegImm(Dst, Value0, Imm, Size) \ in TEST_F() argument
1077 "(" #Dst ", " #Value0 ", Imm(" #Imm "), " #Size ")"; \ in TEST_F()
1084 __ mov(IceType_i##Size, GPRRegister::Encoded_Reg_##Dst, \ in TEST_F()
1086 __ imul(IceType_i##Size, GPRRegister::Encoded_Reg_##Dst, Immediate(Imm)); \ in TEST_F()
1098 ASSERT_EQ(Expected, test.Dst()) << TestString; \ in TEST_F()
1102 #define TestImplRegAddr(Dst, Value0, Value1, Size) \ in TEST_F() argument
1105 "(" #Dst ", " #Value0 ", Addr," #Value1 ", " #Size ")"; \ in TEST_F()
1113 __ mov(IceType_i##Size, GPRRegister::Encoded_Reg_##Dst, \ in TEST_F()
1115 __ imul(IceType_i##Size, GPRRegister::Encoded_Reg_##Dst, \ in TEST_F()
1129 ASSERT_EQ(Expected, test.Dst()) << TestString; \ in TEST_F()
1133 #define TestImplValue(Dst, Value0, Src, Value1, Size) \ in TEST_F() argument
1135 TestImplRegReg(Dst, Value0, Src, Value1, Size); \ in TEST_F()
1136 TestImplRegImm(Dst, Value0, Value1, Size); \ in TEST_F()
1137 TestImplRegAddr(Dst, Value0, Value1, Size); \ in TEST_F()
1140 #define TestImplSize(Dst, Src, Size) \ in TEST_F() argument
1142 TestImplValue(Dst, 1, Src, 1, Size); \ in TEST_F()
1143 TestImplValue(Dst, -10, Src, 0x4050AA20, Size); \ in TEST_F()
1144 TestImplValue(Dst, -2, Src, -55, Size); \ in TEST_F()
1147 #define TestImpl(Dst, Src) \ in TEST_F() argument
1149 TestImplSize(Dst, Src, 16); \ in TEST_F()
1150 TestImplSize(Dst, Src, 32); \ in TEST_F()
1317 #define TestImpl(Inst, Dst, BaseOpcode) \ in TEST_F() argument
1319 __ Inst(GPRRegister::Encoded_Reg_##Dst); \ in TEST_F()
1323 BaseOpcode | GPRRegister::Encoded_Reg_##Dst); \ in TEST_F()
1327 #define TestInc(Dst) \ in TEST_F() argument
1330 TestImpl(incl, Dst, InclOpcode); \ in TEST_F()
1333 #define TestDec(Dst) \ in TEST_F() argument
1336 TestImpl(decl, Dst, DeclOpcode); \ in TEST_F()
1404 #define TestImplRegImm(Inst, Dst, Value0, Imm, Op, Type, Size) \ in TEST_F() argument
1407 "(" #Inst ", " #Dst ", " #Value0 ", Imm(" #Imm "), " #Op ", " #Type \ in TEST_F()
1414 __ mov(IceType_i##Size, GPRRegister::Encoded_Reg_##Dst, \ in TEST_F()
1416 __ Inst(IceType_i##Size, GPRRegister::Encoded_Reg_##Dst, \ in TEST_F()
1422 ASSERT_EQ(static_cast<uint32_t>(Expected), test.Dst()) << TestString; \ in TEST_F()
1426 #define TestImplRegRegImm(Inst, Dst, Value0, Src, Value1, Count, Op0, Op1, \ in TEST_F() argument
1430 "(" #Inst ", " #Dst ", " #Value0 ", " #Src ", " #Value1 \ in TEST_F()
1436 __ mov(IceType_i##Size, GPRRegister::Encoded_Reg_##Dst, \ in TEST_F()
1440 __ Inst(IceType_i##Size, GPRRegister::Encoded_Reg_##Dst, \ in TEST_F()
1446 ASSERT_EQ(static_cast<uint32_t>(Expected), test.Dst()) << TestString; \ in TEST_F()
1450 #define TestImplRegCl(Inst, Dst, Value0, Count, Op, Type, Size) \ in TEST_F() argument
1453 "(" #Inst ", " #Dst ", " #Value0 ", " #Count ", " #Op ", " #Type \ in TEST_F()
1460 __ mov(IceType_i##Size, GPRRegister::Encoded_Reg_##Dst, \ in TEST_F()
1464 __ Inst(IceType_i##Size, GPRRegister::Encoded_Reg_##Dst, \ in TEST_F()
1470 ASSERT_EQ(static_cast<uint32_t>(Expected), test.Dst()) << TestString; \ in TEST_F()
1474 #define TestImplRegRegCl(Inst, Dst, Value0, Src, Value1, Count, Op0, Op1, \ in TEST_F() argument
1478 "(" #Inst ", " #Dst ", " #Value0 ", " #Src ", " #Value1 ", " #Count \ in TEST_F()
1484 __ mov(IceType_i##Size, GPRRegister::Encoded_Reg_##Dst, \ in TEST_F()
1490 __ Inst(IceType_i##Size, GPRRegister::Encoded_Reg_##Dst, \ in TEST_F()
1496 ASSERT_EQ(static_cast<uint32_t>(Expected), test.Dst()) << TestString; \ in TEST_F()
1553 #define TestImplOp(Inst, Dst, Value0, Count, Op, Type, Size) \ in TEST_F() argument
1555 static_assert(GPRRegister::Encoded_Reg_##Dst != \ in TEST_F()
1558 TestImplRegImm(Inst, Dst, Value0, Count, Op, Type, Size); \ in TEST_F()
1560 TestImplRegCl(Inst, Dst, Value0, Count, Op, Type, Size); \ in TEST_F()
1564 #define TestImplThreeOperandOp(Inst, Dst, Value0, Src, Value1, Count, Op0, \ in TEST_F() argument
1567 static_assert(GPRRegister::Encoded_Reg_##Dst != \ in TEST_F()
1573 TestImplRegRegImm(Inst, Dst, Value0, Src, Value1, Count, Op0, Op1, Type, \ in TEST_F()
1575 TestImplRegRegCl(Inst, Dst, Value0, Src, Value1, Count, Op0, Op1, Type, \ in TEST_F()
1580 #define TestImplValue(Dst, Value0, Count, Size) \ in TEST_F() argument
1582 TestImplOp(rol, Dst, Value0, Count, <<, uint, Size); \ in TEST_F()
1583 TestImplOp(shl, Dst, Value0, Count, <<, uint, Size); \ in TEST_F()
1584 TestImplOp(shr, Dst, Value0, Count, >>, uint, Size); \ in TEST_F()
1585 TestImplOp(sar, Dst, Value0, Count, >>, int, Size); \ in TEST_F()
1588 #define TestImplThreeOperandValue(Dst, Value0, Src, Value1, Count, Size) \ in TEST_F() argument
1590 TestImplThreeOperandOp(shld, Dst, Value0, Src, Value1, Count, <<, >>, \ in TEST_F()
1592 TestImplThreeOperandOp(shrd, Dst, Value0, Src, Value1, Count, >>, <<, \ in TEST_F()
1596 #define TestImplSize(Dst, Size) \ in TEST_F() argument
1598 TestImplValue(Dst, 0x8F, 3, Size); \ in TEST_F()
1599 TestImplValue(Dst, 0x8FFF, 7, Size); \ in TEST_F()
1600 TestImplValue(Dst, 0x8FFFF, 7, Size); \ in TEST_F()
1603 #define TestImplThreeOperandSize(Dst, Src, Size) \ in TEST_F() argument
1605 TestImplThreeOperandValue(Dst, 0xFFF3, Src, 0xA000, 8, Size); \ in TEST_F()
1608 #define TestImpl(Dst, Src) \ in TEST_F() argument
1610 if (GPRRegister::Encoded_Reg_##Dst < 4) { \ in TEST_F()
1611 TestImplSize(Dst, 8); \ in TEST_F()
1613 TestImplSize(Dst, 16); \ in TEST_F()
1614 TestImplThreeOperandSize(Dst, Src, 16); \ in TEST_F()
1615 TestImplSize(Dst, 32); \ in TEST_F()
1616 TestImplThreeOperandSize(Dst, Src, 32); \ in TEST_F()
1644 #define TestImplReg(Dst, Size) \ in TEST_F() argument
1647 __ mov(IceType_i##Size, GPRRegister::Encoded_Reg_##Dst, \ in TEST_F()
1649 __ neg(IceType_i##Size, GPRRegister::Encoded_Reg_##Dst); \ in TEST_F()
1651 GPRRegister::Encoded_Reg_##Dst); \ in TEST_F()
1659 << "(" #Dst ", " #Size ")"; \ in TEST_F()
1700 #define TestImpl(Dst) \ in TEST_F() argument
1703 __ mov(IceType_i32, GPRRegister::Encoded_Reg_##Dst, Immediate(Value)); \ in TEST_F()
1704 __ notl(GPRRegister::Encoded_Reg_##Dst); \ in TEST_F()
1709 ASSERT_EQ(~Value, test.Dst()) << "(" #Dst ")"; \ in TEST_F()
1724 #define TestImpl(Dst) \ in TEST_F() argument
1728 __ mov(IceType_i32, GPRRegister::Encoded_Reg_##Dst, Immediate(Value)); \ in TEST_F()
1729 __ bswap(IceType_i32, GPRRegister::Encoded_Reg_##Dst); \ in TEST_F()
1734 ASSERT_EQ(Expected, test.Dst()) << "(" #Dst ")"; \ in TEST_F()
1749 #define TestImpl(Dst, Value0, Src, Value1) \ in TEST_F() argument
1752 "(" #Dst ", " #Value0 ", " #Src ", " #Value1 ")"; \ in TEST_F()
1755 __ mov(IceType_i32, GPRRegister::Encoded_Reg_##Dst, Immediate(Value0)); \ in TEST_F()
1757 __ bt(GPRRegister::Encoded_Reg_##Dst, GPRRegister::Encoded_Reg_##Src); \ in TEST_F()
1803 #define TestImplRegReg(Inst, Dst, Src, Value1, Size) \ in TEST_F() argument
1806 "(" #Inst ", " #Dst ", " #Src ", " #Value1 ", " #Size ")"; \ in TEST_F()
1811 __ Inst(IceType_i##Size, GPRRegister::Encoded_Reg_##Dst, \ in TEST_F()
1823 ASSERT_EQ(Expected, test.Dst()) << TestString; \ in TEST_F()
1828 #define TestImplRegAddr(Inst, Dst, Value1, Size) \ in TEST_F() argument
1831 "(" #Inst ", " #Dst ", Addr, " #Value1 ", " #Size ")"; \ in TEST_F()
1835 __ Inst(IceType_i##Size, GPRRegister::Encoded_Reg_##Dst, \ in TEST_F()
1848 ASSERT_EQ(Expected, test.Dst()) << TestString; \ in TEST_F()
1853 #define TestImplSize(Dst, Src, Value1, Size) \ in TEST_F() argument
1855 TestImplRegReg(bsf, Dst, Src, Value1, Size); \ in TEST_F()
1856 TestImplRegAddr(bsf, Dst, Value1, Size); \ in TEST_F()
1857 TestImplRegReg(bsr, Dst, Src, Value1, Size); \ in TEST_F()
1858 TestImplRegAddr(bsf, Dst, Value1, Size); \ in TEST_F()
1861 #define TestImplValue(Dst, Src, Value1) \ in TEST_F() argument
1863 TestImplSize(Dst, Src, Value1, 16); \ in TEST_F()
1864 TestImplSize(Dst, Src, Value1, 32); \ in TEST_F()
1867 #define TestImpl(Dst, Src) \ in TEST_F() argument
1869 TestImplValue(Dst, Src, 0x80000001); \ in TEST_F()
1870 TestImplValue(Dst, Src, 0x00000000); \ in TEST_F()
1871 TestImplValue(Dst, Src, 0x80001000); \ in TEST_F()
1872 TestImplValue(Dst, Src, 0x00FFFF00); \ in TEST_F()