< prev index next >

src/cpu/x86/vm/assembler_x86.hpp

Print this page




 864   void rep_mov();
 865   void rep_stos();
 866   void rep_stosb();
 867   void repne_scan();
 868 #ifdef _LP64
 869   void repne_scanl();
 870 #endif
 871 
 872   // Vanilla instructions in lexical order
 873 
 874   void adcl(Address dst, int32_t imm32);
 875   void adcl(Address dst, Register src);
 876   void adcl(Register dst, int32_t imm32);
 877   void adcl(Register dst, Address src);
 878   void adcl(Register dst, Register src);
 879 
 880   void adcq(Register dst, int32_t imm32);
 881   void adcq(Register dst, Address src);
 882   void adcq(Register dst, Register src);
 883 



 884   void addl(Address dst, int32_t imm32);
 885   void addl(Address dst, Register src);
 886   void addl(Register dst, int32_t imm32);
 887   void addl(Register dst, Address src);
 888   void addl(Register dst, Register src);
 889 
 890   void addq(Address dst, int32_t imm32);
 891   void addq(Address dst, Register src);
 892   void addq(Register dst, int32_t imm32);
 893   void addq(Register dst, Address src);
 894   void addq(Register dst, Register src);
 895 
 896 #ifdef _LP64
 897  //Add Unsigned Integers with Carry Flag
 898   void adcxq(Register dst, Register src);
 899 
 900  //Add Unsigned Integers with Overflow Flag
 901   void adoxq(Register dst, Register src);
 902 #endif
 903 


1799   void testl(Register dst, Register src);
1800   void testl(Register dst, Address src);
1801 
1802   void testq(Register dst, int32_t imm32);
1803   void testq(Register dst, Register src);
1804 
1805   // BMI - count trailing zeros
1806   void tzcntl(Register dst, Register src);
1807   void tzcntq(Register dst, Register src);
1808 
1809   // Unordered Compare Scalar Double-Precision Floating-Point Values and set EFLAGS
1810   void ucomisd(XMMRegister dst, Address src);
1811   void ucomisd(XMMRegister dst, XMMRegister src);
1812 
1813   // Unordered Compare Scalar Single-Precision Floating-Point Values and set EFLAGS
1814   void ucomiss(XMMRegister dst, Address src);
1815   void ucomiss(XMMRegister dst, XMMRegister src);
1816 
1817   void xabort(int8_t imm8);
1818 


1819   void xaddl(Address dst, Register src);
1820 
1821   void xaddq(Address dst, Register src);
1822 
1823   void xbegin(Label& abort, relocInfo::relocType rtype = relocInfo::none);
1824 


1825   void xchgl(Register reg, Address adr);
1826   void xchgl(Register dst, Register src);
1827 
1828   void xchgq(Register reg, Address adr);
1829   void xchgq(Register dst, Register src);
1830 
1831   void xend();
1832 
1833   // Get Value of Extended Control Register
1834   void xgetbv();
1835 
1836   void xorl(Register dst, int32_t imm32);
1837   void xorl(Register dst, Address src);
1838   void xorl(Register dst, Register src);
1839 
1840   void xorb(Register dst, Address src);
1841 
1842   void xorq(Register dst, Address src);
1843   void xorq(Register dst, Register src);
1844 




 864   void rep_mov();
 865   void rep_stos();
 866   void rep_stosb();
 867   void repne_scan();
 868 #ifdef _LP64
 869   void repne_scanl();
 870 #endif
 871 
 872   // Vanilla instructions in lexical order
 873 
 874   void adcl(Address dst, int32_t imm32);
 875   void adcl(Address dst, Register src);
 876   void adcl(Register dst, int32_t imm32);
 877   void adcl(Register dst, Address src);
 878   void adcl(Register dst, Register src);
 879 
 880   void adcq(Register dst, int32_t imm32);
 881   void adcq(Register dst, Address src);
 882   void adcq(Register dst, Register src);
 883 
 884   void addb(Address dst, int imm8);
 885   void addw(Address dst, int imm16);
 886   
 887   void addl(Address dst, int32_t imm32);
 888   void addl(Address dst, Register src);
 889   void addl(Register dst, int32_t imm32);
 890   void addl(Register dst, Address src);
 891   void addl(Register dst, Register src);
 892 
 893   void addq(Address dst, int32_t imm32);
 894   void addq(Address dst, Register src);
 895   void addq(Register dst, int32_t imm32);
 896   void addq(Register dst, Address src);
 897   void addq(Register dst, Register src);
 898 
 899 #ifdef _LP64
 900  //Add Unsigned Integers with Carry Flag
 901   void adcxq(Register dst, Register src);
 902 
 903  //Add Unsigned Integers with Overflow Flag
 904   void adoxq(Register dst, Register src);
 905 #endif
 906 


1802   void testl(Register dst, Register src);
1803   void testl(Register dst, Address src);
1804 
1805   void testq(Register dst, int32_t imm32);
1806   void testq(Register dst, Register src);
1807 
1808   // BMI - count trailing zeros
1809   void tzcntl(Register dst, Register src);
1810   void tzcntq(Register dst, Register src);
1811 
1812   // Unordered Compare Scalar Double-Precision Floating-Point Values and set EFLAGS
1813   void ucomisd(XMMRegister dst, Address src);
1814   void ucomisd(XMMRegister dst, XMMRegister src);
1815 
1816   // Unordered Compare Scalar Single-Precision Floating-Point Values and set EFLAGS
1817   void ucomiss(XMMRegister dst, Address src);
1818   void ucomiss(XMMRegister dst, XMMRegister src);
1819 
1820   void xabort(int8_t imm8);
1821 
1822   void xaddb(Address dst, Register src);
1823   void xaddw(Address dst, Register src);
1824   void xaddl(Address dst, Register src);

1825   void xaddq(Address dst, Register src);
1826 
1827   void xbegin(Label& abort, relocInfo::relocType rtype = relocInfo::none);
1828 
1829   void xchgb(Register reg, Address adr);
1830   void xchgw(Register reg, Address adr);
1831   void xchgl(Register reg, Address adr);
1832   void xchgl(Register dst, Register src);
1833 
1834   void xchgq(Register reg, Address adr);
1835   void xchgq(Register dst, Register src);
1836 
1837   void xend();
1838 
1839   // Get Value of Extended Control Register
1840   void xgetbv();
1841 
1842   void xorl(Register dst, int32_t imm32);
1843   void xorl(Register dst, Address src);
1844   void xorl(Register dst, Register src);
1845 
1846   void xorb(Register dst, Address src);
1847 
1848   void xorq(Register dst, Address src);
1849   void xorq(Register dst, Register src);
1850 


< prev index next >