2.41 Release sources
[binutils-gdb.git] / gas / testsuite / gas / i386 / optimize-1.s
blob53a0dd7aec34155687d4067f1e95334f889b6a0b
1 # Check instructions with optimized encoding
3 .allow_index_reg
4 .text
5 _start:
6 vandnpd %zmm1, %zmm1, %zmm5{%k7}
7 vandnpd %ymm1, %ymm1, %ymm5 {%k7} {z}
8 vandnpd %zmm1, %zmm1, %zmm5
9 vandnpd %ymm1, %ymm1, %ymm5
11 vandnps %zmm1, %zmm1, %zmm5{%k7}
12 vandnps %ymm1, %ymm1, %ymm5{z}{%k7}
13 vandnps %zmm1, %zmm1, %zmm5
14 vandnps %ymm1, %ymm1, %ymm5
16 vpandn %ymm1, %ymm1, %ymm5
18 vpandnd %zmm1, %zmm1, %zmm5{%k7}
19 vpandnd %ymm1, %ymm1, %ymm5{z}{%k7}
20 vpandnd %zmm1, %zmm1, %zmm5
21 vpandnd %ymm1, %ymm1, %ymm5
23 vpandnq %zmm1, %zmm1, %zmm5{%k7}
24 vpandnq %ymm1, %ymm1, %ymm5{z}{%k7}
25 vpandnq %zmm1, %zmm1, %zmm5
26 vpandnq %ymm1, %ymm1, %ymm5
28 vxorpd %zmm1, %zmm1, %zmm5{%k7}
29 vxorpd %ymm1, %ymm1, %ymm5{z}{%k7}
30 vxorpd %zmm1, %zmm1, %zmm5
31 vxorpd %ymm1, %ymm1, %ymm5
33 vxorps %zmm1, %zmm1, %zmm5{%k7}
34 vxorps %ymm1, %ymm1, %ymm5{z}{%k7}
35 vxorps %zmm1, %zmm1, %zmm5
36 vxorps %ymm1, %ymm1, %ymm5
38 vpxor %ymm1, %ymm1, %ymm5
40 vpxord %zmm1, %zmm1, %zmm5{%k7}
41 vpxord %ymm1, %ymm1, %ymm5{z}{%k7}
42 vpxord %zmm1, %zmm1, %zmm5
43 vpxord %ymm1, %ymm1, %ymm5
45 vpxorq %zmm1, %zmm1, %zmm5{%k7}
46 vpxorq %ymm1, %ymm1, %ymm5{z}{%k7}
47 vpxorq %zmm1, %zmm1, %zmm5
48 vpxorq %ymm1, %ymm1, %ymm5
50 vpsubb %zmm1, %zmm1, %zmm5{%k7}
51 vpsubb %ymm1, %ymm1, %ymm5{z}{%k7}
52 vpsubb %zmm1, %zmm1, %zmm5
53 vpsubb %ymm1, %ymm1, %ymm5
55 vpsubw %zmm1, %zmm1, %zmm5{%k7}
56 vpsubw %ymm1, %ymm1, %ymm5{z}{%k7}
57 vpsubw %zmm1, %zmm1, %zmm5
58 vpsubw %ymm1, %ymm1, %ymm5
60 vpsubd %zmm1, %zmm1, %zmm5{%k7}
61 vpsubd %ymm1, %ymm1, %ymm5{z}{%k7}
62 vpsubd %zmm1, %zmm1, %zmm5
63 vpsubd %ymm1, %ymm1, %ymm5
65 vpsubq %zmm1, %zmm1, %zmm5{%k7}
66 vpsubq %ymm1, %ymm1, %ymm5{z}{%k7}
67 vpsubq %zmm1, %zmm1, %zmm5
68 vpsubq %ymm1, %ymm1, %ymm5
70 kxord %k1, %k1, %k5
71 kxorq %k1, %k1, %k5
73 kandnd %k1, %k1, %k5
74 kandnq %k1, %k1, %k5
76 vmovdqa32 %xmm1, %xmm2
77 vmovdqa64 %xmm1, %xmm2
78 vmovdqu8 %xmm1, %xmm2
79 vmovdqu16 %xmm1, %xmm2
80 vmovdqu32 %xmm1, %xmm2
81 vmovdqu64 %xmm1, %xmm2
83 vmovdqa32 127(%eax), %xmm2
84 vmovdqa64 127(%eax), %xmm2
85 vmovdqu8 127(%eax), %xmm2
86 vmovdqu16 127(%eax), %xmm2
87 vmovdqu32 127(%eax), %xmm2
88 vmovdqu64 127(%eax), %xmm2
90 vmovdqa32 %xmm1, 128(%eax)
91 vmovdqa64 %xmm1, 128(%eax)
92 vmovdqu8 %xmm1, 128(%eax)
93 vmovdqu16 %xmm1, 128(%eax)
94 vmovdqu32 %xmm1, 128(%eax)
95 vmovdqu64 %xmm1, 128(%eax)
97 vmovdqa32 %ymm1, %ymm2
98 vmovdqa64 %ymm1, %ymm2
99 vmovdqu8 %ymm1, %ymm2
100 vmovdqu16 %ymm1, %ymm2
101 vmovdqu32 %ymm1, %ymm2
102 vmovdqu64 %ymm1, %ymm2
104 vmovdqa32 127(%eax), %ymm2
105 vmovdqa64 127(%eax), %ymm2
106 vmovdqu8 127(%eax), %ymm2
107 vmovdqu16 127(%eax), %ymm2
108 vmovdqu32 127(%eax), %ymm2
109 vmovdqu64 127(%eax), %ymm2
111 vmovdqa32 %ymm1, 128(%eax)
112 vmovdqa64 %ymm1, 128(%eax)
113 vmovdqu8 %ymm1, 128(%eax)
114 vmovdqu16 %ymm1, 128(%eax)
115 vmovdqu32 %ymm1, 128(%eax)
116 vmovdqu64 %ymm1, 128(%eax)
118 vmovdqa32 (%eax), %zmm2
120 vpandd %xmm2, %xmm3, %xmm4
121 vpandq %xmm2, %xmm3, %xmm4
122 vpandnd %xmm2, %xmm3, %xmm4
123 vpandnq %xmm2, %xmm3, %xmm4
124 vpord %xmm2, %xmm3, %xmm4
125 vporq %xmm2, %xmm3, %xmm4
126 vpxord %xmm2, %xmm3, %xmm4
127 vpxorq %xmm2, %xmm3, %xmm4
129 vpandd %ymm2, %ymm3, %ymm4
130 vpandq %ymm2, %ymm3, %ymm4
131 vpandnd %ymm2, %ymm3, %ymm4
132 vpandnq %ymm2, %ymm3, %ymm4
133 vpord %ymm2, %ymm3, %ymm4
134 vporq %ymm2, %ymm3, %ymm4
135 vpxord %ymm2, %ymm3, %ymm4
136 vpxorq %ymm2, %ymm3, %ymm4
138 vpandd 112(%eax), %xmm2, %xmm3
139 vpandq 112(%eax), %xmm2, %xmm3
140 vpandnd 112(%eax), %xmm2, %xmm3
141 vpandnq 112(%eax), %xmm2, %xmm3
142 vpord 112(%eax), %xmm2, %xmm3
143 vporq 112(%eax), %xmm2, %xmm3
144 vpxord 112(%eax), %xmm2, %xmm3
145 vpxorq 112(%eax), %xmm2, %xmm3
147 vpandd 128(%eax), %xmm2, %xmm3
148 vpandq 128(%eax), %xmm2, %xmm3
149 vpandnd 128(%eax), %xmm2, %xmm3
150 vpandnq 128(%eax), %xmm2, %xmm3
151 vpord 128(%eax), %xmm2, %xmm3
152 vporq 128(%eax), %xmm2, %xmm3
153 vpxord 128(%eax), %xmm2, %xmm3
154 vpxorq 128(%eax), %xmm2, %xmm3
156 vpandd 96(%eax), %ymm2, %ymm3
157 vpandq 96(%eax), %ymm2, %ymm3
158 vpandnd 96(%eax), %ymm2, %ymm3
159 vpandnq 96(%eax), %ymm2, %ymm3
160 vpord 96(%eax), %ymm2, %ymm3
161 vporq 96(%eax), %ymm2, %ymm3
162 vpxord 96(%eax), %ymm2, %ymm3
163 vpxorq 96(%eax), %ymm2, %ymm3
165 vpandd 128(%eax), %ymm2, %ymm3
166 vpandq 128(%eax), %ymm2, %ymm3
167 vpandnd 128(%eax), %ymm2, %ymm3
168 vpandnq 128(%eax), %ymm2, %ymm3
169 vpord 128(%eax), %ymm2, %ymm3
170 vporq 128(%eax), %ymm2, %ymm3
171 vpxord 128(%eax), %ymm2, %ymm3
172 vpxorq 128(%eax), %ymm2, %ymm3
174 bt $15, %ax
175 bt $16, %ax
176 btc $15, %ax
177 btr $15, %ax
178 bts $15, %ax
180 .code16
181 bt $15, %eax
182 bt $16, %eax
183 btc $15, %eax
184 btr $15, %eax
185 bts $15, %eax