gas/
[deliverable/binutils-gdb.git] / gas / testsuite / gas / i386 / intelok.s
1 .intel_syntax noprefix
2 .equiv byte, 1
3 .equiv word, 2
4 .equiv dword, 4
5 .equiv fword, 6
6 .equiv qword, 8
7 .equiv tbyte, 10
8 .equiv oword, 16
9 .equiv xmmword, 16
10 .text
11 start:
12
13 # operand sizes
14
15 add al, [eax]
16 add al, byte ptr [eax]
17 add ax, [eax]
18 add ax, word ptr [eax]
19 add eax, [eax]
20 add eax, dword ptr [eax]
21 add byte ptr [eax], 1
22 add dword ptr [eax], 1
23 add word ptr [eax], 1
24 addpd xmm0, [eax]
25 addpd xmm0, xmmword ptr [eax]
26 addps xmm0, [eax]
27 addps xmm0, xmmword ptr [eax]
28 addsd xmm0, [eax]
29 addsd xmm0, qword ptr [eax]
30 addss xmm0, [eax]
31 addss xmm0, dword ptr [eax]
32 bound ax, dword ptr [ecx]
33 bound eax, qword ptr [ecx]
34 call word ptr [eax]
35 call dword ptr [eax]
36 call fword ptr [eax]
37 cmps [esi], byte ptr es:[edi]
38 cmps dword ptr [esi], es:[edi]
39 cmps word ptr [esi], word ptr es:[edi]
40 cmpxchg8b qword ptr [eax]
41 fadd dword ptr [eax]
42 fadd qword ptr [eax]
43 fbld [eax]
44 fbld tbyte ptr [eax]
45 fbstp [eax]
46 fbstp tbyte ptr [eax]
47 fiadd dword ptr [eax]
48 fiadd word ptr [eax]
49 fild dword ptr [eax]
50 fild qword ptr [eax]
51 fild word ptr [eax]
52 fist dword ptr [eax]
53 fist word ptr [eax]
54 fistp dword ptr [eax]
55 fistp qword ptr [eax]
56 fistp word ptr [eax]
57 fisttp dword ptr [eax]
58 fisttp qword ptr [eax]
59 fisttp word ptr [eax]
60 fld dword ptr [eax]
61 fld qword ptr [eax]
62 fld tbyte ptr [eax]
63 fldcw [eax]
64 fldcw word ptr [eax]
65 fldenv [eax]
66 fldenvd [eax]
67 fldenvw [eax]
68 fst dword ptr [eax]
69 fst qword ptr [eax]
70 fstp dword ptr [eax]
71 fstp qword ptr [eax]
72 fstp tbyte ptr [eax]
73 lds ax, [eax]
74 lds eax, [eax]
75 lds ax, dword ptr [eax]
76 lds eax, fword ptr [eax]
77 lea eax, [eax]
78 lea eax, byte ptr [eax]
79 lea eax, dword ptr [eax]
80 lea eax, fword ptr [eax]
81 lea eax, qword ptr [eax]
82 lea eax, tbyte ptr [eax]
83 lea eax, word ptr [eax]
84 lea eax, xmmword ptr [eax]
85 lgdt [eax]
86 lgdtd [eax]
87 lgdtw [eax]
88 movs es:[edi], byte ptr [esi]
89 movs dword ptr es:[edi], [esi]
90 movs word ptr es:[edi], word ptr [esi]
91 movsx eax, byte ptr [eax]
92 movsx eax, word ptr [eax]
93 paddb mm0, [eax]
94 paddb mm0, qword ptr [eax]
95 paddb xmm0, [eax]
96 paddb xmm0, xmmword ptr [eax]
97 pinsrw mm0, word ptr [eax], 3
98 pinsrw xmm0, word ptr [eax], 7
99 push dword ptr [eax]
100 xlat [ebx]
101 xlat byte ptr [ebx]
102 xlatb
103
104 # memory operands
105
106 mov eax, dword ptr [byte+eax]
107 mov eax, dword ptr byte[eax]
108 mov eax, [dword+eax]
109 mov eax, dword[eax]
110 mov eax, [fword+eax]
111 mov eax, fword[eax]
112 mov eax, [qword+eax+dword]
113 mov eax, qword[eax+dword]
114 mov eax, [tbyte+eax+dword*2]
115 mov eax, tbyte[eax+dword*2]
116 mov eax, [word+eax*dword]
117 mov eax, word[eax*dword]
118
119 mov eax, [eax*1]
120 mov eax, [eax*+1]
121 mov eax, [+1*eax]
122 mov eax, [eax*+2]
123 mov eax, [+2*eax]
124 mov eax, [ecx*dword]
125 mov eax, [dword*ecx]
126 mov eax, 1[eax]
127 mov eax, [eax]+1
128 mov eax, [eax - 5 + ecx]
129 mov eax, [eax + 5 and 3 + ecx]
130 mov eax, [eax + 5*3 + ecx]
131 mov eax, [oword][eax]
132 mov eax, [eax][oword]
133 mov eax, xmmword[eax][ecx]
134 mov eax, [eax]+1[ecx]
135 mov eax, [eax][ecx]+1
136 mov eax, [1][eax][ecx]
137 mov eax, [eax][1][ecx]
138 mov eax, [eax][ecx][1]
139 mov eax, [[eax]]
140 mov eax, [eax[ecx]]
141 mov eax, [[eax][ecx]]
142 mov eax, es:[eax]
143
144 # expressions
145
146 push + 1
147 push - 1
148 push not 1
149 push 1 + 1
150 push 2 - 1
151 push 2 * 2
152 push 3 / 2
153 push 3 mod 2
154 push 4 shl 1
155 push 5 shr 2
156 push 6 and 3
157 push 7 xor 4
158 push 8 or 5
159
160 push +dword
161 push -dword
162 push not dword
163 push not +dword
164 push not -dword
165 push not not dword
166
167 # offset expressions
168
169 mov eax, offset x
170 mov eax, offset flat:x
171 mov eax, offset gs:x
172 mov eax, offset [x]
173 mov eax, offset flat:[x]
174 mov eax, offset gs:[x]
175 mov eax, [offset x]
176 mov eax, [eax + offset x]
177 mov eax, [eax + offset 1]
178 mov eax, [offset x + eax]
179 mov eax, offset x+1[eax]
180 mov eax, [eax] + offset x
181 mov eax, [eax] + offset 1
182 mov eax, offset x + [1]
183 mov eax, [offset x] - [1]
184 mov eax, offset x + es:[2]
185 mov eax, offset x + offset es:[3]
186 mov eax, [4] + offset x
187 mov eax, [5] + [offset x]
188 mov eax, ss:[6] + offset x
189 mov eax, ss:[7] + [offset x]
190 mov eax, dword ptr [8]
191
192 # other operands
193 call 3:5
194 jmp 5:3
195 call dword ptr xtrn
196 jmp word ptr xtrn
197
198 # Force a good alignment.
199 .p2align 4,0
This page took 0.033993 seconds and 4 git commands to generate.