1; Instructions are ordered in SSE5 databook order
2; BITS=16 to minimize output length
3[bits 16]
4compd xmm1, xmm4, xmm7, 5		; 0F 25 2D 347 10 05
5compd xmm2, xmm5, [0], byte 5		; 0F 25 2D 056 20 00 00 05
6compd xmm3, xmm6, dqword [0], 5		; 0F 25 2D 066 30 00 00 05
7
8comps xmm1, xmm4, xmm7, 5		; 0F 25 2C 347 10 05
9comps xmm2, xmm5, [0], byte 5		; 0F 25 2C 056 20 00 00 05
10comps xmm3, xmm6, dqword [0], 5		; 0F 25 2C 066 30 00 00 05
11
12comsd xmm1, xmm4, xmm7, 5		; 0F 25 2F 347 10 05
13comsd xmm2, xmm5, [0], byte 5		; 0F 25 2F 056 20 00 00 05
14comsd xmm3, xmm6, qword [0], 5		; 0F 25 2F 066 30 00 00 05
15
16comss xmm1, xmm4, xmm7, 5		; 0F 25 2E 347 10 05
17comss xmm2, xmm5, [0], byte 5		; 0F 25 2E 056 20 00 00 05
18comss xmm3, xmm6, dword [0], 5		; 0F 25 2E 066 30 00 00 05
19
20cvtph2ps xmm1, xmm4			; 0F 7A 30 314
21cvtph2ps xmm2, [0]			; 0F 7A 30 026 00 00
22cvtph2ps xmm3, qword [0]		; 0F 7A 30 036 00 00
23
24cvtps2ph xmm1, xmm4			; 0F 7A 31 341
25cvtps2ph [0], xmm2			; 0F 7A 31 026 00 00
26cvtps2ph qword [0], xmm3		; 0F 7A 31 036 00 00
27
28fmaddpd xmm1, xmm1, xmm2, xmm3		; 0F 24 01 323 10 /or/ 0F 24 01 332 18
29fmaddpd xmm1, xmm1, xmm2, [0]		; 0F 24 01 026 10 00 00
30fmaddpd xmm1, xmm1, xmm2, dqword [0]	; 0F 24 01 026 10 00 00
31fmaddpd xmm1, xmm1, [0], xmm3		; 0F 24 01 036 18 00 00
32fmaddpd xmm1, xmm1, dqword [0], xmm3	; 0F 24 01 036 18 00 00
33fmaddpd xmm1, xmm2, xmm3, xmm1		; 0F 24 05 323 10 /or/ 0F 24 05 332 18
34fmaddpd xmm1, xmm2, [0], xmm1		; 0F 24 05 026 10 00 00
35fmaddpd xmm1, xmm2, dqword [0], xmm1	; 0F 24 05 026 10 00 00
36fmaddpd xmm1, [0], xmm3, xmm1		; 0F 24 05 036 18 00 00
37fmaddpd xmm1, dqword [0], xmm3, xmm1	; 0F 24 05 036 18 00 00
38
39fmaddps xmm1, xmm1, xmm2, xmm3		; 0F 24 00 323 10 /or/ 0F 24 00 332 18
40fmaddps xmm1, xmm1, xmm2, [0]		; 0F 24 00 026 10 00 00
41fmaddps xmm1, xmm1, xmm2, dqword [0]	; 0F 24 00 026 10 00 00
42fmaddps xmm1, xmm1, [0], xmm3		; 0F 24 00 036 18 00 00
43fmaddps xmm1, xmm1, dqword [0], xmm3	; 0F 24 00 036 18 00 00
44fmaddps xmm1, xmm2, xmm3, xmm1		; 0F 24 04 323 10 /or/ 0F 24 04 332 18
45fmaddps xmm1, xmm2, [0], xmm1		; 0F 24 04 026 10 00 00
46fmaddps xmm1, xmm2, dqword [0], xmm1	; 0F 24 04 026 10 00 00
47fmaddps xmm1, [0], xmm3, xmm1		; 0F 24 04 036 18 00 00
48fmaddps xmm1, dqword [0], xmm3, xmm1	; 0F 24 04 036 18 00 00
49
50fmaddsd xmm1, xmm1, xmm2, xmm3		; 0F 24 03 323 10 /or/ 0F 24 03 332 18
51fmaddsd xmm1, xmm1, xmm2, [0]		; 0F 24 03 026 10 00 00
52fmaddsd xmm1, xmm1, xmm2, qword [0]	; 0F 24 03 026 10 00 00
53fmaddsd xmm1, xmm1, [0], xmm3		; 0F 24 03 036 18 00 00
54fmaddsd xmm1, xmm1, qword [0], xmm3	; 0F 24 03 036 18 00 00
55fmaddsd xmm1, xmm2, xmm3, xmm1		; 0F 24 07 323 10 /or/ 0F 24 07 332 18
56fmaddsd xmm1, xmm2, [0], xmm1		; 0F 24 07 026 10 00 00
57fmaddsd xmm1, xmm2, qword [0], xmm1	; 0F 24 07 026 10 00 00
58fmaddsd xmm1, [0], xmm3, xmm1		; 0F 24 07 036 18 00 00
59fmaddsd xmm1, qword [0], xmm3, xmm1	; 0F 24 07 036 18 00 00
60
61fmaddss xmm1, xmm1, xmm2, xmm3		; 0F 24 02 323 10 /or/ 0F 24 02 332 18
62fmaddss xmm1, xmm1, xmm2, [0]		; 0F 24 02 026 10 00 00
63fmaddss xmm1, xmm1, xmm2, dword [0]	; 0F 24 02 026 10 00 00
64fmaddss xmm1, xmm1, [0], xmm3		; 0F 24 02 036 18 00 00
65fmaddss xmm1, xmm1, dword [0], xmm3	; 0F 24 02 036 18 00 00
66fmaddss xmm1, xmm2, xmm3, xmm1		; 0F 24 06 323 10 /or/ 0F 24 06 332 18
67fmaddss xmm1, xmm2, [0], xmm1		; 0F 24 06 026 10 00 00
68fmaddss xmm1, xmm2, dword [0], xmm1	; 0F 24 06 026 10 00 00
69fmaddss xmm1, [0], xmm3, xmm1		; 0F 24 06 036 18 00 00
70fmaddss xmm1, dword [0], xmm3, xmm1	; 0F 24 06 036 18 00 00
71
72fmsubpd xmm1, xmm1, xmm2, xmm3		; 0F 24 09 323 10 /or/ 0F 24 09 332 18
73fmsubpd xmm1, xmm1, xmm2, [0]		; 0F 24 09 026 10 00 00
74fmsubpd xmm1, xmm1, xmm2, dqword [0]	; 0F 24 09 026 10 00 00
75fmsubpd xmm1, xmm1, [0], xmm3		; 0F 24 09 036 18 00 00
76fmsubpd xmm1, xmm1, dqword [0], xmm3	; 0F 24 09 036 18 00 00
77fmsubpd xmm1, xmm2, xmm3, xmm1		; 0F 24 0D 323 10 /or/ 0F 24 0D 332 18
78fmsubpd xmm1, xmm2, [0], xmm1		; 0F 24 0D 026 10 00 00
79fmsubpd xmm1, xmm2, dqword [0], xmm1	; 0F 24 0D 026 10 00 00
80fmsubpd xmm1, [0], xmm3, xmm1		; 0F 24 0D 036 18 00 00
81fmsubpd xmm1, dqword [0], xmm3, xmm1	; 0F 24 0D 036 18 00 00
82
83fmsubps xmm1, xmm1, xmm2, xmm3		; 0F 24 08 323 10 /or/ 0F 24 08 332 18
84fmsubps xmm1, xmm1, xmm2, [0]		; 0F 24 08 026 10 00 00
85fmsubps xmm1, xmm1, xmm2, dqword [0]	; 0F 24 08 026 10 00 00
86fmsubps xmm1, xmm1, [0], xmm3		; 0F 24 08 036 18 00 00
87fmsubps xmm1, xmm1, dqword [0], xmm3	; 0F 24 08 036 18 00 00
88fmsubps xmm1, xmm2, xmm3, xmm1		; 0F 24 0C 323 10 /or/ 0F 24 0C 332 18
89fmsubps xmm1, xmm2, [0], xmm1		; 0F 24 0C 026 10 00 00
90fmsubps xmm1, xmm2, dqword [0], xmm1	; 0F 24 0C 026 10 00 00
91fmsubps xmm1, [0], xmm3, xmm1		; 0F 24 0C 036 18 00 00
92fmsubps xmm1, dqword [0], xmm3, xmm1	; 0F 24 0C 036 18 00 00
93
94fmsubsd xmm1, xmm1, xmm2, xmm3		; 0F 24 0B 323 10 /or/ 0F 24 0B 332 18
95fmsubsd xmm1, xmm1, xmm2, [0]		; 0F 24 0B 026 10 00 00
96fmsubsd xmm1, xmm1, xmm2, qword [0]	; 0F 24 0B 026 10 00 00
97fmsubsd xmm1, xmm1, [0], xmm3		; 0F 24 0B 036 18 00 00
98fmsubsd xmm1, xmm1, qword [0], xmm3	; 0F 24 0B 036 18 00 00
99fmsubsd xmm1, xmm2, xmm3, xmm1		; 0F 24 0F 323 10 /or/ 0F 24 0F 332 18
100fmsubsd xmm1, xmm2, [0], xmm1		; 0F 24 0F 026 10 00 00
101fmsubsd xmm1, xmm2, qword [0], xmm1	; 0F 24 0F 026 10 00 00
102fmsubsd xmm1, [0], xmm3, xmm1		; 0F 24 0F 036 18 00 00
103fmsubsd xmm1, qword [0], xmm3, xmm1	; 0F 24 0F 036 18 00 00
104
105fmsubss xmm1, xmm1, xmm2, xmm3		; 0F 24 0A 323 10 /or/ 0F 24 0A 332 18
106fmsubss xmm1, xmm1, xmm2, [0]		; 0F 24 0A 026 10 00 00
107fmsubss xmm1, xmm1, xmm2, dword [0]	; 0F 24 0A 026 10 00 00
108fmsubss xmm1, xmm1, [0], xmm3		; 0F 24 0A 036 18 00 00
109fmsubss xmm1, xmm1, dword [0], xmm3	; 0F 24 0A 036 18 00 00
110fmsubss xmm1, xmm2, xmm3, xmm1		; 0F 24 0E 323 10 /or/ 0F 24 0E 332 18
111fmsubss xmm1, xmm2, [0], xmm1		; 0F 24 0E 026 10 00 00
112fmsubss xmm1, xmm2, dword [0], xmm1	; 0F 24 0E 026 10 00 00
113fmsubss xmm1, [0], xmm3, xmm1		; 0F 24 0E 036 18 00 00
114fmsubss xmm1, dword [0], xmm3, xmm1	; 0F 24 0E 036 18 00 00
115
116fnmaddpd xmm1, xmm1, xmm2, xmm3		; 0F 24 11 323 10 /or/ 0F 24 11 332 18
117fnmaddpd xmm1, xmm1, xmm2, [0]		; 0F 24 11 026 10 00 00
118fnmaddpd xmm1, xmm1, xmm2, dqword [0]	; 0F 24 11 026 10 00 00
119fnmaddpd xmm1, xmm1, [0], xmm3		; 0F 24 11 036 18 00 00
120fnmaddpd xmm1, xmm1, dqword [0], xmm3	; 0F 24 11 036 18 00 00
121fnmaddpd xmm1, xmm2, xmm3, xmm1		; 0F 24 15 323 10 /or/ 0F 24 15 332 18
122fnmaddpd xmm1, xmm2, [0], xmm1		; 0F 24 15 026 10 00 00
123fnmaddpd xmm1, xmm2, dqword [0], xmm1	; 0F 24 15 026 10 00 00
124fnmaddpd xmm1, [0], xmm3, xmm1		; 0F 24 15 036 18 00 00
125fnmaddpd xmm1, dqword [0], xmm3, xmm1	; 0F 24 15 036 18 00 00
126
127fnmaddps xmm1, xmm1, xmm2, xmm3		; 0F 24 10 323 10 /or/ 0F 24 10 332 18
128fnmaddps xmm1, xmm1, xmm2, [0]		; 0F 24 10 026 10 00 00
129fnmaddps xmm1, xmm1, xmm2, dqword [0]	; 0F 24 10 026 10 00 00
130fnmaddps xmm1, xmm1, [0], xmm3		; 0F 24 10 036 18 00 00
131fnmaddps xmm1, xmm1, dqword [0], xmm3	; 0F 24 10 036 18 00 00
132fnmaddps xmm1, xmm2, xmm3, xmm1		; 0F 24 14 323 10 /or/ 0F 24 14 332 18
133fnmaddps xmm1, xmm2, [0], xmm1		; 0F 24 14 026 10 00 00
134fnmaddps xmm1, xmm2, dqword [0], xmm1	; 0F 24 14 026 10 00 00
135fnmaddps xmm1, [0], xmm3, xmm1		; 0F 24 14 036 18 00 00
136fnmaddps xmm1, dqword [0], xmm3, xmm1	; 0F 24 14 036 18 00 00
137
138fnmaddsd xmm1, xmm1, xmm2, xmm3		; 0F 24 13 323 10 /or/ 0F 24 13 332 18
139fnmaddsd xmm1, xmm1, xmm2, [0]		; 0F 24 13 026 10 00 00
140fnmaddsd xmm1, xmm1, xmm2, qword [0]	; 0F 24 13 026 10 00 00
141fnmaddsd xmm1, xmm1, [0], xmm3		; 0F 24 13 036 18 00 00
142fnmaddsd xmm1, xmm1, qword [0], xmm3	; 0F 24 13 036 18 00 00
143fnmaddsd xmm1, xmm2, xmm3, xmm1		; 0F 24 17 323 10 /or/ 0F 24 17 332 18
144fnmaddsd xmm1, xmm2, [0], xmm1		; 0F 24 17 026 10 00 00
145fnmaddsd xmm1, xmm2, qword [0], xmm1	; 0F 24 17 026 10 00 00
146fnmaddsd xmm1, [0], xmm3, xmm1		; 0F 24 17 036 18 00 00
147fnmaddsd xmm1, qword [0], xmm3, xmm1	; 0F 24 17 036 18 00 00
148
149fnmaddss xmm1, xmm1, xmm2, xmm3		; 0F 24 12 323 10 /or/ 0F 24 12 332 18
150fnmaddss xmm1, xmm1, xmm2, [0]		; 0F 24 12 026 10 00 00
151fnmaddss xmm1, xmm1, xmm2, dword [0]	; 0F 24 12 026 10 00 00
152fnmaddss xmm1, xmm1, [0], xmm3		; 0F 24 12 036 18 00 00
153fnmaddss xmm1, xmm1, dword [0], xmm3	; 0F 24 12 036 18 00 00
154fnmaddss xmm1, xmm2, xmm3, xmm1		; 0F 24 16 323 10 /or/ 0F 24 16 332 18
155fnmaddss xmm1, xmm2, [0], xmm1		; 0F 24 16 026 10 00 00
156fnmaddss xmm1, xmm2, dword [0], xmm1	; 0F 24 16 026 10 00 00
157fnmaddss xmm1, [0], xmm3, xmm1		; 0F 24 16 036 18 00 00
158fnmaddss xmm1, dword [0], xmm3, xmm1	; 0F 24 16 036 18 00 00
159
160fnmsubpd xmm1, xmm1, xmm2, xmm3		; 0F 24 19 323 10 /or/ 0F 24 19 332 18
161fnmsubpd xmm1, xmm1, xmm2, [0]		; 0F 24 19 026 10 00 00
162fnmsubpd xmm1, xmm1, xmm2, dqword [0]	; 0F 24 19 026 10 00 00
163fnmsubpd xmm1, xmm1, [0], xmm3		; 0F 24 19 036 18 00 00
164fnmsubpd xmm1, xmm1, dqword [0], xmm3	; 0F 24 19 036 18 00 00
165fnmsubpd xmm1, xmm2, xmm3, xmm1		; 0F 24 1D 323 10 /or/ 0F 24 1D 332 18
166fnmsubpd xmm1, xmm2, [0], xmm1		; 0F 24 1D 026 10 00 00
167fnmsubpd xmm1, xmm2, dqword [0], xmm1	; 0F 24 1D 026 10 00 00
168fnmsubpd xmm1, [0], xmm3, xmm1		; 0F 24 1D 036 18 00 00
169fnmsubpd xmm1, dqword [0], xmm3, xmm1	; 0F 24 1D 036 18 00 00
170
171fnmsubps xmm1, xmm1, xmm2, xmm3		; 0F 24 18 323 10 /or/ 0F 24 18 332 18
172fnmsubps xmm1, xmm1, xmm2, [0]		; 0F 24 18 026 10 00 00
173fnmsubps xmm1, xmm1, xmm2, dqword [0]	; 0F 24 18 026 10 00 00
174fnmsubps xmm1, xmm1, [0], xmm3		; 0F 24 18 036 18 00 00
175fnmsubps xmm1, xmm1, dqword [0], xmm3	; 0F 24 18 036 18 00 00
176fnmsubps xmm1, xmm2, xmm3, xmm1		; 0F 24 1C 323 10 /or/ 0F 24 1C 332 18
177fnmsubps xmm1, xmm2, [0], xmm1		; 0F 24 1C 026 10 00 00
178fnmsubps xmm1, xmm2, dqword [0], xmm1	; 0F 24 1C 026 10 00 00
179fnmsubps xmm1, [0], xmm3, xmm1		; 0F 24 1C 036 18 00 00
180fnmsubps xmm1, dqword [0], xmm3, xmm1	; 0F 24 1C 036 18 00 00
181
182fnmsubsd xmm1, xmm1, xmm2, xmm3		; 0F 24 1B 323 10 /or/ 0F 24 1B 332 18
183fnmsubsd xmm1, xmm1, xmm2, [0]		; 0F 24 1B 026 10 00 00
184fnmsubsd xmm1, xmm1, xmm2, qword [0]	; 0F 24 1B 026 10 00 00
185fnmsubsd xmm1, xmm1, [0], xmm3		; 0F 24 1B 036 18 00 00
186fnmsubsd xmm1, xmm1, qword [0], xmm3	; 0F 24 1B 036 18 00 00
187fnmsubsd xmm1, xmm2, xmm3, xmm1		; 0F 24 1F 323 10 /or/ 0F 24 1F 332 18
188fnmsubsd xmm1, xmm2, [0], xmm1		; 0F 24 1F 026 10 00 00
189fnmsubsd xmm1, xmm2, qword [0], xmm1	; 0F 24 1F 026 10 00 00
190fnmsubsd xmm1, [0], xmm3, xmm1		; 0F 24 1F 036 18 00 00
191fnmsubsd xmm1, qword [0], xmm3, xmm1	; 0F 24 1F 036 18 00 00
192
193fnmsubss xmm1, xmm1, xmm2, xmm3		; 0F 24 1A 323 10 /or/ 0F 24 1A 332 18
194fnmsubss xmm1, xmm1, xmm2, [0]		; 0F 24 1A 026 10 00 00
195fnmsubss xmm1, xmm1, xmm2, dword [0]	; 0F 24 1A 026 10 00 00
196fnmsubss xmm1, xmm1, [0], xmm3		; 0F 24 1A 036 18 00 00
197fnmsubss xmm1, xmm1, dword [0], xmm3	; 0F 24 1A 036 18 00 00
198fnmsubss xmm1, xmm2, xmm3, xmm1		; 0F 24 1E 323 10 /or/ 0F 24 1E 332 18
199fnmsubss xmm1, xmm2, [0], xmm1		; 0F 24 1E 026 10 00 00
200fnmsubss xmm1, xmm2, dword [0], xmm1	; 0F 24 1E 026 10 00 00
201fnmsubss xmm1, [0], xmm3, xmm1		; 0F 24 1E 036 18 00 00
202fnmsubss xmm1, dword [0], xmm3, xmm1	; 0F 24 1E 036 18 00 00
203
204frczpd xmm1, xmm2			; 0F 7A 11 312
205frczpd xmm1, [0]			; 0F 7A 11 016 00 00
206frczpd xmm1, dqword [0]			; 0F 7A 11 016 00 00
207
208frczps xmm1, xmm2			; 0F 7A 10 312
209frczps xmm1, [0]			; 0F 7A 10 016 00 00
210frczps xmm1, dqword [0]			; 0F 7A 10 016 00 00
211
212frczsd xmm1, xmm2			; 0F 7A 13 312
213frczsd xmm1, [0]			; 0F 7A 13 016 00 00
214frczsd xmm1, qword [0]			; 0F 7A 13 016 00 00
215
216frczss xmm1, xmm2			; 0F 7A 12 312
217frczss xmm1, [0]			; 0F 7A 12 016 00 00
218frczss xmm1, dword [0]			; 0F 7A 12 016 00 00
219
220pcmov xmm1, xmm1, xmm2, xmm3		; 0F 24 22 323 10 /or/ 0F 24 22 332 18
221pcmov xmm1, xmm1, xmm2, [0]		; 0F 24 22 026 10 00 00
222pcmov xmm1, xmm1, xmm2, dqword [0]	; 0F 24 22 026 10 00 00
223pcmov xmm1, xmm1, [0], xmm3		; 0F 24 22 036 18 00 00
224pcmov xmm1, xmm1, dqword [0], xmm3	; 0F 24 22 036 18 00 00
225pcmov xmm1, xmm2, xmm3, xmm1		; 0F 24 26 323 10 /or/ 0F 24 26 332 18
226pcmov xmm1, xmm2, [0], xmm1		; 0F 24 26 026 10 00 00
227pcmov xmm1, xmm2, dqword [0], xmm1	; 0F 24 26 026 10 00 00
228pcmov xmm1, [0], xmm3, xmm1		; 0F 24 26 036 18 00 00
229pcmov xmm1, dqword [0], xmm3, xmm1	; 0F 24 26 036 18 00 00
230
231pcomb xmm1, xmm4, xmm7, 5		; 0F 25 4C 347 10 05
232pcomb xmm2, xmm5, [0], byte 5		; 0F 25 4C 056 20 00 00 05
233pcomb xmm3, xmm6, dqword [0], 5		; 0F 25 4C 066 30 00 00 05
234
235pcomd xmm1, xmm4, xmm7, 5		; 0F 25 4E 347 10 05
236pcomd xmm2, xmm5, [0], byte 5		; 0F 25 4E 056 20 00 00 05
237pcomd xmm3, xmm6, dqword [0], 5		; 0F 25 4E 066 30 00 00 05
238
239pcomq xmm1, xmm4, xmm7, 5		; 0F 25 4F 347 10 05
240pcomq xmm2, xmm5, [0], byte 5		; 0F 25 4F 056 20 00 00 05
241pcomq xmm3, xmm6, dqword [0], 5		; 0F 25 4F 066 30 00 00 05
242
243pcomub xmm1, xmm4, xmm7, 5		; 0F 25 6C 347 10 05
244pcomub xmm2, xmm5, [0], byte 5		; 0F 25 6C 056 20 00 00 05
245pcomub xmm3, xmm6, dqword [0], 5	; 0F 25 6C 066 30 00 00 05
246
247pcomud xmm1, xmm4, xmm7, 5		; 0F 25 6E 347 10 05
248pcomud xmm2, xmm5, [0], byte 5		; 0F 25 6E 056 20 00 00 05
249pcomud xmm3, xmm6, dqword [0], 5	; 0F 25 6E 066 30 00 00 05
250
251pcomuq xmm1, xmm4, xmm7, 5		; 0F 25 6F 347 10 05
252pcomuq xmm2, xmm5, [0], byte 5		; 0F 25 6F 056 20 00 00 05
253pcomuq xmm3, xmm6, dqword [0], 5	; 0F 25 6F 066 30 00 00 05
254
255pcomuw xmm1, xmm4, xmm7, 5		; 0F 25 6D 347 10 05
256pcomuw xmm2, xmm5, [0], byte 5		; 0F 25 6D 056 20 00 00 05
257pcomuw xmm3, xmm6, dqword [0], 5	; 0F 25 6D 066 30 00 00 05
258
259pcomw xmm1, xmm4, xmm7, 5		; 0F 25 4D 347 10 05
260pcomw xmm2, xmm5, [0], byte 5		; 0F 25 4D 056 20 00 00 05
261pcomw xmm3, xmm6, dqword [0], 5		; 0F 25 4D 066 30 00 00 05
262
263permpd xmm1, xmm1, xmm2, xmm3		; 0F 24 21 323 10 /or/ 0F 24 21 332 18
264permpd xmm1, xmm1, xmm2, [0]		; 0F 24 21 026 10 00 00
265permpd xmm1, xmm1, xmm2, dqword [0]	; 0F 24 21 026 10 00 00
266permpd xmm1, xmm1, [0], xmm3		; 0F 24 21 036 18 00 00
267permpd xmm1, xmm1, dqword [0], xmm3	; 0F 24 21 036 18 00 00
268permpd xmm1, xmm2, xmm3, xmm1		; 0F 24 25 323 10 /or/ 0F 24 25 332 18
269permpd xmm1, xmm2, [0], xmm1		; 0F 24 25 026 10 00 00
270permpd xmm1, xmm2, dqword [0], xmm1	; 0F 24 25 026 10 00 00
271permpd xmm1, [0], xmm3, xmm1		; 0F 24 25 036 18 00 00
272permpd xmm1, dqword [0], xmm3, xmm1	; 0F 24 25 036 18 00 00
273
274permps xmm1, xmm1, xmm2, xmm3		; 0F 24 20 323 10 /or/ 0F 24 20 332 18
275permps xmm1, xmm1, xmm2, [0]		; 0F 24 20 026 10 00 00
276permps xmm1, xmm1, xmm2, dqword [0]	; 0F 24 20 026 10 00 00
277permps xmm1, xmm1, [0], xmm3		; 0F 24 20 036 18 00 00
278permps xmm1, xmm1, dqword [0], xmm3	; 0F 24 20 036 18 00 00
279permps xmm1, xmm2, xmm3, xmm1		; 0F 24 24 323 10 /or/ 0F 24 24 332 18
280permps xmm1, xmm2, [0], xmm1		; 0F 24 24 026 10 00 00
281permps xmm1, xmm2, dqword [0], xmm1	; 0F 24 24 026 10 00 00
282permps xmm1, [0], xmm3, xmm1		; 0F 24 24 036 18 00 00
283permps xmm1, dqword [0], xmm3, xmm1	; 0F 24 24 036 18 00 00
284
285phaddbd xmm1, xmm2			; 0F 7A 42 312
286phaddbd xmm1, [0]			; 0F 7A 42 016 00 00
287phaddbd xmm1, dqword [0]		; 0F 7A 42 016 00 00
288
289phaddbq xmm1, xmm2			; 0F 7A 43 312
290phaddbq xmm1, [0]			; 0F 7A 43 016 00 00
291phaddbq xmm1, dqword [0]		; 0F 7A 43 016 00 00
292
293phaddbw xmm1, xmm2			; 0F 7A 41 312
294phaddbw xmm1, [0]			; 0F 7A 41 016 00 00
295phaddbw xmm1, dqword [0]		; 0F 7A 41 016 00 00
296
297phadddq xmm1, xmm2			; 0F 7A 4B 312
298phadddq xmm1, [0]			; 0F 7A 4B 016 00 00
299phadddq xmm1, dqword [0]		; 0F 7A 4B 016 00 00
300
301phaddubd xmm1, xmm2			; 0F 7A 52 312
302phaddubd xmm1, [0]			; 0F 7A 52 016 00 00
303phaddubd xmm1, dqword [0]		; 0F 7A 52 016 00 00
304
305phaddubq xmm1, xmm2			; 0F 7A 53 312
306phaddubq xmm1, [0]			; 0F 7A 53 016 00 00
307phaddubq xmm1, dqword [0]		; 0F 7A 53 016 00 00
308
309phaddubw xmm1, xmm2			; 0F 7A 51 312
310phaddubw xmm1, [0]			; 0F 7A 51 016 00 00
311phaddubw xmm1, dqword [0]		; 0F 7A 51 016 00 00
312
313phaddudq xmm1, xmm2			; 0F 7A 5B 312
314phaddudq xmm1, [0]			; 0F 7A 5B 016 00 00
315phaddudq xmm1, dqword [0]		; 0F 7A 5B 016 00 00
316
317phadduwd xmm1, xmm2			; 0F 7A 56 312
318phadduwd xmm1, [0]			; 0F 7A 56 016 00 00
319phadduwd xmm1, dqword [0]		; 0F 7A 56 016 00 00
320
321phadduwq xmm1, xmm2			; 0F 7A 57 312
322phadduwq xmm1, [0]			; 0F 7A 57 016 00 00
323phadduwq xmm1, dqword [0]		; 0F 7A 57 016 00 00
324
325phaddwd xmm1, xmm2			; 0F 7A 46 312
326phaddwd xmm1, [0]			; 0F 7A 46 016 00 00
327phaddwd xmm1, dqword [0]		; 0F 7A 46 016 00 00
328
329phaddwq xmm1, xmm2			; 0F 7A 47 312
330phaddwq xmm1, [0]			; 0F 7A 47 016 00 00
331phaddwq xmm1, dqword [0]		; 0F 7A 47 016 00 00
332
333phsubbw xmm1, xmm2			; 0F 7A 61 312
334phsubbw xmm1, [0]			; 0F 7A 61 016 00 00
335phsubbw xmm1, dqword [0]		; 0F 7A 61 016 00 00
336
337phsubdq xmm1, xmm2			; 0F 7A 63 312
338phsubdq xmm1, [0]			; 0F 7A 63 016 00 00
339phsubdq xmm1, dqword [0]		; 0F 7A 63 016 00 00
340
341phsubwd xmm1, xmm2			; 0F 7A 62 312
342phsubwd xmm1, [0]			; 0F 7A 62 016 00 00
343phsubwd xmm1, dqword [0]		; 0F 7A 62 016 00 00
344
345pmacsdd xmm1, xmm4, xmm7, xmm1		; 0F 24 9E 347 10
346pmacsdd xmm2, xmm5, [0], xmm2		; 0F 24 9E 056 20 00 00
347pmacsdd xmm3, xmm6, dqword [0], xmm3	; 0F 24 9E 066 30 00 00
348
349pmacsdqh xmm1, xmm4, xmm7, xmm1		; 0F 24 9F 347 10
350pmacsdqh xmm2, xmm5, [0], xmm2		; 0F 24 9F 056 20 00 00
351pmacsdqh xmm3, xmm6, dqword [0], xmm3	; 0F 24 9F 066 30 00 00
352
353pmacsdql xmm1, xmm4, xmm7, xmm1		; 0F 24 97 347 10
354pmacsdql xmm2, xmm5, [0], xmm2		; 0F 24 97 056 20 00 00
355pmacsdql xmm3, xmm6, dqword [0], xmm3	; 0F 24 97 066 30 00 00
356
357pmacssdd xmm1, xmm4, xmm7, xmm1		; 0F 24 8E 347 10
358pmacssdd xmm2, xmm5, [0], xmm2		; 0F 24 8E 056 20 00 00
359pmacssdd xmm3, xmm6, dqword [0], xmm3	; 0F 24 8E 066 30 00 00
360
361pmacssdqh xmm1, xmm4, xmm7, xmm1	; 0F 24 8F 347 10
362pmacssdqh xmm2, xmm5, [0], xmm2		; 0F 24 8F 056 20 00 00
363pmacssdqh xmm3, xmm6, dqword [0], xmm3	; 0F 24 8F 066 30 00 00
364
365pmacssdql xmm1, xmm4, xmm7, xmm1	; 0F 24 87 347 10
366pmacssdql xmm2, xmm5, [0], xmm2		; 0F 24 87 056 20 00 00
367pmacssdql xmm3, xmm6, dqword [0], xmm3	; 0F 24 87 066 30 00 00
368
369pmacsswd xmm1, xmm4, xmm7, xmm1		; 0F 24 86 347 10
370pmacsswd xmm2, xmm5, [0], xmm2		; 0F 24 86 056 20 00 00
371pmacsswd xmm3, xmm6, dqword [0], xmm3	; 0F 24 86 066 30 00 00
372
373pmacssww xmm1, xmm4, xmm7, xmm1		; 0F 24 85 347 10
374pmacssww xmm2, xmm5, [0], xmm2		; 0F 24 85 056 20 00 00
375pmacssww xmm3, xmm6, dqword [0], xmm3	; 0F 24 85 066 30 00 00
376
377pmacswd xmm1, xmm4, xmm7, xmm1		; 0F 24 96 347 10
378pmacswd xmm2, xmm5, [0], xmm2		; 0F 24 96 056 20 00 00
379pmacswd xmm3, xmm6, dqword [0], xmm3	; 0F 24 96 066 30 00 00
380
381pmacsww xmm1, xmm4, xmm7, xmm1		; 0F 24 95 347 10
382pmacsww xmm2, xmm5, [0], xmm2		; 0F 24 95 056 20 00 00
383pmacsww xmm3, xmm6, dqword [0], xmm3	; 0F 24 95 066 30 00 00
384
385pmadcsswd xmm1, xmm4, xmm7, xmm1	; 0F 24 A6 347 10
386pmadcsswd xmm2, xmm5, [0], xmm2		; 0F 24 A6 056 20 00 00
387pmadcsswd xmm3, xmm6, dqword [0], xmm3	; 0F 24 A6 066 30 00 00
388
389pmadcswd xmm1, xmm4, xmm7, xmm1		; 0F 24 B6 347 10
390pmadcswd xmm2, xmm5, [0], xmm2		; 0F 24 B6 056 20 00 00
391pmadcswd xmm3, xmm6, dqword [0], xmm3	; 0F 24 B6 066 30 00 00
392
393pperm xmm1, xmm1, xmm2, xmm3		; 0F 24 23 323 10 /or/ 0F 24 23 332 18
394pperm xmm1, xmm1, xmm2, [0]		; 0F 24 23 026 10 00 00
395pperm xmm1, xmm1, xmm2, dqword [0]	; 0F 24 23 026 10 00 00
396pperm xmm1, xmm1, [0], xmm3		; 0F 24 23 036 18 00 00
397pperm xmm1, xmm1, dqword [0], xmm3	; 0F 24 23 036 18 00 00
398pperm xmm1, xmm2, xmm3, xmm1		; 0F 24 27 323 10 /or/ 0F 24 27 332 18
399pperm xmm1, xmm2, [0], xmm1		; 0F 24 27 026 10 00 00
400pperm xmm1, xmm2, dqword [0], xmm1	; 0F 24 27 026 10 00 00
401pperm xmm1, [0], xmm3, xmm1		; 0F 24 27 036 18 00 00
402pperm xmm1, dqword [0], xmm3, xmm1	; 0F 24 27 036 18 00 00
403
404protb xmm1, xmm2, xmm3			; 0F 24 40 323 10 /or/ 0F 24 40 332 18
405protb xmm1, xmm2, [0]			; 0F 24 40 026 10 00 00
406protb xmm1, xmm2, dqword [0]		; 0F 24 40 026 10 00 00
407protb xmm1, [0], xmm3			; 0F 24 40 036 18 00 00
408protb xmm1, dqword [0], xmm3		; 0F 24 40 036 18 00 00
409protb xmm1, xmm2, byte 5		; 0F 7B 40 312 05
410protb xmm1, [0], byte 5			; 0F 7B 40 016 00 00 05
411protb xmm1, dqword [0], 5		; 0F 7B 40 016 00 00 05
412
413protd xmm1, xmm2, xmm3			; 0F 24 42 323 10 /or/ 0F 24 42 332 18
414protd xmm1, xmm2, [0]			; 0F 24 42 026 10 00 00
415protd xmm1, xmm2, dqword [0]		; 0F 24 42 026 10 00 00
416protd xmm1, [0], xmm3			; 0F 24 42 036 18 00 00
417protd xmm1, dqword [0], xmm3		; 0F 24 42 036 18 00 00
418protd xmm1, xmm2, byte 5		; 0F 7B 42 312 05
419protd xmm1, [0], byte 5			; 0F 7B 42 016 00 00 05
420protd xmm1, dqword [0], 5		; 0F 7B 42 016 00 00 05
421
422protq xmm1, xmm2, xmm3			; 0F 24 43 323 10 /or/ 0F 24 43 332 18
423protq xmm1, xmm2, [0]			; 0F 24 43 026 10 00 00
424protq xmm1, xmm2, dqword [0]		; 0F 24 43 026 10 00 00
425protq xmm1, [0], xmm3			; 0F 24 43 036 18 00 00
426protq xmm1, dqword [0], xmm3		; 0F 24 43 036 18 00 00
427protq xmm1, xmm2, byte 5		; 0F 7B 43 312 05
428protq xmm1, [0], byte 5			; 0F 7B 43 016 00 00 05
429protq xmm1, dqword [0], 5		; 0F 7B 43 016 00 00 05
430
431protw xmm1, xmm2, xmm3			; 0F 24 41 323 10 /or/ 0F 24 41 332 18
432protw xmm1, xmm2, [0]			; 0F 24 41 026 10 00 00
433protw xmm1, xmm2, dqword [0]		; 0F 24 41 026 10 00 00
434protw xmm1, [0], xmm3			; 0F 24 41 036 18 00 00
435protw xmm1, dqword [0], xmm3		; 0F 24 41 036 18 00 00
436protw xmm1, xmm2, byte 5		; 0F 7B 41 312 05
437protw xmm1, [0], byte 5			; 0F 7B 41 016 00 00 05
438protw xmm1, dqword [0], 5		; 0F 7B 41 016 00 00 05
439
440pshab xmm1, xmm2, xmm3			; 0F 24 48 323 10 /or/ 0F 24 48 332 18
441pshab xmm1, xmm2, [0]			; 0F 24 48 026 10 00 00
442pshab xmm1, xmm2, dqword [0]		; 0F 24 48 026 10 00 00
443pshab xmm1, [0], xmm3			; 0F 24 48 036 18 00 00
444pshab xmm1, dqword [0], xmm3		; 0F 24 48 036 18 00 00
445
446pshad xmm1, xmm2, xmm3			; 0F 24 4A 323 10 /or/ 0F 24 4A 332 18
447pshad xmm1, xmm2, [0]			; 0F 24 4A 026 10 00 00
448pshad xmm1, xmm2, dqword [0]		; 0F 24 4A 026 10 00 00
449pshad xmm1, [0], xmm3			; 0F 24 4A 036 18 00 00
450pshad xmm1, dqword [0], xmm3		; 0F 24 4A 036 18 00 00
451
452pshaq xmm1, xmm2, xmm3			; 0F 24 4B 323 10 /or/ 0F 24 4B 332 18
453pshaq xmm1, xmm2, [0]			; 0F 24 4B 026 10 00 00
454pshaq xmm1, xmm2, dqword [0]		; 0F 24 4B 026 10 00 00
455pshaq xmm1, [0], xmm3			; 0F 24 4B 036 18 00 00
456pshaq xmm1, dqword [0], xmm3		; 0F 24 4B 036 18 00 00
457
458pshaw xmm1, xmm2, xmm3			; 0F 24 49 323 10 /or/ 0F 24 49 332 18
459pshaw xmm1, xmm2, [0]			; 0F 24 49 026 10 00 00
460pshaw xmm1, xmm2, dqword [0]		; 0F 24 49 026 10 00 00
461pshaw xmm1, [0], xmm3			; 0F 24 49 036 18 00 00
462pshaw xmm1, dqword [0], xmm3		; 0F 24 49 036 18 00 00
463
464pshlb xmm1, xmm2, xmm3			; 0F 24 44 323 10 /or/ 0F 24 44 332 18
465pshlb xmm1, xmm2, [0]			; 0F 24 44 026 10 00 00
466pshlb xmm1, xmm2, dqword [0]		; 0F 24 44 026 10 00 00
467pshlb xmm1, [0], xmm3			; 0F 24 44 036 18 00 00
468pshlb xmm1, dqword [0], xmm3		; 0F 24 44 036 18 00 00
469
470pshld xmm1, xmm2, xmm3			; 0F 24 46 323 10 /or/ 0F 24 46 332 18
471pshld xmm1, xmm2, [0]			; 0F 24 46 026 10 00 00
472pshld xmm1, xmm2, dqword [0]		; 0F 24 46 026 10 00 00
473pshld xmm1, [0], xmm3			; 0F 24 46 036 18 00 00
474pshld xmm1, dqword [0], xmm3		; 0F 24 46 036 18 00 00
475
476pshlq xmm1, xmm2, xmm3			; 0F 24 47 323 10 /or/ 0F 24 47 332 18
477pshlq xmm1, xmm2, [0]			; 0F 24 47 026 10 00 00
478pshlq xmm1, xmm2, dqword [0]		; 0F 24 47 026 10 00 00
479pshlq xmm1, [0], xmm3			; 0F 24 47 036 18 00 00
480pshlq xmm1, dqword [0], xmm3		; 0F 24 47 036 18 00 00
481
482pshlw xmm1, xmm2, xmm3			; 0F 24 45 323 10 /or/ 0F 24 45 332 18
483pshlw xmm1, xmm2, [0]			; 0F 24 45 026 10 00 00
484pshlw xmm1, xmm2, dqword [0]		; 0F 24 45 026 10 00 00
485pshlw xmm1, [0], xmm3			; 0F 24 45 036 18 00 00
486pshlw xmm1, dqword [0], xmm3		; 0F 24 45 036 18 00 00
487
488; SSE5 instructions that are also SSE4.1 instructions
489
490ptest xmm1, xmm2			; 66 0F 38 17 312
491ptest xmm1, [0]				; 66 0F 38 17 016 00 00
492ptest xmm1, dqword [0]			; 66 0F 38 17 016 00 00
493
494roundpd xmm1, xmm2, 5			; 66 0F 3A 09 312 05
495roundpd xmm1, [0], byte 5		; 66 0F 3A 09 016 00 00 05
496roundpd xmm1, dqword [0], 5		; 66 0F 3A 09 016 00 00 05
497
498roundps xmm1, xmm2, 5			; 66 0F 3A 08 312 05
499roundps xmm1, [0], byte 5		; 66 0F 3A 08 016 00 00 05
500roundps xmm1, dqword [0], 5		; 66 0F 3A 08 016 00 00 05
501
502roundsd xmm1, xmm2, 5			; 66 0F 3A 0B 312 05
503roundsd xmm1, [0], byte 5		; 66 0F 3A 0B 016 00 00 05
504roundsd xmm1, qword [0], 5		; 66 0F 3A 0B 016 00 00 05
505
506roundss xmm1, xmm2, 5			; 66 0F 3A 0A 312 05
507roundss xmm1, [0], byte 5		; 66 0F 3A 0A 016 00 00 05
508roundss xmm1, dword [0], 5		; 66 0F 3A 0A 016 00 00 05
509
510