1	.intel_syntax noprefix
2	.text
3start:
4	add	eax, byte ptr [eax]
5	add	eax, qword ptr [eax]
6	add	[eax], 1
7	add	qword ptr [eax], 1
8	addpd	xmm0, dword ptr [eax]
9	addpd	xmm0, qword ptr [eax]
10	addpd	xmm0, tbyte ptr [eax]
11	addps	xmm0, dword ptr [eax]
12	addps	xmm0, qword ptr [eax]
13	addps	xmm0, tbyte ptr [eax]
14	addsd	xmm0, dword ptr [eax]
15	addsd	xmm0, tbyte ptr [eax]
16	addsd	xmm0, xmmword ptr [eax]
17	addss	xmm0, qword ptr [eax]
18	addss	xmm0, tbyte ptr [eax]
19	addss	xmm0, xmmword ptr [eax]
20	bound	eax, dword ptr [ebx]
21	bound	ax, word ptr [ebx]
22	call	byte ptr [eax]
23	call	qword ptr [eax]
24	call	tbyte ptr [eax]
25	call	xword ptr [eax]
26	cmps	[esi], es:[edi]
27	cmps	dword ptr [esi], word ptr es:[edi]
28	cmpxchg8b dword ptr [eax]
29	fadd	[eax]
30	fadd	word ptr [eax]
31	fadd	tbyte ptr [eax]
32	fbld	byte ptr [eax]
33	fbld	word ptr [eax]
34	fbstp	dword ptr [eax]
35	fbstp	qword ptr [eax]
36	fiadd	[eax]
37	fiadd	byte ptr [eax]
38	fild	[eax]
39	fild	byte ptr [eax]
40	fild	tbyte ptr [eax]
41	fist	[eax]
42	fist	byte ptr [eax]
43	fist	qword ptr [eax]
44	fistp	[eax]
45	fistp	byte ptr [eax]
46	fisttp	[eax]
47	fisttp	byte ptr [eax]
48	fld	[eax]
49	fld	word ptr [eax]
50	fldcw	dword ptr [eax]
51	fst	[eax]
52	fst	word ptr [eax]
53	fst	tbyte ptr [eax]
54	fstp	[eax]
55	fstp	word ptr [eax]
56	ins	es:[edi], dx
57	lds	ax, word ptr [eax]
58	lds	eax, dword ptr [eax]
59	lods	[esi]
60	movs	es:[edi], [esi]
61	movs	dword ptr es:[edi], word ptr [esi]
62	movsx	eax, [eax]
63	movsx	eax, dword ptr [eax]
64	outs	dx, [esi]
65	paddb	mm0, dword ptr [eax]
66	paddb	mm0, xmmword ptr [eax]
67	paddb	xmm0, dword ptr [eax]
68	paddb	xmm0, qword ptr [eax]
69	pinsrw	mm0, byte ptr [eax], 3
70	pinsrw	mm0, dword ptr [eax], 3
71	pinsrw	mm0, qword ptr [eax], 3
72	pinsrw	xmm0, dword ptr [eax], 7
73	pinsrw	xmm0, qword ptr [eax], 7
74	pinsrw	xmm0, xmmword ptr [eax], 7
75	push	byte ptr [eax]
76	push	qword ptr [eax]
77	scas	es:[edi]
78#XXX?	shl	eax
79	stos	es:[edi]
80	xlat	word ptr [ebx]
81#XXX?	xlatb	[ebx]
82
83	# expressions
84#XXX?	push	~ 1
85#XXX?	push	1 % 1
86#XXX?	push	1 << 1
87#XXX?	push	1 >> 1
88#XXX?	push	1 & 1
89#XXX?	push	1 ^ 1
90#XXX?	push	1 | 1
91	push	1 1
92	push	1 +
93	push	1 * * 1
94
95	# memory references
96	mov	eax, [ecx*3]
97	mov	eax, [3*ecx]
98	mov	eax, [-1*ecx + 1]
99	mov	eax, [esp + esp]
100	mov	eax, [eax - 1*ecx + 1]
101	mov	eax, [(eax-1) * (eax-1)]
102	mov	eax, [eax-1 xor eax-1]
103	mov	eax, [(eax-1) xor (eax-1)]
104	mov	eax, [not eax + 1]
105	mov	eax, [ecx*2 + edx*4]
106	mov	eax, [2*ecx + 4*edx]
107	mov	eax, [eax]1[ecx]		# ugly diag
108	mov	eax, [eax][ecx]1		# ugly diag
109	mov	eax, eax[ecx]			# ugly diag
110	mov	eax, es[ecx]
111	mov	eax, cr0[ecx]
112	mov	eax, [eax]ecx
113	mov	eax, [eax]+ecx
114	mov	eax, [eax]+ecx*2
115	mov	eax, [eax]+2*ecx
116	mov	eax, [[eax]ecx]
117	mov	eax, eax:[ecx]
118
119	mov	eax, [ss]
120	mov	eax, [st]
121	mov	eax, [mm0]
122	mov	eax, [xmm0]
123	mov	eax, [cr0]
124	mov	eax, [dr7]
125
126	mov	eax, [ss+edx]
127	mov	eax, [st+edx]
128	mov	eax, [mm0+edx]
129	mov	eax, [xmm0+edx]
130	mov	eax, [cr0+edx]
131	mov	eax, [dr7+edx]
132
133	mov	eax, [edx+ss]
134	mov	eax, [edx+st]
135	mov	eax, [edx+cr0]
136	mov	eax, [edx+dr7]
137	mov	eax, [edx+mm0]
138	mov	eax, [edx+xmm0]
139
140	lea	eax, [bx+si*1]
141	lea	eax, [bp+si*2]
142	lea	eax, [bx+di*4]
143	lea	eax, [bp+di*8]
144	lea	eax, [bx+1*si]
145	lea	eax, [bp+2*si]
146	lea	eax, [bx+4*di]
147	lea	eax, [bp+8*di]
148
149	mov	eax, [ah]
150	mov	eax, [ax]
151	mov	eax, [eax+bx]
152	mov	eax, offset [eax]
153	mov	eax, offset eax
154	mov	eax, offset offset eax
155	mov	eax, offset [1*eax]
156	mov	eax, offset 1*eax
157#XXX?	mov	eax, offset x[eax]
158#XXX?	mov	eax, offset [x][eax]
159	mov	eax, flat x
160	mov	eax, flat [x]
161	mov	eax, es:eax
162	mov	eax, eax[ebp]
163	movzx	eax, 1 ptr [eax]
164	movzx	eax, byte word ptr [eax]
165	movzx	eax, [byte ptr eax]
166	movzx	eax, byte [ptr [eax]]
167	movzx	eax, byte ptr [gs:eax]
168	movzx	eax, byte gs:ptr [eax]
169	movzx	eax, byte ptr 1
170#XXX?	movzx	eax, byte ptr [1]
171
172	mov	eax, 3:5
173