Commit | Line | Data |
---|---|---|
6f2750fe | 1 | # Copyright (C) 2012-2016 Free Software Foundation, Inc. |
5bf135a7 NC |
2 | |
3 | # This program is free software; you can redistribute it and/or modify | |
4 | # it under the terms of the GNU General Public License as published by | |
5 | # the Free Software Foundation; either version 3 of the License, or | |
6 | # (at your option) any later version. | |
7 | # | |
8 | # This program is distributed in the hope that it will be useful, | |
9 | # but WITHOUT ANY WARRANTY; without even the implied warranty of | |
10 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
11 | # GNU General Public License for more details. | |
12 | # | |
13 | # You should have received a copy of the GNU General Public License | |
14 | # along with this program; if not, write to the Free Software | |
15 | # Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. | |
16 | ||
252b5132 RH |
17 | # |
18 | # i386 tests | |
19 | # | |
b96d3a20 JH |
20 | proc gas_64_check { } { |
21 | global NM | |
22 | global NMFLAGS | |
252b5132 | 23 | |
7f6a71ff JM |
24 | set status [gas_host_run "$NM $NMFLAGS --help" ""] |
25 | return [regexp "targets:.*x86-64" [lindex $status 1]]; | |
b96d3a20 | 26 | } |
6e0b89ee | 27 | |
b96d3a20 JH |
28 | proc gas_32_check { } { |
29 | global NM | |
30 | global NMFLAGS | |
b96d3a20 | 31 | |
7f6a71ff JM |
32 | set status [gas_host_run "$NM $NMFLAGS --help" ""] |
33 | return [regexp "targets:.*i386" [lindex $status 1]]; | |
b96d3a20 JH |
34 | } |
35 | ||
b96d3a20 JH |
36 | if [expr ([istarget "i*86-*-*"] || [istarget "x86_64-*-*"]) && [gas_32_check]] then { |
37 | ||
38 | global ASFLAGS | |
39 | set old_ASFLAGS "$ASFLAGS" | |
40 | set ASFLAGS "$ASFLAGS --32" | |
252b5132 | 41 | |
1efbbeb4 L |
42 | run_list_test "float" "-al -mmnemonic=att" |
43 | run_list_test "general" "-al --listing-lhs-width=2 -mold-gcc" | |
252b5132 | 44 | run_list_test "inval" "-al" |
9e5e5283 | 45 | run_list_test "inval-16" "-al" |
4cc91dba L |
46 | run_list_test "segment" "-al" |
47 | run_list_test "inval-seg" "-al" | |
56ffb741 | 48 | run_list_test "inval-reg" "-al" |
252b5132 | 49 | run_list_test "modrm" "-al --listing-lhs-width=2" |
3f9ed93b | 50 | run_dump_test "naked" |
252b5132 | 51 | run_dump_test "opcode" |
8a82f7e3 JB |
52 | run_dump_test "opcode-intel" |
53 | run_dump_test "opcode-suffix" | |
cc5ca5ce | 54 | run_dump_test "intel" |
be66c492 | 55 | run_dump_test "intel16" |
9306ca4a JB |
56 | run_list_test "intelbad" "" |
57 | run_dump_test "intelok" | |
252b5132 RH |
58 | run_dump_test "prefix" |
59 | run_dump_test "amd" | |
c608c12e | 60 | run_dump_test "katmai" |
a3d1c52b | 61 | run_dump_test "jump" |
7898a2b1 L |
62 | run_dump_test "relax-1" |
63 | run_dump_test "relax-2" | |
de9d65b5 JH |
64 | run_dump_test "ssemmx2" |
65 | run_dump_test "sse2" | |
4dd8d67b | 66 | run_dump_test "sub" |
bc2ae10b | 67 | run_dump_test "sse3" |
2033b4b9 | 68 | run_dump_test "sib" |
db51cc60 | 69 | run_dump_test "sib-intel" |
0e1147d9 | 70 | run_dump_test "disp" |
6cee4cda | 71 | run_dump_test "disp-intel" |
f8a5c266 | 72 | run_dump_test "disp32" |
90700ea2 | 73 | run_dump_test "vmx" |
8729a6f6 | 74 | run_dump_test "vmfunc" |
47dd174c | 75 | run_dump_test "smx" |
22cbf2e7 | 76 | run_dump_test "suffix" |
4b4c407a | 77 | run_dump_test "suffix-intel" |
9cd96992 | 78 | run_dump_test "immed32" |
4d1bb795 | 79 | run_dump_test "equ" |
5157cd8a | 80 | run_dump_test "divide" |
26f07657 | 81 | run_dump_test "padlock" |
c4a530c5 JB |
82 | run_dump_test "crx" |
83 | run_list_test "cr-err" "" | |
68f34464 | 84 | run_dump_test "cdr" |
30123838 | 85 | run_dump_test "svme" |
050dfa73 | 86 | run_dump_test "amdfam10" |
bc2ae10b | 87 | run_dump_test "ssse3" |
35c52694 L |
88 | run_dump_test "rep" |
89 | run_dump_test "rep-suffix" | |
d5de92cf | 90 | run_list_test "inval-rep" "-al" |
c32fa91d L |
91 | run_dump_test "lock-1" |
92 | run_dump_test "lock-1-intel" | |
93 | run_list_test "lockbad-1" "-al" | |
f16cd0d5 L |
94 | run_dump_test "long-1" |
95 | run_dump_test "long-1-intel" | |
5645cf1e | 96 | run_dump_test "fp" |
15965411 | 97 | run_dump_test "nops" |
76bc74dc | 98 | run_dump_test "nops16-1" |
ccc9c027 L |
99 | run_dump_test "nops-1" |
100 | run_dump_test "nops-1-i386" | |
76bc74dc | 101 | run_dump_test "nops-1-i386-i686" |
ccc9c027 | 102 | run_dump_test "nops-1-i686" |
76bc74dc | 103 | run_dump_test "nops-1-k8" |
bc2ae10b | 104 | run_dump_test "nops-1-core2" |
ccc9c027 L |
105 | run_dump_test "nops-2" |
106 | run_dump_test "nops-2-i386" | |
bc2ae10b | 107 | run_dump_test "nops-2-core2" |
c0f91ba6 | 108 | run_dump_test "nops-3" |
76bc74dc L |
109 | run_dump_test "nops-3-i386" |
110 | run_dump_test "nops-3-i686" | |
111 | run_dump_test "nops-4" | |
112 | run_dump_test "nops-4-i386" | |
113 | run_dump_test "nops-4-i686" | |
a586129e | 114 | run_dump_test "nops-4a-i686" |
fbf3f584 L |
115 | run_dump_test "nops-5" |
116 | run_dump_test "nops-5-i686" | |
a586129e | 117 | run_dump_test "nops-6" |
539e75ad L |
118 | run_dump_test "addr16" |
119 | run_dump_test "addr32" | |
42903f7f | 120 | run_dump_test "sse4_1" |
c3ad16c0 | 121 | run_dump_test "sse4_1-intel" |
381d071f | 122 | run_dump_test "sse4_2" |
c3ad16c0 | 123 | run_dump_test "sse4_2-intel" |
9344ff29 L |
124 | run_dump_test "crc32" |
125 | run_dump_test "crc32-intel" | |
20592a94 | 126 | run_list_test "inval-crc32" "-al" |
09a2c6cf L |
127 | run_dump_test "simd" |
128 | run_dump_test "simd-intel" | |
8a72226a | 129 | run_dump_test "simd-suffix" |
d9a5e5e5 L |
130 | run_dump_test "mem" |
131 | run_dump_test "mem-intel" | |
b844680a L |
132 | run_dump_test "reg" |
133 | run_dump_test "reg-intel" | |
ca61edf2 | 134 | run_dump_test "i386" |
a8484f96 | 135 | run_dump_test "i386-intel" |
9d141669 L |
136 | run_dump_test "compat" |
137 | run_dump_test "compat-intel" | |
8d79a8c8 L |
138 | run_dump_test "arch-1" |
139 | run_dump_test "arch-2" | |
140 | run_dump_test "arch-3" | |
b414985b | 141 | run_dump_test "arch-4" |
e0329a22 L |
142 | run_dump_test "arch-5" |
143 | run_dump_test "arch-6" | |
144 | run_dump_test "arch-7" | |
3629bb00 | 145 | run_dump_test "arch-9" |
6305a203 | 146 | run_dump_test "arch-10" |
6c30d220 | 147 | run_dump_test "arch-10-lzcnt" |
e2e1fcde | 148 | run_dump_test "arch-10-prefetchw" |
160a30bb | 149 | run_dump_test "arch-10-bdver1" |
5c5acbbd | 150 | run_dump_test "arch-10-bdver2" |
5e5c50d3 | 151 | run_dump_test "arch-10-bdver3" |
c7b0bd56 | 152 | run_dump_test "arch-10-bdver4" |
029f3522 | 153 | run_dump_test "arch-13-znver1" |
7b458c12 L |
154 | run_dump_test "arch-10-btver1" |
155 | run_dump_test "arch-10-btver2" | |
6305a203 L |
156 | run_list_test "arch-10-1" "-march=generic32 -I${srcdir}/$subdir -al" |
157 | run_list_test "arch-10-2" "-march=i686 -I${srcdir}/$subdir -al" | |
158 | run_list_test "arch-10-3" "-march=i686+sse4.2 -I${srcdir}/$subdir -al" | |
159 | run_list_test "arch-10-4" "-march=i686+sse4+vmx+smx -I${srcdir}/$subdir -al" | |
115c7c25 L |
160 | run_dump_test "arch-11" |
161 | run_dump_test "arch-12" | |
029f3522 | 162 | run_dump_test "arch-13" |
309d3373 JB |
163 | run_dump_test "8087" |
164 | run_dump_test "287" | |
165 | run_dump_test "387" | |
166 | run_list_test "no87" "-al" | |
167 | run_list_test "no87-2" "-march=i686+no87 -al" | |
475a2301 L |
168 | run_dump_test "xsave" |
169 | run_dump_test "xsave-intel" | |
c0f3af97 L |
170 | run_dump_test "aes" |
171 | run_dump_test "aes-intel" | |
172 | run_dump_test "clmul" | |
173 | run_dump_test "clmul-intel" | |
174 | run_dump_test "avx" | |
175 | run_dump_test "avx-intel" | |
539f890d L |
176 | run_dump_test "avx-scalar" |
177 | run_dump_test "avx-scalar-intel" | |
6c30d220 L |
178 | run_dump_test "avx256int" |
179 | run_dump_test "avx256int-intel" | |
180 | run_dump_test "avx2" | |
181 | run_dump_test "avx2-intel" | |
182 | run_dump_test "avx-gather" | |
183 | run_dump_test "avx-gather-intel" | |
43234a1e L |
184 | run_dump_test "avx512f" |
185 | run_dump_test "avx512f-intel" | |
186 | run_dump_test "avx512f-opts" | |
187 | run_dump_test "avx512f-opts-intel" | |
188 | run_dump_test "avx512f-nondef" | |
189 | run_dump_test "avx512cd" | |
190 | run_dump_test "avx512cd-intel" | |
191 | run_dump_test "avx512er" | |
192 | run_dump_test "avx512er-intel" | |
193 | run_dump_test "avx512pf" | |
194 | run_dump_test "avx512pf-intel" | |
195 | run_dump_test "evex-lig256" | |
196 | run_dump_test "evex-lig512" | |
197 | run_dump_test "evex-lig256-intel" | |
198 | run_dump_test "evex-lig512-intel" | |
199 | run_dump_test "evex-wig1" | |
200 | run_dump_test "evex-wig1-intel" | |
c0f3af97 L |
201 | run_dump_test "sse2avx" |
202 | run_list_test "inval-avx" "-al" | |
43234a1e | 203 | run_list_test "inval-avx512f" "-al" |
daf50ae7 | 204 | run_dump_test "sse-check" |
cb19c032 | 205 | run_dump_test "sse-check-none" |
daf50ae7 L |
206 | run_dump_test "sse-check-warn" |
207 | run_list_test "sse-check-error" "-msse-check=error -I${srcdir}/$subdir -al" | |
7bab8ab5 JB |
208 | run_dump_test "vgather-check" |
209 | run_dump_test "vgather-check-none" | |
210 | run_dump_test "vgather-check-warn" | |
211 | run_list_test "vgather-check-error" "-moperand-check=error -I${srcdir}/$subdir" | |
9ba52a26 | 212 | run_dump_test "sse-noavx" |
f1f8f695 L |
213 | run_dump_test "movbe" |
214 | run_dump_test "movbe-intel" | |
215 | run_list_test "inval-movbe" "-al" | |
216 | run_dump_test "ept" | |
217 | run_dump_test "ept-intel" | |
218 | run_list_test "inval-ept" "-al" | |
6c30d220 L |
219 | run_dump_test "invpcid" |
220 | run_dump_test "invpcid-intel" | |
221 | run_list_test "inval-invpcid" "-al" | |
a5ff0eb2 L |
222 | run_dump_test "arch-avx-1" |
223 | run_list_test "arch-avx-1-1" "-march=generic32+avx -I${srcdir}/$subdir -al" | |
224 | run_list_test "arch-avx-1-2" "-march=generic32+aes -I${srcdir}/$subdir -al" | |
ce2f5b3c L |
225 | run_list_test "arch-avx-1-3" "-march=generic32+pclmul -I${srcdir}/$subdir -al" |
226 | run_list_test "arch-avx-1-4" "-march=generic32+avx+aes -I${srcdir}/$subdir -al" | |
227 | run_list_test "arch-avx-1-5" "-march=generic32+avx+pclmul -I${srcdir}/$subdir -al" | |
228 | run_list_test "arch-avx-1-6" "-march=generic32+aes+pclmul -I${srcdir}/$subdir -al" | |
b6169b20 L |
229 | run_dump_test "opts" |
230 | run_dump_test "opts-intel" | |
231 | run_dump_test "sse2avx-opts" | |
232 | run_dump_test "sse2avx-opts-intel" | |
6c30d220 L |
233 | run_dump_test "bmi2" |
234 | run_dump_test "bmi2-intel" | |
0bfee649 L |
235 | run_dump_test "fma" |
236 | run_dump_test "fma-intel" | |
1c480963 L |
237 | run_dump_test "fma-scalar" |
238 | run_dump_test "fma-scalar-intel" | |
42164a71 L |
239 | run_dump_test "hle" |
240 | run_dump_test "hle-intel" | |
241 | run_list_test "hlebad" "-al" | |
242 | run_dump_test "rtm" | |
243 | run_dump_test "rtm-intel" | |
922d8de8 | 244 | run_dump_test "fma4" |
f88c9eb0 | 245 | run_dump_test "lwp" |
5dd85c99 | 246 | run_dump_test "xop" |
f12dc422 L |
247 | run_dump_test "bmi" |
248 | run_dump_test "bmi-intel" | |
2a2a0f38 QN |
249 | run_dump_test "tbm" |
250 | run_dump_test "tbm-intel" | |
c7b8aa3a L |
251 | run_dump_test "f16c" |
252 | run_dump_test "f16c-intel" | |
253 | run_dump_test "fsgs" | |
254 | run_dump_test "fsgs-intel" | |
255 | run_dump_test "rdrnd" | |
256 | run_dump_test "rdrnd-intel" | |
fa94de6b RM |
257 | run_dump_test "bundle" |
258 | run_dump_test "bundle-lock" | |
259 | run_dump_test "bundle-bad" | |
e2e1fcde L |
260 | run_dump_test "adx" |
261 | run_dump_test "adx-intel" | |
262 | run_dump_test "rdseed" | |
263 | run_dump_test "rdseed-intel" | |
d7189fa5 RM |
264 | run_dump_test "prefetch" |
265 | run_dump_test "prefetch-intel" | |
5c111e37 | 266 | run_dump_test "smap" |
7e8b059b L |
267 | run_dump_test "mpx" |
268 | run_list_test "mpx-inval-1" "-al" | |
269 | run_dump_test "mpx-add-bnd-prefix" | |
a0046408 | 270 | run_dump_test "sha" |
963f3586 IT |
271 | run_dump_test "clflushopt" |
272 | run_dump_test "clflushopt-intel" | |
273 | run_dump_test "xsavec" | |
274 | run_dump_test "xsavec-intel" | |
275 | run_dump_test "xsaves" | |
276 | run_dump_test "xsaves-intel" | |
dcf893b5 IT |
277 | run_dump_test "prefetchwt1" |
278 | run_dump_test "prefetchwt1-intel" | |
2cf200a4 | 279 | run_dump_test "se1" |
b28d1bda IT |
280 | run_dump_test "avx512f_vl-intel" |
281 | run_dump_test "avx512f_vl-opts-intel" | |
282 | run_dump_test "avx512f_vl-opts" | |
283 | run_dump_test "avx512f_vl-wig1-intel" | |
284 | run_dump_test "avx512f_vl-wig1" | |
285 | run_dump_test "avx512f_vl" | |
99282af6 IT |
286 | run_dump_test "avx512cd_vl-intel" |
287 | run_dump_test "avx512cd_vl" | |
1ba585e8 IT |
288 | run_dump_test "avx512bw-intel" |
289 | run_dump_test "avx512bw-opts-intel" | |
290 | run_dump_test "avx512bw-opts" | |
291 | run_dump_test "avx512bw-wig1-intel" | |
292 | run_dump_test "avx512bw-wig1" | |
293 | run_dump_test "avx512bw" | |
294 | run_dump_test "avx512bw_vl-intel" | |
295 | run_dump_test "avx512bw_vl-opts-intel" | |
296 | run_dump_test "avx512bw_vl-opts" | |
297 | run_dump_test "avx512bw_vl-wig1-intel" | |
298 | run_dump_test "avx512bw_vl-wig1" | |
299 | run_dump_test "avx512bw_vl" | |
90a915bf IT |
300 | run_dump_test "avx512dq-intel" |
301 | run_dump_test "avx512dq" | |
302 | run_dump_test "avx512dq_vl-intel" | |
303 | run_dump_test "avx512dq_vl" | |
d022bddd IT |
304 | run_dump_test "omit-lock-yes" |
305 | run_dump_test "omit-lock-no" | |
e4e00185 AS |
306 | run_dump_test "fence-as-lock-add-yes" |
307 | run_dump_test "fence-as-lock-add-no" | |
d3d3c6db IT |
308 | run_dump_test "avx512dq-rcigrd-intel" |
309 | run_dump_test "avx512dq-rcigrd" | |
310 | run_dump_test "avx512dq-rcigrne-intel" | |
311 | run_dump_test "avx512dq-rcigrne" | |
312 | run_dump_test "avx512dq-rcigru-intel" | |
313 | run_dump_test "avx512dq-rcigru" | |
314 | run_dump_test "avx512dq-rcigrz-intel" | |
315 | run_dump_test "avx512dq-rcigrz" | |
316 | run_dump_test "avx512er-rcigrd-intel" | |
317 | run_dump_test "avx512er-rcigrd" | |
318 | run_dump_test "avx512er-rcigrne-intel" | |
319 | run_dump_test "avx512er-rcigrne" | |
320 | run_dump_test "avx512er-rcigru-intel" | |
321 | run_dump_test "avx512er-rcigru" | |
322 | run_dump_test "avx512er-rcigrz-intel" | |
323 | run_dump_test "avx512er-rcigrz" | |
324 | run_dump_test "avx512f-rcigrd-intel" | |
325 | run_dump_test "avx512f-rcigrd" | |
326 | run_dump_test "avx512f-rcigrne-intel" | |
327 | run_dump_test "avx512f-rcigrne" | |
328 | run_dump_test "avx512f-rcigru-intel" | |
329 | run_dump_test "avx512f-rcigru" | |
330 | run_dump_test "avx512f-rcigrz-intel" | |
331 | run_dump_test "avx512f-rcigrz" | |
c5e7287a IT |
332 | run_dump_test "clwb" |
333 | run_dump_test "clwb-intel" | |
9d8596f0 IT |
334 | run_dump_test "pcommit" |
335 | run_dump_test "pcommit-intel" | |
2cc1b5aa IT |
336 | run_dump_test "avx512ifma" |
337 | run_dump_test "avx512ifma-intel" | |
338 | run_dump_test "avx512ifma_vl" | |
339 | run_dump_test "avx512ifma_vl-intel" | |
14f195c9 IT |
340 | run_dump_test "avx512vbmi" |
341 | run_dump_test "avx512vbmi-intel" | |
342 | run_dump_test "avx512vbmi_vl" | |
343 | run_dump_test "avx512vbmi_vl-intel" | |
029f3522 | 344 | run_dump_test "clzero" |
4a357820 | 345 | run_dump_test "disassem" |
9916071f AP |
346 | run_dump_test "mwaitx-bdver4" |
347 | run_list_test "mwaitx-reg" | |
8eab4136 | 348 | run_dump_test "ospke" |
252b5132 | 349 | |
a3d1c52b AM |
350 | # These tests require support for 8 and 16 bit relocs, |
351 | # so we only run them for ELF and COFF targets. | |
62e88f3c | 352 | if {[is_elf_format] || [istarget "*-*-coff*"]} then { |
252b5132 | 353 | run_dump_test "reloc" |
a3d1c52b | 354 | run_dump_test "jump16" |
252b5132 | 355 | run_list_test "white" "-al --listing-lhs-width=3" |
3d983505 NC |
356 | |
357 | # These tests should in theory work for PE targets as well, | |
358 | # but the relocs we currently produce are slightly different | |
359 | # from those produced for ELF/COFF based toolchains. | |
360 | # So for now we ignore PE targets. | |
3d983505 | 361 | run_dump_test "absrel" |
8dcea932 L |
362 | if {[istarget "*-*-coff*"]} then { |
363 | run_dump_test "pcrel" | |
364 | } | |
252b5132 | 365 | } |
00687228 | 366 | |
62e88f3c NC |
367 | # ELF specific tests |
368 | if [is_elf_format] then { | |
369 | # PIC is only supported on ELF targets. | |
370 | run_dump_test "intelpic" | |
371 | ||
8dcea932 | 372 | run_dump_test "pcrel-elf" |
00687228 | 373 | run_dump_test "relax" |
2bbd9c25 | 374 | run_dump_test "gotpc" |
13ae64f3 JJ |
375 | run_dump_test "tlsd" |
376 | run_dump_test "tlspic" | |
377 | run_dump_test "tlsnopic" | |
8a75718c | 378 | run_dump_test "bss" |
3956db08 JB |
379 | run_dump_test "reloc32" |
380 | run_list_test "reloc32" "--defsym _bad_=1" | |
4fa24527 | 381 | run_dump_test "mixed-mode-reloc32" |
192dc9c6 | 382 | run_dump_test "att-regs" |
4261360e | 383 | run_dump_test "intel-got32" |
192dc9c6 | 384 | run_dump_test "intel-regs" |
d0548f34 L |
385 | run_list_test "inval-equ-1" "-al" |
386 | run_list_test "inval-equ-2" "-al" | |
915bcca5 | 387 | run_dump_test "ifunc" |
c969da64 RS |
388 | run_list_test "ifunc-2" |
389 | run_dump_test "ifunc-3" | |
8a9036a4 | 390 | run_list_test "l1om-inval" "-march=l1om --32" |
7a9068fe | 391 | run_list_test "k1om-inval" "-march=k1om --32" |
2a86604a | 392 | run_dump_test "localpic" |
df1c40a7 | 393 | run_dump_test "debug1" |
502abbdf | 394 | |
089b8992 | 395 | run_dump_test "dw2-compress-2" |
151411f8 | 396 | run_dump_test "dw2-compressed-2" |
21be61f5 L |
397 | |
398 | run_dump_test "bad-size" | |
8fd4256d L |
399 | |
400 | run_dump_test "size-1" | |
401 | run_dump_test "size-2" | |
402 | run_dump_test "size-3" | |
403 | run_dump_test "size-4" | |
00923338 L |
404 | |
405 | run_dump_test "note" | |
b084df0b L |
406 | |
407 | run_dump_test "relax-3" | |
8dcea932 | 408 | run_dump_test "relax-4" |
81486035 | 409 | |
02a86693 | 410 | run_dump_test "got" |
0cb4071e | 411 | run_dump_test "got-no-relax" |
02a86693 | 412 | |
81486035 L |
413 | if {![istarget "*-*-nacl*"]} then { |
414 | run_dump_test "iamcu-1" | |
415 | run_dump_test "iamcu-2" | |
416 | run_dump_test "iamcu-3" | |
417 | run_list_test "iamcu-inval-1" "-march=iamcu -al" | |
418 | run_list_test "iamcu-inval-2" "-march=iamcu -al" | |
419 | run_list_test "iamcu-inval-3" "-march=iamcu+sse4 -al" | |
420 | } | |
00687228 L |
421 | } |
422 | ||
6482c264 NC |
423 | # This is a PE specific test. |
424 | if { [istarget "*-*-cygwin*"] || [istarget "*-*-pe"] | |
425 | || [istarget "*-*-mingw*"] | |
426 | } then { | |
427 | run_dump_test "secrel" | |
428 | } | |
429 | ||
a5f21126 L |
430 | # Miscellaneous tests. |
431 | run_dump_test "pr12589-1" | |
432 | ||
b96d3a20 JH |
433 | set ASFLAGS "$old_ASFLAGS" |
434 | } | |
6e0b89ee | 435 | |
cdcf9467 | 436 | # Common tests |
fc0763e6 | 437 | if [expr [istarget "i*86-*-*"] || [istarget "x86_64-*-*"]] then { |
81486035 L |
438 | if {![istarget "i*86-*-elfiamcu"]} then { |
439 | run_dump_test "intel-expr" | |
440 | run_dump_test "string-ok" | |
441 | } | |
fc0763e6 | 442 | run_list_test "string-bad" "" |
f76bf5e0 | 443 | run_list_test "reg-bad" "" |
cdcf9467 | 444 | run_list_test "space1" "-al" |
c22faadb | 445 | run_dump_test rept |
4f9adf89 L |
446 | if [is_elf_format] then { |
447 | run_list_test_stdin "list-1" "-al" | |
448 | run_list_test_stdin "list-2" "-al" | |
449 | run_list_test_stdin "list-3" "-al" | |
12a8b92e | 450 | run_dump_test "dw2-compress-1" |
d94077e2 | 451 | run_dump_test "dw2-compress-3" |
151411f8 L |
452 | run_dump_test "dw2-compressed-1" |
453 | run_dump_test "dw2-compressed-3" | |
12a8b92e | 454 | } |
fc0763e6 JB |
455 | } |
456 | ||
fc847f15 | 457 | if [expr ([istarget "i*86-*-*"] || [istarget "x86_64-*-*"]) && [gas_64_check]] then { |
b96d3a20 JH |
458 | |
459 | global ASFLAGS | |
460 | set old_ASFLAGS "$ASFLAGS" | |
461 | set ASFLAGS "$ASFLAGS --64" | |
462 | ||
463 | run_dump_test "x86_64" | |
a8484f96 | 464 | run_dump_test "x86_64-intel" |
20f0a1fc | 465 | run_dump_test "x86-64-addr32" |
185b1163 | 466 | run_dump_test "x86-64-addr32-intel" |
831b02f6 | 467 | run_dump_test "x86-64-opcode" |
dfb07592 | 468 | run_dump_test "x86-64-intel64" |
0cd63f3d KT |
469 | if { ![istarget "*-*-mingw*"] } then { |
470 | run_dump_test "x86-64-pcrel" | |
fa8761a3 | 471 | run_dump_test "x86-64-disassem" |
0cd63f3d KT |
472 | } else { |
473 | run_dump_test "x86-64-w64-pcrel" | |
474 | } | |
20f0a1fc | 475 | run_dump_test "x86-64-rip" |
185b1163 | 476 | run_dump_test "x86-64-rip-intel" |
1a114b12 JB |
477 | run_dump_test "x86-64-stack" |
478 | run_dump_test "x86-64-stack-intel" | |
479 | run_dump_test "x86-64-stack-suffix" | |
831b02f6 | 480 | run_list_test "x86-64-inval" "-al" |
4cc91dba | 481 | run_list_test "x86-64-segment" "-al" |
848930b2 | 482 | run_dump_test "x86-64-segovr" |
4cc91dba | 483 | run_list_test "x86-64-inval-seg" "-al" |
003519a7 | 484 | run_dump_test "x86-64-branch" |
7898a2b1 | 485 | run_dump_test "x86-64-relax-1" |
30123838 | 486 | run_dump_test "svme64" |
050dfa73 | 487 | run_dump_test "x86-64-amdfam10" |
90700ea2 | 488 | run_dump_test "x86-64-vmx" |
8729a6f6 | 489 | run_dump_test "x86-64-vmfunc" |
9cd96992 | 490 | run_dump_test "immed64" |
bc2ae10b | 491 | run_dump_test "x86-64-sse3" |
6dd5059a L |
492 | run_dump_test "x86-64-crx" |
493 | run_dump_test "x86-64-crx-suffix" | |
a1cfb73e L |
494 | run_dump_test "x86-64-drx" |
495 | run_dump_test "x86-64-drx-suffix" | |
68f34464 | 496 | run_dump_test "x86-64-cdr" |
bc2ae10b | 497 | run_dump_test "x86-64-ssse3" |
35c52694 L |
498 | run_dump_test "x86-64-rep" |
499 | run_dump_test "x86-64-rep-suffix" | |
d5de92cf | 500 | run_list_test "x86-64-inval-rep" "-al" |
c32fa91d L |
501 | run_dump_test "x86-64-lock-1" |
502 | run_dump_test "x86-64-lock-1-intel" | |
503 | run_list_test "x86-64-lockbad-1" "-al" | |
f16cd0d5 L |
504 | run_dump_test "x86-64-long-1" |
505 | run_dump_test "x86-64-long-1-intel" | |
a35ca55a JB |
506 | run_dump_test "x86-64-cbw" |
507 | run_dump_test "x86-64-cbw-intel" | |
52fd6d94 JB |
508 | run_dump_test "x86-64-io" |
509 | run_dump_test "x86-64-io-intel" | |
510 | run_dump_test "x86-64-io-suffix" | |
cb6d3433 | 511 | run_dump_test "x86-64-gidt" |
15965411 | 512 | run_dump_test "x86-64-nops" |
872ce6ff | 513 | run_dump_test "x86-64-nops-1" |
da98bb4c | 514 | run_dump_test "x86-64-nops-1-g64" |
ccc9c027 | 515 | run_dump_test "x86-64-nops-1-k8" |
bc2ae10b | 516 | run_dump_test "x86-64-nops-1-core2" |
711eedef | 517 | run_dump_test "x86-64-nops-1-pentium" |
76bc74dc L |
518 | run_dump_test "x86-64-nops-2" |
519 | run_dump_test "x86-64-nops-3" | |
520 | run_dump_test "x86-64-nops-4" | |
521 | run_dump_test "x86-64-nops-4-core2" | |
522 | run_dump_test "x86-64-nops-4-k8" | |
fbf3f584 L |
523 | run_dump_test "x86-64-nops-5" |
524 | run_dump_test "x86-64-nops-5-k8" | |
42903f7f | 525 | run_dump_test "x86-64-sse4_1" |
c3ad16c0 | 526 | run_dump_test "x86-64-sse4_1-intel" |
381d071f | 527 | run_dump_test "x86-64-sse4_2" |
c3ad16c0 | 528 | run_dump_test "x86-64-sse4_2-intel" |
9344ff29 L |
529 | run_dump_test "x86-64-crc32" |
530 | run_dump_test "x86-64-crc32-intel" | |
20592a94 | 531 | run_list_test "x86-64-inval-crc32" "-al" |
09a2c6cf L |
532 | run_dump_test "x86-64-simd" |
533 | run_dump_test "x86-64-simd-intel" | |
8a72226a | 534 | run_dump_test "x86-64-simd-suffix" |
d9a5e5e5 L |
535 | run_dump_test "x86-64-mem" |
536 | run_dump_test "x86-64-mem-intel" | |
5cee3fe6 L |
537 | run_dump_test "x86-64-reg" |
538 | run_dump_test "x86-64-reg-intel" | |
db51cc60 L |
539 | run_dump_test "x86-64-sib" |
540 | run_dump_test "x86-64-sib-intel" | |
0e1147d9 | 541 | run_dump_test "x86-64-disp" |
6cee4cda | 542 | run_dump_test "x86-64-disp-intel" |
f8a5c266 | 543 | run_dump_test "x86-64-disp32" |
c6add537 | 544 | run_dump_test "rexw" |
4c692bc7 | 545 | run_list_test "x86-64-specific-reg" |
e4630f71 | 546 | run_list_test "x86-64-suffix-bad" |
eacc9c89 L |
547 | run_dump_test "x86-64-fxsave" |
548 | run_dump_test "x86-64-fxsave-intel" | |
599121aa | 549 | run_dump_test "x86-64-arch-1" |
e8efc4d9 | 550 | run_dump_test "x86-64-arch-2" |
029f3522 | 551 | run_dump_test "x86-64-arch-3" |
6c30d220 | 552 | run_dump_test "x86-64-arch-2-lzcnt" |
e2e1fcde | 553 | run_dump_test "x86-64-arch-2-prefetchw" |
160a30bb | 554 | run_dump_test "x86-64-arch-2-bdver1" |
5c5acbbd | 555 | run_dump_test "x86-64-arch-2-bdver2" |
5e5c50d3 | 556 | run_dump_test "x86-64-arch-2-bdver3" |
c7b0bd56 | 557 | run_dump_test "x86-64-arch-2-bdver4" |
029f3522 | 558 | run_dump_test "x86-64-arch-3-znver1" |
7b458c12 L |
559 | run_dump_test "x86-64-arch-2-btver1" |
560 | run_dump_test "x86-64-arch-2-btver2" | |
6788fa52 L |
561 | run_list_test "x86-64-arch-2-1" "-march=generic64 -I${srcdir}/$subdir -al" |
562 | run_list_test "x86-64-arch-2-2" "-march=generic64+cx16 -I${srcdir}/$subdir -al" | |
475a2301 L |
563 | run_dump_test "x86-64-xsave" |
564 | run_dump_test "x86-64-xsave-intel" | |
c0f3af97 L |
565 | run_dump_test "x86-64-aes" |
566 | run_dump_test "x86-64-aes-intel" | |
567 | run_dump_test "x86-64-clmul" | |
568 | run_dump_test "x86-64-clmul-intel" | |
569 | run_dump_test "x86-64-avx" | |
570 | run_dump_test "x86-64-avx-intel" | |
539f890d L |
571 | run_dump_test "x86-64-avx-scalar" |
572 | run_dump_test "x86-64-avx-scalar-intel" | |
6c30d220 L |
573 | run_dump_test "x86-64-avx256int" |
574 | run_dump_test "x86-64-avx256int-intel" | |
575 | run_dump_test "x86-64-avx2" | |
576 | run_dump_test "x86-64-avx2-intel" | |
577 | run_dump_test "x86-64-avx-gather" | |
578 | run_dump_test "x86-64-avx-gather-intel" | |
43234a1e L |
579 | run_dump_test "x86-64-avx512f" |
580 | run_dump_test "x86-64-avx512f-intel" | |
581 | run_dump_test "x86-64-avx512f-opts" | |
582 | run_dump_test "x86-64-avx512f-opts-intel" | |
583 | run_dump_test "x86-64-avx512f-nondef" | |
584 | run_dump_test "x86-64-avx512cd" | |
585 | run_dump_test "x86-64-avx512cd-intel" | |
586 | run_dump_test "x86-64-avx512er" | |
587 | run_dump_test "x86-64-avx512er-intel" | |
588 | run_dump_test "x86-64-avx512pf" | |
589 | run_dump_test "x86-64-avx512pf-intel" | |
590 | run_dump_test "x86-64-evex-lig256" | |
591 | run_dump_test "x86-64-evex-lig512" | |
592 | run_dump_test "x86-64-evex-lig256-intel" | |
593 | run_dump_test "x86-64-evex-lig512-intel" | |
594 | run_dump_test "x86-64-evex-wig1" | |
595 | run_dump_test "x86-64-evex-wig1-intel" | |
c0f3af97 L |
596 | run_dump_test "x86-64-sse2avx" |
597 | run_list_test "x86-64-inval-avx" "-al" | |
43234a1e | 598 | run_list_test "x86-64-inval-avx512f" "-al" |
daf50ae7 | 599 | run_dump_test "x86-64-sse-check" |
cb19c032 | 600 | run_dump_test "x86-64-sse-check-none" |
daf50ae7 L |
601 | run_dump_test "x86-64-sse-check-warn" |
602 | run_list_test "x86-64-sse-check-error" "-msse-check=error -I${srcdir}/$subdir -al" | |
7bab8ab5 JB |
603 | run_dump_test "x86-64-vgather-check" |
604 | run_dump_test "x86-64-vgather-check-none" | |
605 | run_dump_test "x86-64-vgather-check-warn" | |
606 | run_list_test "x86-64-vgather-check-error" "-moperand-check=error -I${srcdir}/$subdir" | |
9ba52a26 | 607 | run_dump_test "x86-64-sse-noavx" |
f1f8f695 L |
608 | run_dump_test "x86-64-movbe" |
609 | run_dump_test "x86-64-movbe-intel" | |
610 | run_list_test "x86-64-inval-movbe" "-al" | |
611 | run_dump_test "x86-64-ept" | |
612 | run_dump_test "x86-64-ept-intel" | |
613 | run_list_test "x86-64-inval-ept" "-al" | |
6c30d220 L |
614 | run_dump_test "x86-64-invpcid" |
615 | run_dump_test "x86-64-invpcid-intel" | |
616 | run_list_test "x86-64-inval-invpcid" "-al" | |
b6169b20 L |
617 | run_dump_test "x86-64-opts" |
618 | run_dump_test "x86-64-opts-intel" | |
619 | run_dump_test "x86-64-sse2avx-opts" | |
620 | run_dump_test "x86-64-sse2avx-opts-intel" | |
fa99fab2 L |
621 | run_dump_test "x86-64-avx-swap" |
622 | run_dump_test "x86-64-avx-swap-intel" | |
6c30d220 L |
623 | run_dump_test "x86-64-bmi2" |
624 | run_dump_test "x86-64-bmi2-intel" | |
0bfee649 L |
625 | run_dump_test "x86-64-fma" |
626 | run_dump_test "x86-64-fma-intel" | |
1c480963 L |
627 | run_dump_test "x86-64-fma-scalar" |
628 | run_dump_test "x86-64-fma-scalar-intel" | |
42164a71 L |
629 | run_dump_test "x86-64-hle" |
630 | run_dump_test "x86-64-hle-intel" | |
631 | run_list_test "x86-64-hlebad" "-al" | |
632 | run_dump_test "x86-64-rtm" | |
633 | run_dump_test "x86-64-rtm-intel" | |
922d8de8 | 634 | run_dump_test "x86-64-fma4" |
f88c9eb0 | 635 | run_dump_test "x86-64-lwp" |
5dd85c99 | 636 | run_dump_test "x86-64-xop" |
f12dc422 L |
637 | run_dump_test "x86-64-bmi" |
638 | run_dump_test "x86-64-bmi-intel" | |
2a2a0f38 QN |
639 | run_dump_test "x86-64-tbm" |
640 | run_dump_test "x86-64-tbm-intel" | |
c7b8aa3a L |
641 | run_dump_test "x86-64-f16c" |
642 | run_dump_test "x86-64-f16c-intel" | |
643 | run_dump_test "x86-64-fsgs" | |
644 | run_dump_test "x86-64-fsgs-intel" | |
645 | run_dump_test "x86-64-rdrnd" | |
646 | run_dump_test "x86-64-rdrnd-intel" | |
fa94de6b | 647 | run_dump_test "x86-64-bundle" |
e2e1fcde L |
648 | run_dump_test "x86-64-adx" |
649 | run_dump_test "x86-64-adx-intel" | |
650 | run_dump_test "x86-64-rdseed" | |
651 | run_dump_test "x86-64-rdseed-intel" | |
d7189fa5 RM |
652 | run_dump_test "x86-64-prefetch" |
653 | run_dump_test "x86-64-prefetch-intel" | |
5c111e37 | 654 | run_dump_test "x86-64-smap" |
7e8b059b L |
655 | run_dump_test "x86-64-mpx" |
656 | run_list_test "x86-64-mpx-inval-1" "-al" | |
657 | run_list_test "x86-64-mpx-inval-2" "-al" | |
658 | run_dump_test "x86-64-mpx-addr32" | |
659 | run_dump_test "x86-64-mpx-add-bnd-prefix" | |
a0046408 | 660 | run_dump_test "x86-64-sha" |
963f3586 IT |
661 | run_dump_test "x86-64-clflushopt" |
662 | run_dump_test "x86-64-clflushopt-intel" | |
663 | run_dump_test "x86-64-xsavec" | |
664 | run_dump_test "x86-64-xsavec-intel" | |
665 | run_dump_test "x86-64-xsaves" | |
666 | run_dump_test "x86-64-xsaves-intel" | |
dcf893b5 IT |
667 | run_dump_test "x86-64-prefetchwt1" |
668 | run_dump_test "x86-64-prefetchwt1-intel" | |
2cf200a4 | 669 | run_dump_test "x86-64-se1" |
d3bb6b49 | 670 | run_dump_test "x86-64-equ" |
b28d1bda IT |
671 | run_dump_test "x86-64-avx512f_vl-intel" |
672 | run_dump_test "x86-64-avx512f_vl-opts-intel" | |
673 | run_dump_test "x86-64-avx512f_vl-opts" | |
674 | run_dump_test "x86-64-avx512f_vl-wig1-intel" | |
675 | run_dump_test "x86-64-avx512f_vl-wig1" | |
676 | run_dump_test "x86-64-avx512f_vl" | |
99282af6 IT |
677 | run_dump_test "x86-64-avx512cd_vl-intel" |
678 | run_dump_test "x86-64-avx512cd_vl" | |
1ba585e8 IT |
679 | run_dump_test "x86-64-avx512bw-intel" |
680 | run_dump_test "x86-64-avx512bw-opts-intel" | |
681 | run_dump_test "x86-64-avx512bw-opts" | |
682 | run_dump_test "x86-64-avx512bw-wig1-intel" | |
683 | run_dump_test "x86-64-avx512bw-wig1" | |
684 | run_dump_test "x86-64-avx512bw" | |
685 | run_dump_test "x86-64-avx512bw_vl-intel" | |
686 | run_dump_test "x86-64-avx512bw_vl-opts-intel" | |
687 | run_dump_test "x86-64-avx512bw_vl-opts" | |
688 | run_dump_test "x86-64-avx512bw_vl-wig1-intel" | |
689 | run_dump_test "x86-64-avx512bw_vl-wig1" | |
690 | run_dump_test "x86-64-avx512bw_vl" | |
90a915bf IT |
691 | run_dump_test "x86-64-avx512dq-intel" |
692 | run_dump_test "x86-64-avx512dq" | |
693 | run_dump_test "x86-64-avx512dq_vl-intel" | |
694 | run_dump_test "x86-64-avx512dq_vl" | |
4b4c407a L |
695 | run_dump_test "x86-64-suffix" |
696 | run_dump_test "x86-64-suffix-intel" | |
d3d3c6db IT |
697 | run_dump_test "x86-64-avx512dq-rcigrd-intel" |
698 | run_dump_test "x86-64-avx512dq-rcigrd" | |
699 | run_dump_test "x86-64-avx512dq-rcigrne-intel" | |
700 | run_dump_test "x86-64-avx512dq-rcigrne" | |
701 | run_dump_test "x86-64-avx512dq-rcigru-intel" | |
702 | run_dump_test "x86-64-avx512dq-rcigru" | |
703 | run_dump_test "x86-64-avx512dq-rcigrz-intel" | |
704 | run_dump_test "x86-64-avx512dq-rcigrz" | |
705 | run_dump_test "x86-64-avx512er-rcigrd-intel" | |
706 | run_dump_test "x86-64-avx512er-rcigrd" | |
707 | run_dump_test "x86-64-avx512er-rcigrne-intel" | |
708 | run_dump_test "x86-64-avx512er-rcigrne" | |
709 | run_dump_test "x86-64-avx512er-rcigru-intel" | |
710 | run_dump_test "x86-64-avx512er-rcigru" | |
711 | run_dump_test "x86-64-avx512er-rcigrz-intel" | |
712 | run_dump_test "x86-64-avx512er-rcigrz" | |
713 | run_dump_test "x86-64-avx512f-rcigrd-intel" | |
714 | run_dump_test "x86-64-avx512f-rcigrd" | |
715 | run_dump_test "x86-64-avx512f-rcigrne-intel" | |
716 | run_dump_test "x86-64-avx512f-rcigrne" | |
717 | run_dump_test "x86-64-avx512f-rcigru-intel" | |
718 | run_dump_test "x86-64-avx512f-rcigru" | |
719 | run_dump_test "x86-64-avx512f-rcigrz-intel" | |
720 | run_dump_test "x86-64-avx512f-rcigrz" | |
c5e7287a IT |
721 | run_dump_test "x86-64-clwb" |
722 | run_dump_test "x86-64-clwb-intel" | |
9d8596f0 IT |
723 | run_dump_test "x86-64-pcommit" |
724 | run_dump_test "x86-64-pcommit-intel" | |
2cc1b5aa IT |
725 | run_dump_test "x86-64-avx512ifma" |
726 | run_dump_test "x86-64-avx512ifma-intel" | |
727 | run_dump_test "x86-64-avx512ifma_vl" | |
728 | run_dump_test "x86-64-avx512ifma_vl-intel" | |
14f195c9 IT |
729 | run_dump_test "x86-64-avx512vbmi" |
730 | run_dump_test "x86-64-avx512vbmi-intel" | |
731 | run_dump_test "x86-64-avx512vbmi_vl" | |
732 | run_dump_test "x86-64-avx512vbmi_vl-intel" | |
029f3522 | 733 | run_dump_test "x86-64-clzero" |
9916071f AP |
734 | run_dump_test "x86-64-mwaitx-bdver4" |
735 | run_list_test "x86-64-mwaitx-reg" | |
8eab4136 | 736 | run_dump_test "x86-64-ospke" |
e4e00185 AS |
737 | run_dump_test "x86-64-fence-as-lock-add-yes" |
738 | run_dump_test "x86-64-fence-as-lock-add-no" | |
b96d3a20 | 739 | |
b1905489 JB |
740 | if { ![istarget "*-*-aix*"] |
741 | && ![istarget "*-*-beos*"] | |
742 | && ![istarget "*-*-*bsd*"] | |
743 | && ![istarget "*-*-chaos*"] | |
744 | && ![istarget "*-*-kaos*"] | |
745 | && ![istarget "*-*-lynx*"] | |
746 | && ![istarget "*-*-moss*"] | |
747 | && ![istarget "*-*-nto-qnx*"] | |
748 | && ![istarget "*-*-rtems*"] | |
749 | && ![istarget "*-*-sco*"] | |
750 | && ![istarget "*-*-solaris*"] | |
751 | && ![istarget "*-*-sysv*"] } then { | |
752 | run_dump_test "rex" | |
753 | } | |
754 | ||
3956db08 JB |
755 | # ELF specific tests |
756 | if [is_elf_format] then { | |
f5d9e816 L |
757 | # Verify that @unwind works. |
758 | run_dump_test "x86-64-unwind" | |
759 | ||
3956db08 JB |
760 | run_dump_test "reloc64" |
761 | run_list_test "reloc64" "--defsym _bad_=1" | |
4fa24527 | 762 | run_dump_test "mixed-mode-reloc64" |
915bcca5 | 763 | run_dump_test "x86-64-ifunc" |
4261360e AM |
764 | run_dump_test "x86-64-opcode-inval" |
765 | run_dump_test "x86-64-opcode-inval-intel" | |
766 | run_dump_test "intel-got64" | |
8a9036a4 | 767 | run_dump_test "l1om" |
7a9068fe | 768 | run_dump_test "k1om" |
f5d9e816 | 769 | run_dump_test "x86-64-localpic" |
df1c40a7 | 770 | run_dump_test "debug1" |
c3320543 L |
771 | run_dump_test "x86-64-mpx-branch-1" |
772 | run_dump_test "x86-64-mpx-branch-2" | |
368886ac | 773 | |
089b8992 | 774 | run_dump_test "x86-64-dw2-compress-2" |
151411f8 | 775 | run_dump_test "x86-64-dw2-compressed-2" |
8fd4256d L |
776 | |
777 | run_dump_test "x86-64-size-1" | |
778 | run_dump_test "x86-64-size-2" | |
779 | run_dump_test "x86-64-size-3" | |
780 | run_dump_test "x86-64-size-4" | |
781 | run_dump_test "x86-64-size-5" | |
782 | run_list_test "x86-64-size-inval-1" "-al" | |
b084df0b L |
783 | |
784 | run_dump_test "x86-64-relax-2" | |
8dcea932 | 785 | run_dump_test "x86-64-relax-3" |
a72d2af2 L |
786 | |
787 | run_dump_test "x86-64-jump" | |
5db04b09 L |
788 | run_dump_test "x86-64-branch-2" |
789 | run_list_test "x86-64-branch-3" "-al -mintel64" | |
56ceb5b5 L |
790 | |
791 | run_dump_test "x86-64-gotpcrel" | |
0cb4071e | 792 | run_dump_test "x86-64-gotpcrel-no-relax" |
3956db08 JB |
793 | } |
794 | ||
b96d3a20 | 795 | set ASFLAGS "$old_ASFLAGS" |
252b5132 | 796 | } |