OpenCores
URL https://opencores.org/ocsvn/openrisc_me/openrisc_me/trunk

Subversion Repositories openrisc_me

[/] [openrisc/] [trunk/] [gnu-src/] [binutils-2.20.1/] [gas/] [testsuite/] [gas/] [i386/] [x86-64-opcode.s] - Blame information for rev 219

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 205 julius
.text
2
        #                                 Prefixes
3
        #                               O16 A32 OV REX  OPCODE                           ; NOTES
4
 
5
        # CALL
6
        CALLq *(%r8)                  # --  --  -- 41   FF 10                            ; REX to access upper reg.
7
        CALLq *(%rax)                 # --  --  -- --   FF 10
8
        CALLq *(%r8)                  # --  --  -- 41   FF 10                            ; REX to access upper reg.
9
        CALLq *(%rax)                 # --  --  -- --   FF 10
10
 
11
        # RET
12
        lret                          # --  --  -- --   CB
13
        retq                          # --  --  -- --   C3
14
 
15
        # IRET
16
        IRET                          # --  --  -- --   CF                               ; 32-bit operand size
17
        IRETW                         # 66  --  -- --   CF                               ; O16 for 16-bit operand size
18
        IRETQ                         # --  --  -- 48   CF                               ; REX for 64-bit operand size
19
 
20
        # CMP
21
 
22
        # MOV
23
        MOVw %cs,(%r8)                # --  --  -- 41   8C 08                            ; REX to access upper reg.
24
        MOVw %cs,(%rax)               # --  --  -- --   8C 08
25
        MOVw %ss,(%r8)                # --  --  -- 41   8C 10                            ; REX to access upper reg.
26
        MOVw %ss,(%rax)               # --  --  -- --   8C 10
27
        MOVw %fs,(%r8)                # --  --  -- 41   8C 20                            ; REX to access upper reg.
28
        MOVw %fs,(%rax)               # --  --  -- --   8C 20
29
        MOVw (%r8),%ss                # --  --  -- 41   8E 10                            ; REX to access upper reg.
30
        MOVw (%rax),%ss               # --  --  -- --   8E 10
31
        MOVw (%r8),%fs                # --  --  -- 41   8E 20                            ; REX to access upper reg.
32
        MOVw (%rax),%fs               # --  --  -- --   8E 20
33
        MOVb $0,(%r8)                  # --  --  -- 41   C6 00 00                         ; REX to access upper reg.
34
        MOVb $0,(%rax)                 # --  --  -- --   C6 00 00
35
        MOVw $0x7000,(%r8)            # 66  --  -- 41   C7 00 00 70                      ; REX to access upper reg. O16 for 16-bit operand size
36
        MOVw $0x7000,(%rax)           # 66  --  -- --   C7 00 00 70                      ; O16 for 16-bit operand size
37
        MOVl $0x70000000,(%r8)        # --  --  -- 41   C7 00 00 00 00 70                ; REX to access upper reg.
38
        MOVl $0x70000000,(%rax)       # --  --  -- --   C7 00 00 00 00 70
39
        MOVb $0,(%r8)                  # --  --  -- 41   C6 00 00                         ; REX to access upper reg.
40
        MOVb $0,(%rax)                 # --  --  -- --   C6 00 00
41
        MOVw $0x7000,(%r8)            # 66  --  -- --   41 C7 00 00 70                   ; O16 for 16-bit operand size
42
        MOVw $0x7000,(%rax)           # 66  --  -- --   C7 00 00 70                      ; O16 for 16-bit operand size
43
        MOVl $0x70000000,(%rax)       # --  --  -- --   C7 00 00 00 00 70
44
        MOVb $0,(%r8)                  # --  --  -- 41   C6 00 00                         ; REX to access upper reg.
45
        MOVb $0,(%rax)                 # --  --  -- --   C6 00 00
46
        MOVw $0x7000,(%r8)            # 66  --  -- 41   C7 00 00 70                      ; REX to access upper reg. O16 for 16-bit operand size
47
        MOVw $0x7000,(%rax)           # 66  --  -- --   C7 00 00 70                      ; O16 for 16-bit operand size
48
        MOVl $0x70000000,(%r8)        # --  --  -- 41   C7 00 00 00 00 70                ; REX to access upper reg.
49
        MOVl $0x70000000,(%rax)       # --  --  -- --   C7 00 00 00 00 70
50
        MOVq $0x70000000,(%r8)        # --  --  -- 49   C7 00 00 00 00 70                ; REX for 64-bit operand size. REX to access upper reg.
51
        MOVq $0x70000000,(%rax)       # --  --  -- 48   C7 00 00 00 00 70                ; REX for 64-bit operand size
52
 
53
        # MOVNTI
54
        MOVNTI %eax,(%r8)             # --  --  -- 41   0f c3 00                         ; REX to access upper reg.
55
        MOVNTI %eax,(%rax)            # --  --  -- --   0f c3 00
56
        MOVNTI %rax,(%r8)             # --  --  -- 49   0F C3 00                         ; REX to access upper reg. REX for 64-bit operand size
57
        MOVNTI %rax,(%rax)            # --  --  -- 48   0F C3 00                         ; REX for 64-bit operand size. REX to access upper reg.
58
        MOVNTI %r8,(%r8)              # --  --  -- 4D   0F C3 00                         ; REX to access upper reg. REX for 64-bit operand size
59
        MOVNTI %r8,(%rax)             # --  --  -- 4C   0F C3 00                         ; REX to access upper reg. REX for 64-bit operand size
60
 
61
        # Conditionals
62
 
63
        # LOOP
64
 
65
 
66
        # Jcc
67
                                      #  66  --  -- --   77 FD                           ; A16 override: (Addr64) = ZEXT(Addr16)
68
                                      #  66  --  -- --   0F 87 F9 FF FF FF               ; A16 override: (Addr64) = ZEXT(Addr16)
69
 
70
        # J*CXZ
71
                                      #  66  67  -- --   E3 FC                           ; ECX used as counter. A16 override: (Addr64) = ZEXT(Addr16)
72
                                      #  66  --  -- --   E3 FD                           ; A16 override: (Addr64) = ZEXT(Addr16)
73
 
74
 
75
 
76
        # Integer
77
 
78
        # IDIV
79
 
80
        IDIVb (%r8)                   #  --  --  -- 41   F6 38                           ; Sign extended result. REX to access upper reg.
81
        IDIVb (%rax)                  #  --  --  -- --   F6 38                           ; Sign extended result
82
        IDIVw (%r8)                   #  66  --  -- 41   F7 38                           ; Sign extended result. REX to access upper reg. O16 for 16-bit
83
        IDIVw (%rax)                  #  66  --  -- --   F7 38                           ; Sign extended result. O16 for 16-bit operand size
84
        IDIVl (%r8)                   #  --  --  -- 41   F7 38                           ; Sign extended result. REX to access upper reg
85
        IDIVl (%rax)                  #  --  --  -- --   F7 38                           ; Sign extended result
86
        IDIVq (%r8)                   #  --  --  -- 49   F7 38                           ; Sign extended result. REX for 64-bit operand size. REX to access u
87
        IDIVq (%rax)                  #  --  --  -- 48   F7 38                           ; Sign extended result. REX for 64-bit operand size
88
 
89
        # IMUL
90
        IMULb (%r8)                   #  --  --  -- 41   F6 28                           ; Sign extended result. REX to access upper reg
91
        IMULb (%rax)                  #  --  --  -- --   F6 28                           ; Sign extended result
92
        IMULw (%r8)                   #  66  --  -- 41   F7 28                           ; Sign extended result. O16 for 16-bit operand size. REX to access
93
        IMULw (%rax)                  #  66  --  -- --   F7 28                           ; Sign extended result. O16 for 16-bit operand size
94
        IMULl (%r8)                   #  --  --  -- 41   F7 28                           ; Sign extended result. REX to access upper reg
95
        IMULl (%rax)                  #  --  --  -- --   F7 28                           ; Sign extended result
96
        IMULq (%r8)                   #  --  --  -- 49   F7 28                           ; Sign extended result. REX for 64-bit operand size. REX to access u
97
        IMULq (%rax)                  #  --  --  -- 48   F7 28                           ; Sign extended result. REX for 64-bit operand size
98
 
99
 
100
 
101
        # SIMD/SSE
102
 
103
        # ADDPD
104
        ADDPD  (%r8),%xmm0            #  --  --  66 41   0F 58 00                        ; REX to access upper reg. OVR 128bit MMinstr.
105
        ADDPD  (%rax),%xmm0           #  --  --  66 --   0F 58 00                        ; OVR 128bit MMinstr.
106
        ADDPD  (%r8),%xmm15           #  --  --  66 45   0F 58 38                        ; REX to access upper XMM reg. REX to access upper reg. OVR 128bit MMinstr.
107
        ADDPD  (%rax),%xmm15          #  --  --  66 44   0F 58 38                        ; REX to access upper XMM reg. OVR 128bit MMinstr.
108
        ADDPD  (%r8),%xmm8            #  --  --  66 45   0F 58 00                        ; REX to access upper XMM reg. REX to access upper reg. OVR 128bit MMinstr.
109
        ADDPD  (%rax),%xmm8           #  --  --  66 44   0F 58 00                        ; REX to access upper XMM reg. OVR 128bit MMinstr.
110
        ADDPD  (%r8),%xmm7            #  --  --  66 41   0F 58 38                        ; REX to access upper reg. OVR 128bit MMinstr.
111
        ADDPD  (%rax),%xmm7           #  --  --  66 --   0F 58 38                        ; OVR 128bit MMinstr.
112
        ADDPD  %xmm0,%xmm0            #  --  --  66 --   0F 58 C0                        ; OVR 128bit MMinstr.
113
        ADDPD  %xmm15,%xmm15          #  --  --  66 45   0F 58 FF                        ; REX to access upper XMM reg. OVR 128bit MMinstr.
114
        ADDPD  %xmm15,%xmm8           #  --  --  66 45   0F 58 C7                        ; REX to access upper XMM reg. OVR 128bit MMinstr.
115
 
116
        # CMPPD
117
 
118
        # CVTSD2SI
119
        CVTSD2SIq (%r8),%rax          #  --  --  F2 49   0f 2d 00                        ; OVR 128-bit media instruction override REX for 64-bit operand size                  REX to access upper reg.
120
        CVTSD2SIq (%rax),%rax         #  --  --  F2 48   0f 2d 00                        ; OVR 128-bit media instruction override REX for 64-bit operand size
121
        CVTSD2SIq (%r8),%r8           #  --  --  F2 4D   0f 2d 00                        ; OVR 128-bit media instruction override REX for 64-bit operand size                REX to access upper reg.
122
        CVTSD2SIq (%rax),%r8          #  --  --  F2 4C   0f 2d 00                        ; OVR 128-bit media instruction override REX for 64-bit operand size                  REX to access upper reg.
123
        CVTSD2SIq %xmm0,%rax          #  --  --  F2 48   0f 2d c0                        ; OVR 128-bit media instruction override REX for 64-bit operand size
124
        CVTSD2SIq %xmm15,%r8          #  --  --  F2 4D   0f 2d c7                        ; OVR 128-bit media instruction override REX for 64-bit operand size                 REX to access upper XMM reg             REX to access upper reg.
125
        CVTSD2SIq %xmm15,%rax         #  --  --  F2 49   0f 2d c7                        ; OVR 128-bit media instruction override REX for 64-bit operand size                  REX to access upper XMM reg
126
        CVTSD2SIq %xmm8,%r8           #  --  --  F2 4D   0f 2d c0                        ; OVR 128-bit media instruction override REX for 64-bit operand size                  REX to access upper XMM reg             REX to access upper reg.
127
        CVTSD2SIq %xmm8,%rax          #  --  --  F2 49   0f 2d c0                        ; OVR 128-bit media instruction override REX for 64-bit operand size                  REX to access upper XMM reg
128
        CVTSD2SIq %xmm7,%r8           #  --  --  F2 4C   0f 2d c7                        ; OVR 128-bit media instruction override REX for 64-bit operand size                 REX to access upper reg.
129
        CVTSD2SIq %xmm7,%rax          #  --  --  F2 48   0f 2d c7                        ; OVR 128-bit media instruction override REX for 64-bit operand size
130
        CVTSD2SIq %xmm0,%r8           #  --  --  F2 4C   0f 2d c0                        ; OVR 128-bit media instruction override REX for 64-bit operand size                  REX to access upper reg.
131
 
132
        # CVTTSD2SI
133
        CVTTSD2SIq (%r8),%rax         #  --  --  F2 49   0f 2c 00                        ; OVR 128-bit media instruction override REX for 64-bit operand size                REX to access upper reg.
134
        CVTTSD2SIq (%rax),%rax        #  --  --  F2 48   0f 2c 00                        ; OVR 128-bit media instruction override REX for 64-bit operand size
135
        CVTTSD2SIq (%r8),%r8          #  --  --  F2 4D   0f 2c 00                        ; OVR 128-bit media instruction override REX for 64-bit operand size                  REX to access upper reg.
136
        CVTTSD2SIq (%rax),%r8         #  --  --  F2 4C   0f 2c 00                        ; OVR 128-bit media instruction override REX for 64-bit operand size                   REX to access upper reg.
137
        CVTTSD2SIq %xmm0,%rax         #  --  --  F2 48   0f 2c c0                        ; OVR 128-bit media instruction override REX for 64-bit operand size
138
        CVTTSD2SIq %xmm15,%r8         #  --  --  F2 4D   0f 2c c7                        ; OVR 128-bit media instruction override REX for 64-bit operand size                 REX to access upper XMM reg             REX to access upper reg.
139
        CVTTSD2SIq %xmm15,%rax        #  --  --  F2 49   0f 2c c7                        ; OVR 128-bit media instruction override REX for 64-bit operand size                 REX to access upper XMM reg
140
        CVTTSD2SIq %xmm8,%r8          #  --  --  F2 4D   0f 2c c0                        ; OVR 128-bit media instruction override REX for 64-bit operand size                 REX to access upper XMM reg             REX to access upper reg.
141
        CVTTSD2SIq %xmm8,%rax         #  --  --  F2 49   0f 2c c0                        ; OVR 128-bit media instruction override REX for 64-bit operand size                 REX to access upper XMM reg
142
        CVTTSD2SIq %xmm7,%r8          #  --  --  F2 4C   0f 2c c7                        ; OVR 128-bit media instruction override REX for 64-bit operand size                  REX to access upper reg.
143
        CVTTSD2SIq %xmm7,%rax         #  --  --  F2 48   0f 2c c7                        ; OVR 128-bit media instruction override REX for 64-bit operand size
144
        CVTTSD2SIq %xmm0,%r8          #  --  --  F2 4C   0f 2c c0                        ; OVR 128-bit media instruction override REX for 64-bit operand size                 REX to access upper reg.
145
 
146
        # CVTSS2SI
147
        CVTSS2SIq (%r8),%rax          #  --  --  F3 49   0f 2d 00                        ; OVR 128-bit media instruction override Result is sign extended                         REX for 64-bit operand size                  REX to access upper reg.
148
        CVTSS2SIq (%rax),%rax         #  --  --  F3 48   0f 2d 00                        ; OVR 128-bit media instruction override Result is sign extended                       REX for 64-bit operand size
149
        CVTSS2SIq (%r8),%r8           #  --  --  F3 4D   0f 2d 00                        ; OVR 128-bit media instruction override Result is sign extended                        REX for 64-bit operand size                  REX to access upper reg.
150
        CVTSS2SIq (%rax),%r8          #  --  --  F3 4C   0f 2d 00                        ; OVR 128-bit media instruction override Result is sign extended                         REX for 64-bit operand size                 REX to access upper reg.
151
        CVTSS2SIq %xmm0,%rax          #  --  --  F3 48   0f 2d c0                        ; OVR 128-bit media instruction override Result is sign extended                       REX for 64-bit operand size
152
        CVTSS2SIq %xmm15,%r8          #  --  --  F3 4D   0f 2d c7                        ; OVR 128-bit media instruction override Result is sign extended                       REX to access upper XMM reg            REX to access upper reg.
153
        CVTSS2SIq %xmm15,%rax         #  --  --  F3 49   0f 2d c7                        ; OVR 128-bit media instruction override Result is sign extended                       REX for 64-bit operand size                 REX to access upper XMM reg
154
        CVTSS2SIq %xmm8,%r8           #  --  --  F3 4D   0f 2d c0                        ; OVR 128-bit media instruction override Result is sign extended                          REX for 64-bit operand size                  REX to access upper XMM reg              REX to access upper reg.
155
        CVTSS2SIq %xmm8,%rax          #  --  --  F3 49   0f 2d c0                        ; OVR 128-bit media instruction override Result is sign extended                          REX for 64-bit operand size
156
        CVTSS2SIq %xmm7,%r8           #  --  --  F3 4C   0f 2d c7                        ; OVR 128-bit media instruction override Result is sign extended                       REX for 64-bit operand size                 REX to access upper reg.
157
        CVTSS2SIq %xmm7,%rax          #  --  --  F3 48   0f 2d c7                        ; OVR 128-bit media instruction override Result is sign extended                          REX for 64-bit operand size
158
        CVTSS2SIq %xmm0,%r8           #  --  --  F3 4C   0f 2d c0                        ; OVR 128-bit media instruction override Result is sign extended                       REX for 64-bit operand size                REX to access upper reg.
159
 
160
        # CVTTSS2SI
161
        CVTTSS2SIq (%r8),%rax         #  --  --  F3 49   0f 2c 00                        ; OVR 128-bit media instruction override Result is sign extended                       REX for 64-bit operand size                  REX to access upper reg.
162
        CVTTSS2SIq (%rax),%rax        #  --  --  F3 48   0f 2c 00                        ; OVR 128-bit media instruction override Result is sign extended                        REX for 64-bit operand size
163
        CVTTSS2SIq (%r8),%r8          #  --  --  F3 4D   0f 2c 00                        ; OVR 128-bit media instruction override Result is sign extended                        REX for 64-bit operand size                   REX to access upper reg.
164
        CVTTSS2SIq (%rax),%r8         #  --  --  F3 4C   0f 2c 00                        ; OVR 128-bit media instruction override Result is sign extended                       REX for 64-bit operand size                    REX to access upper reg.
165
        CVTTSS2SIq %xmm0,%rax         #  --  --  F3 48   0f 2c c0                        ; OVR 128-bit media instruction override Result is sign extended                        REX for 64-bit operand size
166
        CVTTSS2SIq %xmm15,%r8         #  --  --  F3 4D   0f 2c c7                        ; OVR 128-bit media instruction override Result is sign extended                       REX for 64-bit operand size                 REX to access upper XMM reg            REX to access upper reg.
167
        CVTTSS2SIq %xmm15,%rax        #  --  --  F3 49   0f 2c c7                        ; OVR 128-bit media instruction override Result is sign extended                        REX for 64-bit operand size                 REX to access upper XMM reg
168
        CVTTSS2SIq %xmm8,%r8          #  --  --  F3 4D   0f 2c c0                        ; OVR 128-bit media instruction override Result is sign extended                          REX for 64-bit operand size                  REX to access upper XMM reg               REX to access upper reg.
169
        CVTTSS2SIq %xmm8,%rax         #  --  --  F3 49   0f 2c c0                        ; OVR 128-bit media instruction override Result is sign extended                        REX for 64-bit operand size
170
        CVTTSS2SIq %xmm7,%r8          #  --  --  F3 4C   0f 2c c7                        ; OVR 128-bit media instruction override Result is sign extended                        REX for 64-bit operand size                 REX to access upper reg.
171
        CVTTSS2SIq %xmm7,%rax         #  --  --  F3 48   0f 2c c7                        ; OVR 128-bit media instruction override Result is sign extended
172
        CVTTSS2SIq %xmm0,%r8          #  --  --  F3 4C   0f 2c c0                        ; OVR 128-bit media instruction override Result is sign extended                          REX for 64-bit operand size                 REX to access upper reg.
173
 
174
        # CVTSI2SS
175
        CVTSI2SS  (%r8),%xmm0         #  --  --  F3 41   0f 2a 00                        ; OVR 128-bit media instruction override REX to access upper reg.
176
        CVTSI2SS  (%rax),%xmm0        #  --  --  F3 --   0f 2a 00        ; OVR 128-bit media instruction override
177
        CVTSI2SS  (%r8),%xmm15        #  --  --  F3 45   0f 2a 38                        ; OVR 128-bit media instruction override REX to access upper XMM reg            REX to access upper reg.
178
        CVTSI2SS  (%rax),%xmm15       #  --  --  F3 44   0f 2a 38                        ; OVR 128-bit media instruction override REX to access upper XMM reg
179
        CVTSI2SS  (%r8),%xmm8         #  --  --  F3 45   0f 2a 00                        ; OVR 128-bit media instruction override REX to access upper XMM reg            REX to access upper reg.
180
        CVTSI2SS  (%rax),%xmm8        #  --  --  F3 44   0f 2a 00                        ; OVR 128-bit media instruction override REX to access upper XMM reg
181
        CVTSI2SS  (%r8),%xmm7         #  --  --  F3 41   0f 2a 38                        ; OVR 128-bit media instruction override REX to access upper reg.
182
        CVTSI2SS  (%rax),%xmm7        #  --  --  F3 --   0f 2a 38                        ; OVR 128-bit media instruction override
183
        CVTSI2SS  %eax,%xmm0          #  --  --  F3 --   0f 2a c0                        ; OVR 128-bit media instruction override
184
        CVTSI2SS  %eax,%xmm15         #  --  --  F3 44   0f 2a f8                        ; OVR 128-bit media instruction override REX to access upper XMM reg
185
        CVTSI2SS  %eax,%xmm8          #  --  --  F3 44   0f 2a c0                        ; OVR 128-bit media instruction override REX to access upper XMM reg
186
        CVTSI2SS  %eax,%xmm7          #  --  --  F3 --   0f 2a f8                        ; OVR 128-bit media instruction override
187
        CVTSI2SS  (%r8),%xmm0         #  --  --  F3 41   0f 2a 00                        ; OVR 128-bit media instruction override REX to access upper reg.
188
        CVTSI2SS  (%rax),%xmm0        #  --  --  F3 --   0f 2a 00                        ; OVR 128-bit media instruction override
189
        CVTSI2SS  (%r8),%xmm15        #  --  --  F3 45   0f 2a 38                        ; OVR 128-bit media instruction override REX to access upper XMM reg            REX to access upper reg.
190
        CVTSI2SS  (%rax),%xmm15       #  --  --  F3 44   0f 2a 38                        ; OVR 128-bit media instruction override REX to access upper XMM reg
191
        CVTSI2SS  (%r8),%xmm8         #  --  --  F3 45   0f 2a 00                        ; OVR 128-bit media instruction override REX to access upper XMM reg            REX to access upper reg.
192
        CVTSI2SS  (%rax),%xmm8        #  --  --  F3 44   0f 2a 00                        ; OVR 128-bit media instruction override REX to access upper XMM reg
193
        CVTSI2SS  (%r8),%xmm7         #  --  --  F3 41   0f 2a 38                        ; OVR 128-bit media instruction override REX to access upper reg.
194
        CVTSI2SS  (%rax),%xmm7        #  --  --  F3 --   0f 2a 38                        ; OVR 128-bit media instruction override
195
 
196
        # CVTSI2SD
197
        CVTSI2SD  (%r8),%xmm0         #  --  --  F2 41   0F 2A 00                        ; REX to access upper reg. OVR 128bit MMinstr.
198
        CVTSI2SD  (%rax),%xmm0        #  --  --  F2 --   0F 2A 00                        ; OVR 128bit MMinstr.
199
        CVTSI2SD  (%r8),%xmm15        #  --  --  F2 45   0F 2A 38                        ; REX to access upper XMM reg. REX to access upper reg. OVR 128bit MMinstr.
200
        CVTSI2SD  (%rax),%xmm15       #  --  --  F2 44   0F 2A 38                        ; REX to access upper XMM reg. OVR 128bit MMinstr.
201
        CVTSI2SD  (%r8),%xmm8         #  --  --  F2 45   0F 2A 00                        ; REX to access upper XMM reg. REX to access upper reg. OVR 128bit MMinstr.
202
        CVTSI2SD  (%rax),%xmm8        #  --  --  F2 44   0F 2A 00                        ; REX to access upper XMM reg. OVR 128bit MMinstr.
203
        CVTSI2SD  (%r8),%xmm7         #  --  --  F2 41   0F 2A 38                        ; REX to access upper reg. OVR 128bit MMinstr.
204
        CVTSI2SD  (%rax),%xmm7        #  --  --  F2 --   0F 2A 38                        ; OVR 128bit MMinstr.
205
        CVTSI2SD  %eax,%xmm0          #  --  --  F2 --   0F 2A C0                        ; OVR 128bit MMinstr.
206
        CVTSI2SD  %eax,%xmm15         #  --  --  F2 44   0F 2A F8                        ; REX to access upper XMM reg. OVR 128bit MMinstr.
207
        CVTSI2SD  %eax,%xmm8          #  --  --  F2 44   0F 2A C0                        ; REX to access upper XMM reg. OVR 128bit MMinstr.
208
        CVTSI2SD  %eax,%xmm7          #  --  --  F2 --   0F 2A F8                        ; OVR 128bit MMinstr.
209
        CVTSI2SD  (%r8),%xmm0         #  --  --  F2 41   0F 2A 00                        ; REX to access upper reg. OVR 128bit MMinstr.
210
        CVTSI2SD  (%rax),%xmm0        #  --  --  F2 --   0F 2A 00                        ; OVR 128bit MMinstr.
211
        CVTSI2SD  (%r8),%xmm15        #  --  --  F2 45   0F 2A 38                        ; REX to access upper XMM reg. REX to access upper reg. OVR 128bit MMinstr.
212
        CVTSI2SD  (%rax),%xmm15       #  --  --  F2 44   0F 2A 38                        ; REX to access upper XMM reg. OVR 128bit MMinstr.
213
        CVTSI2SD  (%r8),%xmm8         #  --  --  F2 45   0F 2A 00                        ; REX to access upper XMM reg. REX to access upper reg. OVR 128bit MMinstr.
214
        CVTSI2SD  (%rax),%xmm8        #  --  --  F2 44   0F 2A 00                        ; REX to access upper XMM reg. OVR 128bit MMinstr.
215
        CVTSI2SD  (%r8),%xmm7         #  --  --  F2 41   0F 2A 38                        ; REX to access upper reg. OVR 128bit MMinstr.
216
        CVTSI2SD  (%rax),%xmm7        #  --  --  F2 --   0F 2A 38                        ; OVR 128bit MMinstr.
217
 
218
        # MOVD
219
        MOVD (%r8),%xmm0              #  --  --  66 41   0F 6E 00                        ; REX to access upper reg. Data128 = ZEXT(Data32). OVR 128bit MMinstr.
220
        MOVD (%rax),%xmm0             #  --  --  66 --   0F 6E 00                        ; Data128 = ZEXT(Data32). OVR 128bit MMinstr.
221
        MOVD (%r8),%xmm15             #  --  --  66 45   0F 6E 38                        ; REX to access upper XMM reg. REX to access upper reg. Data128 = ZEXT(Data32)
222
        MOVD (%rax),%xmm15            #  --  --  66 44   0F 6E 38                        ; REX to access upper XMM reg. OVR 128bit MMinstr.
223
        MOVD (%r8),%xmm8              #  --  --  66 45   0F 6E 00                        ; REX to access upper XMM reg. REX to access upper reg. Data128 = ZEXT(Data32)
224
        MOVD (%rax),%xmm8             #  --  --  66 44   0F 6E 00                        ; REX to access upper XMM reg. Data128 = ZEXT(Data32). OVR 128bit MMinstr.
225
        MOVD (%r8),%xmm7              #  --  --  66 41   0F 6E 38                        ; REX to access upper reg. Data128 = ZEXT(Data32). OVR 128bit MMinstr.
226
        MOVD (%rax),%xmm7             #  --  --  66 --   0F 6E 38                        ; Data128 = ZEXT(Data32). OVR 128bit MMinstr.
227
        MOVD %eax,%xmm0               #  --  --  66 --   0F 6E C0                        ; Data128 = ZEXT(Data32). OVR 128bit MMinstr.
228
        MOVD %eax,%xmm15              #  --  --  66 44   0F 6E F8                        ; REX to access upper XMM reg. Data128 = ZEXT(Data32). OVR 128bit MMinstr.
229
        MOVD %eax,%xmm8               #  --  --  66 44   0F 6E C0                        ; REX to access upper XMM reg. Data128 = ZEXT(Data32). OVR 128bit MMinstr.
230
        MOVD %eax,%xmm7               #  --  --  66 --   0F 6E F8                        ; Data128 = ZEXT(Data32). OVR 128bit MMinstr.
231
        MOVD %xmm0,(%r8)              #  --  --  66 41   0F 7E 00                        ; REX to access upper reg. OVR 128bit MMinstr.
232
        MOVD %xmm0,(%rax)             #  --  --  66 --   0F 7E 00                        ; OVR 128bit MMinstr.
233
        MOVD %xmm15,(%r8)             #  --  --  66 45   0F 7E 38                        ; REX to access upper XMM reg. REX to access upper reg. OVR 128bit MMinstr.
234
        MOVD %xmm15,(%rax)            #  --  --  66 44   0F 7E 38                        ; REX to access upper XMM reg. OVR 128bit MMinstr.
235
        MOVD %xmm8,(%r8)              #  --  --  66 45   0F 7E 00                        ; REX to access upper XMM reg. REX to access upper reg. OVR 128bit MMinstr.
236
        MOVD %xmm8,(%rax)             #  --  --  66 44   0F 7E 00                        ; REX to access upper XMM reg. OVR 128bit MMinstr.
237
        MOVD %xmm7,(%r8)              #  --  --  66 41   0F 7E 38                        ; REX to access upper reg. OVR 128bit MMinstr.
238
        MOVD %xmm7,(%rax)             #  --  --  66 --   0F 7E 38                        ; OVR 128bit MMinstr.
239
        MOVD %xmm0,%eax               #  --  --  66 --   0F 7E C0                        ; OVR 128bit MMinstr.
240
        MOVD %xmm15,%eax              #  --  --  66 44   0F 7E F8                        ; REX to access upper XMM reg. OVR 128bit MMinstr.
241
        MOVD %xmm8,%eax               #  --  --  66 44   0F 7E C0                        ; REX to access upper XMM reg. OVR 128bit MMinstr.
242
        MOVD %xmm7,%eax               #  --  --  66 --   0F 7E F8                        ; OVR 128bit MMinstr.
243
        MOVD %rax,%xmm0               #  --  --  66 48   0F 6E C0                        ; Data128 = ZEXT(Data64). OVR 128bit MMinstr. REX for 64-bit operand size.
244
        MOVD %r8,%xmm0                #  --  --  66 49   0F 6E C0                        ; REX to access upper reg. Data128 = ZEXT(Data64). OVR 128bit MMinstr. REX for 64-bit operand size.
245
        MOVD %r8,%xmm15               #  --  --  66 4D   0F 6E F8                        ; REX to access upper reg. Data128 = ZEXT(Data64). OVR 128bit MMinstr. REX for 64-bit operand size.
246
        MOVD %xmm0,%rax               #  --  --  66 48   0F 7E C0                        ; OVR 128bit MMinstr. REX for 64-bit operand size.
247
        MOVD %xmm0,%r8                #  --  --  66 49   0F 7E C0                        ; OVR 128bit MMinstr. REX for 64-bit operand size.
248
        MOVD %xmm7,%r8                #  --  --  66 49   0F 7E F8                        ; OVR 128bit MMinstr. REX for 64-bit operand size.
249
 
250
        # MOVQ
251
        MOVQ (%r8),%xmm0              #  --  --  F3 41   0F 7E 00                        ; REX to access upper reg. Data128 = ZEXT(Data64). OVR 128bit MMinstr.
252
        MOVQ (%rax),%xmm0             #  --  --  F3 --   0F 7E 00                        ; Data128 = ZEXT(Data64). OVR 128bit MMinstr.
253
        MOVQ (%r8),%xmm15             #  --  --  F3 45   0F 7E 38                        ; REX to access upper XMM reg. REX to access upper reg. Data128 = ZEXT(Data64)
254
        MOVQ (%rax),%xmm15            #  --  --  F3 44   0F 7E 38                        ; REX to access upper XMM reg. Data128 = ZEXT(Data64). OVR 128bit MMinstr.
255
        MOVQ (%r8),%xmm8              #  --  --  F3 45   0F 7E 00                        ; REX to access upper XMM reg. REX to access upper reg. Data128 = ZEXT(Data64)
256
        MOVQ (%rax),%xmm8             #  --  --  F3 44   0F 7E 00                        ; REX to access upper XMM reg. Data128 = ZEXT(Data64). OVR 128bit MMinstr.
257
        MOVQ (%r8),%xmm7              #  --  --  F3 41   0F 7E 38                        ; REX to access upper reg. Data128 = ZEXT(Data64). OVR 128bit MMinstr.
258
        MOVQ (%rax),%xmm7             #  --  --  F3 --   0F 7E 38                        ; Data128 = ZEXT(Data64). OVR 128bit MMinstr.
259
        MOVQ %xmm0,%xmm0              #  --  --  F3 --   0F 7E C0                        ; OVR 128bit MMinstr.
260
        MOVQ %xmm15,%xmm15            #  --  --  F3 45   0F 7E FF                        ; REX to access upper XMM reg. OVR 128bit MMinstr.
261
        MOVQ %xmm15,%xmm8             #  --  --  F3 45   0F 7E C7                        ; REX to access upper XMM reg. OVR 128bit MMinstr.
262
        MOVQ %xmm15,%xmm7             #  --  --  F3 41   0F 7E FF                        ; REX to access upper XMM reg. OVR 128bit MMinstr.
263
        MOVQ %xmm15,%xmm0             #  --  --  F3 41   0F 7E C7                        ; REX to access upper XMM reg. OVR 128bit MMinstr.
264
        MOVQ %xmm8,%xmm15             #  --  --  F3 45   0F 7E F8                        ; REX to access upper XMM reg. OVR 128bit MMinstr.
265
        MOVQ %xmm8,%xmm8              #  --  --  F3 45   0F 7E C0                        ; REX to access upper XMM reg. OVR 128bit MMinstr.
266
        MOVQ %xmm8,%xmm7              #  --  --  F3 41   0F 7E F8                        ; REX to access upper XMM reg. OVR 128bit MMinstr.
267
        MOVQ %xmm8,%xmm0              #  --  --  F3 41   0F 7E C0                        ; REX to access upper XMM reg. OVR 128bit MMinstr.
268
        MOVQ %xmm7,%xmm15             #  --  --  F3 44   0F 7E FF                        ; REX to access upper XMM reg. OVR 128bit MMinstr.
269
        MOVQ %xmm7,%xmm8              #  --  --  F3 44   0F 7E C7                        ; REX to access upper XMM reg. OVR 128bit MMinstr.
270
        MOVQ %xmm7,%xmm7              #  --  --  F3 --   0F 7E FF                        ; OVR 128bit MMinstr.
271
        MOVQ %xmm7,%xmm0              #  --  --  F3 --   0F 7E C7                        ; OVR 128bit MMinstr.
272
        MOVQ %xmm0,%xmm15             #  --  --  F3 44   0F 7E F8                        ; REX to access upper XMM reg. OVR 128bit MMinstr.
273
        MOVQ %xmm0,%xmm8              #  --  --  F3 44   0F 7E C0                        ; REX to access upper XMM reg. OVR 128bit MMinstr.
274
        MOVQ %xmm0,%xmm7              #  --  --  F3 --   0F 7E F8                        ; OVR 128bit MMinstr.
275
        MOVQ %xmm0,(%r8)              #  --  --  66 41   0F D6 00                        ; REX to access upper reg. OVR 128bit MMinstr.
276
        MOVQ %xmm0,(%rax)             #  --  --  66 --   0F D6 00                        ; OVR 128bit MMinstr.
277
        MOVQ %xmm15,(%r8)             #  --  --  66 45   0F D6 38                        ; REX to access upper reg. OVR 128bit MMinstr.
278
        MOVQ %xmm15,(%rax)            #  --  --  66 44   0F D6 38                        ; REX to access upper XMM reg. OVR 128bit MMinstr.
279
        MOVQ %xmm8,(%r8)              #  --  --  66 45   0F D6 00                        ; REX to access upper XMM reg. REX to access upper reg. OVR 128bit MMinstr.
280
        MOVQ %xmm8,(%rax)             #  --  --  66 44   0F D6 00                        ; REX to access upper XMM reg. OVR 128bit MMinstr.
281
        MOVQ %xmm7,(%r8)              #  --  --  66 41   0F D6 38                        ; REX to access upper reg. OVR 128bit MMinstr.
282
 
283
        # 64-bit MMX
284
 
285
        # CVTPD2PI
286
 
287
        # MOVD
288
        MOVD (%r8),%mm0               #  --  --  -- 41   0F 6E 00                        ; REX to access upper reg. Data64 = ZEXT(Data32)
289
        MOVD (%rax),%mm0              #  --  --  -- --   0F 6E 00                        ; Data64 = ZEXT(Data32)
290
        MOVD (%r8),%mm7               #  --  --  -- 41   0F 6E 38                        ; REX to access upper reg. Data64 = ZEXT(Data32)
291
        MOVD (%rax),%mm7              #  --  --  -- --   0F 6E 38                        ; Data64 = ZEXT(Data32)
292
        MOVD %eax,%mm0                #  --  --  -- --   0F 6E C0                        ; Data64 = ZEXT(Data32)
293
        MOVD %eax,%mm7                #  --  --  -- --   0F 6E F8                        ; Data64 = ZEXT(Data32)
294
        MOVD %mm0,(%r8)               #  --  --  -- 41   0F 7E 00                        ; REX to access upper reg.
295
        MOVD %mm0,(%rax)              #  --  --  -- --   0F 7E 00
296
        MOVD %mm7,(%r8)               #  --  --  -- 41   0F 7E 38                        ; REX to access upper reg.
297
        MOVD %mm7,(%rax)              #  --  --  -- --   0F 7E 38
298
        MOVD %mm0,%eax                #  --  --  -- --   0F 7E C0
299
        MOVD %mm7,%eax                #  --  --  -- --   0F 7E F8
300
 
301
        # MOVQ
302
        MOVQ (%r8),%mm0               #  --  --  -- 41   0F 6F 00                        ; REX to access upper reg.
303
        MOVQ (%rax),%mm0              #  --  --  -- --   0F 6F 00
304
        MOVQ (%r8),%mm7               #  --  --  -- 41   0F 6F 38                        ; REX to access upper reg.
305
        MOVQ (%rax),%mm7              #  --  --  -- --   0F 6F 38
306
        MOVQ %mm0,(%r8)               #  --  --  -- 41   0F 7F 00                        ; REX to access upper reg.
307
        MOVQ %mm0,(%rax)              #  --  --  -- --   0F 7F 00
308
        MOVQ %mm7,(%r8)               #  --  --  -- 41   0F 7F 38                        ; REX to access upper reg.
309
        MOVQ %mm7,(%rax)              #  --  --  -- --   0F 7F 38
310
 
311
        # X87
312
        # FADDP
313
 
314
 
315
        # FDIV
316
 
317
        # Stack Operations
318
 
319
        # POP
320
        POPq (%r8)                    #  --  --  -- 41   8F 00                           ; REX to access upper reg.
321
        POPq (%rax)                   #  --  --  -- --   8F 00
322
        POPFQ                         #  --  --  -- --   9D
323
 
324
        # PUSH
325
        PUSHq (%r8)                   #  --  --  -- 41   FF 30                           ; REX to access upper reg.
326
        PUSHq (%rax)                  #  --  --  -- --   FF 30
327
        PUSHFQ                        #  --  --  -- --   9C
328
 
329
 
330
 
331
 
332
 
333
        # MMX/XMM/x87 State
334
        # FNSAVE
335
        # FRSTOR
336
        # FSAVE
337
        # FXRSTOR
338
        # FXSAVE
339
        # EMMS
340
        EMMS                          #  --  --  -- --   0F 77
341
        # FEMMS
342
        FEMMS                         #  --  --  -- --   0F 0E
343
 
344
        # LEA calculation
345
 
346
        # MISC System Instructions
347
        # CLFLUSH
348
 
349
        # INVD
350
        INVD                          #  --  --  -- --   0F 08
351
 
352
        # INVLPG
353
        INVLPG (%r8)                  #  --  --  -- 41   0F 01 38                        ; REX to access upper reg.
354
        INVLPG (%rax)                 #  --  --  -- --   0F 01 38
355
        INVLPG (%r8)                  #  --  --  -- 41   0F 01 38                        ; REX to access upper reg.
356
        INVLPG (%rax)                 #  --  --  -- --   0F 01 38
357
        INVLPG (%r8)                  #  --  --  -- 41   0F 01 38                        ; REX to access upper reg.
358
        INVLPG (%rax)                 #  --  --  -- --   0F 01 38
359
 
360
        # LAR
361
 
362
        # LGDT
363
 
364
        # LIDT
365
 
366
 
367
        # LLDT
368
 
369
        # SGDT
370
 
371
        # SIDT
372
 
373
        # SLDT
374
#        SLDT (%eax)                  #  --  67  -- --   0F 00 00                        ; A32 override: (Addr64) = ZEXT(Addr32 )
375
        SLDT %eax                     #  --  --  -- --   0F 00 C0
376
        SLDT %rax                     #  --  --  -- 48   0F 00 C0
377
        SLDT %ax                      #  66  --  -- --   0F 00 C0
378
        SLDT (%rax)                   #  --  --  -- --   0F 00 00
379
 
380
        # SWAPGS
381
 
382
 
383
 
384
        # IO
385
 
386
        # OUT
387
        OUT %al,$0                     #  --  --  -- --   E6 00
388
        OUT %ax,$0                     #  66  --  -- --   E7 00                           ; O16 for 16-bit operand size
389
        OUT %eax,$0                    #  --  --  -- --   E7 00
390
 
391
        # IN
392
 
393
 
394
 
395
        xchg %ax,%ax                  # 66  --   -- --   90
396
        xchg %eax,%eax                # --  --   -- --   87 C0
397
        xchg %rax,%rax                # --  --   -- --   90
398
        rex64 xchg %rax,%rax          # --  --   -- 48   90
399
        xchg %rax,%r8                 # --  --   -- 49   90
400
        xchg %eax,%r8d                # --  --   -- 41   90
401
        xchg %r8d,%eax                # --  --   -- 41   90
402
        xchg %eax,%r9d                # --  --   -- 41   91
403
        xchg %r9d,%eax                # --  --   -- 41   91
404
        xchg %ebx,%eax                # --  --   -- 93
405
        xchg %eax,%ebx                # --  --   -- 93
406
        xchg %ax,%r8w                 # --  --   -- 66 41 90
407
        xchg %r8w,%ax                 # --  --   -- 66 41 90
408
        xchg %ax,%r9w                 # --  --   -- 66 41 91
409
        xchg %r9w,%ax                 # --  --   -- 66 41 91
410
 
411
        smsw %rax                     #  --  --  -- 48   0F 01 e0
412
        smsw %eax                     #  --  --  -- --   0F 01 e0
413
        smsw %ax                      #  66  --  -- --   0F 01 e0
414
        smsw (%rax)                   #  --  --  -- --   0F 01 20
415
 
416
        str %rax                      #  --  --  -- 48   0F 00 c8
417
        str %eax                      #  --  --  -- --   0F 00 c8
418
        str %ax                       #  66  --  -- --   0F 00 c8
419
        str (%rax)                    #  --  --  -- --   0F 00 08
420
 
421
        syscall                       #  --  --  -- --   0F 05
422
        sysret                        #  --  --  -- --   0F 07
423
 
424
        swapgs                        #  --  --  -- --   0F 01 f8
425
 
426
 .p2align 4,0

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.