Add R_386_GOT32X support to gas and ld
[external/binutils.git] / gas / testsuite / gas / i386 / i386.exp
1 # Copyright (C) 2012-2015 Free Software Foundation, Inc.
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
17 #
18 # i386 tests
19 #
20 proc gas_64_check { } {
21     global NM
22     global NMFLAGS
23
24     set status [gas_host_run "$NM $NMFLAGS --help" ""]
25     return [regexp "targets:.*x86-64" [lindex $status 1]];
26 }
27
28 proc gas_32_check { } {
29     global NM
30     global NMFLAGS
31
32     set status [gas_host_run "$NM $NMFLAGS --help" ""]
33     return [regexp "targets:.*i386" [lindex $status 1]];
34 }
35
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"
41
42     run_list_test "float" "-al -mmnemonic=att"
43     run_list_test "general" "-al --listing-lhs-width=2 -mold-gcc"
44     run_list_test "inval" "-al"
45     run_list_test "inval-16" "-al"
46     run_list_test "segment" "-al"
47     run_list_test "inval-seg" "-al"
48     run_list_test "inval-reg" "-al"
49     run_list_test "modrm" "-al --listing-lhs-width=2"
50     run_dump_test "naked"
51     run_dump_test "opcode"
52     run_dump_test "opcode-intel"
53     run_dump_test "opcode-suffix"
54     run_dump_test "intel"
55     run_dump_test "intel16"
56     run_list_test "intelbad" ""
57     run_dump_test "intelok"
58     run_dump_test "prefix"
59     run_dump_test "amd"
60     run_dump_test "katmai"
61     run_dump_test "jump"
62     run_dump_test "relax-1"
63     run_dump_test "relax-2"
64     run_dump_test "ssemmx2"
65     run_dump_test "sse2"
66     run_dump_test "sub"
67     run_dump_test "sse3"
68     run_dump_test "sib"
69     run_dump_test "sib-intel"
70     run_dump_test "disp"
71     run_dump_test "disp-intel"
72     run_dump_test "disp32"
73     run_dump_test "vmx"
74     run_dump_test "vmfunc"
75     run_dump_test "smx"
76     run_dump_test "suffix"
77     run_dump_test "suffix-intel"
78     run_dump_test "immed32"
79     run_dump_test "equ"
80     run_dump_test "divide"
81     run_dump_test "padlock"
82     run_dump_test "crx"
83     run_list_test "cr-err" ""
84     run_dump_test "cdr"
85     run_dump_test "svme"
86     run_dump_test "amdfam10"
87     run_dump_test "ssse3"
88     run_dump_test "rep"
89     run_dump_test "rep-suffix"
90     run_list_test "inval-rep" "-al"
91     run_dump_test "lock-1"
92     run_dump_test "lock-1-intel"
93     run_list_test "lockbad-1" "-al"
94     run_dump_test "long-1"
95     run_dump_test "long-1-intel"
96     run_dump_test "fp"
97     run_dump_test "nops"
98     run_dump_test "nops16-1"
99     run_dump_test "nops-1"
100     run_dump_test "nops-1-i386"
101     run_dump_test "nops-1-i386-i686"
102     run_dump_test "nops-1-i686"
103     run_dump_test "nops-1-k8"
104     run_dump_test "nops-1-core2"
105     run_dump_test "nops-2"
106     run_dump_test "nops-2-i386"
107     run_dump_test "nops-2-core2"
108     run_dump_test "nops-3"
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"
114     run_dump_test "nops-4a-i686"
115     run_dump_test "nops-5"
116     run_dump_test "nops-5-i686"
117     run_dump_test "nops-6"
118     run_dump_test "addr16"
119     run_dump_test "addr32"
120     run_dump_test "sse4_1"
121     run_dump_test "sse4_1-intel"
122     run_dump_test "sse4_2"
123     run_dump_test "sse4_2-intel"
124     run_dump_test "crc32"
125     run_dump_test "crc32-intel"
126     run_list_test "inval-crc32" "-al"
127     run_dump_test "simd"
128     run_dump_test "simd-intel"
129     run_dump_test "simd-suffix"
130     run_dump_test "mem"
131     run_dump_test "mem-intel"
132     run_dump_test "reg"
133     run_dump_test "reg-intel"
134     run_dump_test "i386"
135     run_dump_test "i386-intel"
136     run_dump_test "compat"
137     run_dump_test "compat-intel"
138     run_dump_test "arch-1"
139     run_dump_test "arch-2"
140     run_dump_test "arch-3"
141     run_dump_test "arch-4"
142     run_dump_test "arch-5"
143     run_dump_test "arch-6"
144     run_dump_test "arch-7"
145     run_dump_test "arch-9"
146     run_dump_test "arch-10"
147     run_dump_test "arch-10-lzcnt"
148     run_dump_test "arch-10-prefetchw"
149     run_dump_test "arch-10-bdver1"
150     run_dump_test "arch-10-bdver2"
151     run_dump_test "arch-10-bdver3"
152     run_dump_test "arch-10-bdver4"
153     run_dump_test "arch-13-znver1"
154     run_dump_test "arch-10-btver1"
155     run_dump_test "arch-10-btver2"
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"
160     run_dump_test "arch-11"
161     run_dump_test "arch-12"
162     run_dump_test "arch-13"
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"
168     run_dump_test "xsave"
169     run_dump_test "xsave-intel"
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"
176     run_dump_test "avx-scalar"
177     run_dump_test "avx-scalar-intel"
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"
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"
201     run_dump_test "sse2avx"
202     run_list_test "inval-avx" "-al"
203     run_list_test "inval-avx512f" "-al"
204     run_dump_test "sse-check"
205     run_dump_test "sse-check-none"
206     run_dump_test "sse-check-warn"
207     run_list_test "sse-check-error" "-msse-check=error -I${srcdir}/$subdir -al"
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"
212     run_dump_test "sse-noavx"
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"
219     run_dump_test "invpcid"
220     run_dump_test "invpcid-intel"
221     run_list_test "inval-invpcid" "-al"
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"
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"
229     run_dump_test "opts"
230     run_dump_test "opts-intel"
231     run_dump_test "sse2avx-opts"
232     run_dump_test "sse2avx-opts-intel"
233     run_dump_test "bmi2"
234     run_dump_test "bmi2-intel"
235     run_dump_test "fma"
236     run_dump_test "fma-intel"
237     run_dump_test "fma-scalar"
238     run_dump_test "fma-scalar-intel"
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"
244     run_dump_test "fma4"
245     run_dump_test "lwp"
246     run_dump_test "xop"
247     run_dump_test "bmi"
248     run_dump_test "bmi-intel"
249     run_dump_test "tbm"
250     run_dump_test "tbm-intel"
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"
257     run_dump_test "bundle"
258     run_dump_test "bundle-lock"
259     run_dump_test "bundle-bad"
260     run_dump_test "adx"
261     run_dump_test "adx-intel"
262     run_dump_test "rdseed"
263     run_dump_test "rdseed-intel"
264     run_dump_test "prefetch"
265     run_dump_test "prefetch-intel"
266     run_dump_test "smap"
267     run_dump_test "mpx"
268     run_list_test "mpx-inval-1" "-al"
269     run_dump_test "mpx-add-bnd-prefix"
270     run_dump_test "sha"
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"
277     run_dump_test "prefetchwt1"
278     run_dump_test "prefetchwt1-intel"
279     run_dump_test "se1"
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"
286     run_dump_test "avx512cd_vl-intel"
287     run_dump_test "avx512cd_vl"
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"
300     run_dump_test "avx512dq-intel"
301     run_dump_test "avx512dq"
302     run_dump_test "avx512dq_vl-intel"
303     run_dump_test "avx512dq_vl"
304     run_dump_test "omit-lock-yes"
305     run_dump_test "omit-lock-no"
306     run_dump_test "avx512dq-rcigrd-intel"
307     run_dump_test "avx512dq-rcigrd"
308     run_dump_test "avx512dq-rcigrne-intel"
309     run_dump_test "avx512dq-rcigrne"
310     run_dump_test "avx512dq-rcigru-intel"
311     run_dump_test "avx512dq-rcigru"
312     run_dump_test "avx512dq-rcigrz-intel"
313     run_dump_test "avx512dq-rcigrz"
314     run_dump_test "avx512er-rcigrd-intel"
315     run_dump_test "avx512er-rcigrd"
316     run_dump_test "avx512er-rcigrne-intel"
317     run_dump_test "avx512er-rcigrne"
318     run_dump_test "avx512er-rcigru-intel"
319     run_dump_test "avx512er-rcigru"
320     run_dump_test "avx512er-rcigrz-intel"
321     run_dump_test "avx512er-rcigrz"
322     run_dump_test "avx512f-rcigrd-intel"
323     run_dump_test "avx512f-rcigrd"
324     run_dump_test "avx512f-rcigrne-intel"
325     run_dump_test "avx512f-rcigrne"
326     run_dump_test "avx512f-rcigru-intel"
327     run_dump_test "avx512f-rcigru"
328     run_dump_test "avx512f-rcigrz-intel"
329     run_dump_test "avx512f-rcigrz"
330     run_dump_test "clwb"
331     run_dump_test "clwb-intel"
332     run_dump_test "pcommit"
333     run_dump_test "pcommit-intel"
334     run_dump_test "avx512ifma"
335     run_dump_test "avx512ifma-intel"
336     run_dump_test "avx512ifma_vl"
337     run_dump_test "avx512ifma_vl-intel"
338     run_dump_test "avx512vbmi"
339     run_dump_test "avx512vbmi-intel"
340     run_dump_test "avx512vbmi_vl"
341     run_dump_test "avx512vbmi_vl-intel"
342     run_dump_test "clzero"
343     run_dump_test "disassem"
344     run_dump_test "mwaitx-bdver4"
345     run_list_test "mwaitx-reg"
346
347     # These tests require support for 8 and 16 bit relocs,
348     # so we only run them for ELF and COFF targets.
349     if {[is_elf_format] || [istarget "*-*-coff*"]} then {
350         run_dump_test "reloc"
351         run_dump_test "jump16"
352         run_list_test "white" "-al --listing-lhs-width=3"
353
354         # These tests should in theory work for PE targets as well,
355         # but the relocs we currently produce are slightly different
356         # from those produced for ELF/COFF based toolchains.
357         # So for now we ignore PE targets.
358         run_dump_test "absrel"
359         if {[istarget "*-*-coff*"]} then {
360             run_dump_test "pcrel"
361         }
362     }
363
364     # ELF specific tests
365     if [is_elf_format] then {
366         # PIC is only supported on ELF targets.
367         run_dump_test "intelpic"
368
369         run_dump_test "pcrel-elf"
370         run_dump_test "relax"
371         run_dump_test "gotpc"
372         run_dump_test "tlsd"
373         run_dump_test "tlspic"
374         run_dump_test "tlsnopic"
375         run_dump_test "bss"
376         run_dump_test "reloc32"
377         run_list_test "reloc32" "--defsym _bad_=1"
378         run_dump_test "mixed-mode-reloc32"
379         run_dump_test "att-regs"
380         run_dump_test "intel-got32"
381         run_dump_test "intel-regs"
382         run_list_test "inval-equ-1" "-al"
383         run_list_test "inval-equ-2" "-al"
384         run_dump_test "ifunc"
385         run_list_test "ifunc-2"
386         run_dump_test "ifunc-3"
387         run_list_test "l1om-inval" "-march=l1om --32"
388         run_list_test "k1om-inval" "-march=k1om --32"
389         run_dump_test "localpic"
390         run_dump_test "debug1"
391
392         run_dump_test "dw2-compress-2"
393         run_dump_test "dw2-compressed-2"
394
395         run_dump_test "bad-size"
396
397         run_dump_test "size-1"
398         run_dump_test "size-2"
399         run_dump_test "size-3"
400         run_dump_test "size-4"
401
402         run_dump_test "note"
403
404         run_dump_test "relax-3"
405         run_dump_test "relax-4"
406
407         run_dump_test "got"
408
409         if {![istarget "*-*-nacl*"]} then {
410             run_dump_test "iamcu-1"
411             run_dump_test "iamcu-2"
412             run_dump_test "iamcu-3"
413             run_list_test "iamcu-inval-1" "-march=iamcu -al"
414             run_list_test "iamcu-inval-2" "-march=iamcu -al"
415             run_list_test "iamcu-inval-3" "-march=iamcu+sse4 -al"
416         }
417     }
418
419     # This is a PE specific test.
420     if { [istarget "*-*-cygwin*"] || [istarget "*-*-pe"]
421          || [istarget "*-*-mingw*"]
422     } then {
423         run_dump_test "secrel"
424     }
425
426     # Miscellaneous tests.
427     run_dump_test "pr12589-1"
428
429     set ASFLAGS "$old_ASFLAGS"
430 }
431
432 # Common tests
433 if [expr [istarget "i*86-*-*"] || [istarget "x86_64-*-*"]] then {
434     if {![istarget "i*86-*-elfiamcu"]} then {
435         run_dump_test "intel-expr"
436         run_dump_test "string-ok"
437     }
438     run_list_test "string-bad" ""
439     run_list_test "reg-bad" ""
440     run_list_test "space1" "-al"
441     run_dump_test rept
442     if [is_elf_format] then {
443         run_list_test_stdin "list-1" "-al"
444         run_list_test_stdin "list-2" "-al"
445         run_list_test_stdin "list-3" "-al"
446         run_dump_test "dw2-compress-1"
447         run_dump_test "dw2-compress-3"
448         run_dump_test "dw2-compressed-1"
449         run_dump_test "dw2-compressed-3"
450     }
451 }
452
453 if [expr ([istarget "i*86-*-*"] || [istarget "x86_64-*-*"]) && [gas_64_check]] then {
454
455     global ASFLAGS
456     set old_ASFLAGS "$ASFLAGS"
457     set ASFLAGS "$ASFLAGS --64"
458
459     run_dump_test "x86_64"
460     run_dump_test "x86_64-intel"
461     run_dump_test "x86-64-addr32"
462     run_dump_test "x86-64-addr32-intel"
463     run_dump_test "x86-64-opcode"
464     run_dump_test "x86-64-intel64"
465     if { ![istarget "*-*-mingw*"] } then {
466       run_dump_test "x86-64-pcrel"
467       run_dump_test "x86-64-disassem"
468     } else {
469       run_dump_test "x86-64-w64-pcrel"
470     }
471     run_dump_test "x86-64-rip"
472     run_dump_test "x86-64-rip-intel"
473     run_dump_test "x86-64-stack"
474     run_dump_test "x86-64-stack-intel"
475     run_dump_test "x86-64-stack-suffix"
476     run_list_test "x86-64-inval" "-al"
477     run_list_test "x86-64-segment" "-al"
478     run_dump_test "x86-64-segovr"
479     run_list_test "x86-64-inval-seg" "-al"
480     run_dump_test "x86-64-branch"
481     run_dump_test "x86-64-relax-1"
482     run_dump_test "svme64"
483     run_dump_test "x86-64-amdfam10"
484     run_dump_test "x86-64-vmx"
485     run_dump_test "x86-64-vmfunc"
486     run_dump_test "immed64"
487     run_dump_test "x86-64-sse3"
488     run_dump_test "x86-64-crx"
489     run_dump_test "x86-64-crx-suffix"
490     run_dump_test "x86-64-drx"
491     run_dump_test "x86-64-drx-suffix"
492     run_dump_test "x86-64-cdr"
493     run_dump_test "x86-64-ssse3"
494     run_dump_test "x86-64-rep"
495     run_dump_test "x86-64-rep-suffix"
496     run_list_test "x86-64-inval-rep" "-al"
497     run_dump_test "x86-64-lock-1"
498     run_dump_test "x86-64-lock-1-intel"
499     run_list_test "x86-64-lockbad-1" "-al"
500     run_dump_test "x86-64-long-1"
501     run_dump_test "x86-64-long-1-intel"
502     run_dump_test "x86-64-cbw"
503     run_dump_test "x86-64-cbw-intel"
504     run_dump_test "x86-64-io"
505     run_dump_test "x86-64-io-intel"
506     run_dump_test "x86-64-io-suffix"
507     run_dump_test "x86-64-gidt"
508     run_dump_test "x86-64-nops"
509     run_dump_test "x86-64-nops-1"
510     run_dump_test "x86-64-nops-1-g64"
511     run_dump_test "x86-64-nops-1-k8"
512     run_dump_test "x86-64-nops-1-core2"
513     run_dump_test "x86-64-nops-1-pentium"
514     run_dump_test "x86-64-nops-2"
515     run_dump_test "x86-64-nops-3"
516     run_dump_test "x86-64-nops-4"
517     run_dump_test "x86-64-nops-4-core2"
518     run_dump_test "x86-64-nops-4-k8"
519     run_dump_test "x86-64-nops-5"
520     run_dump_test "x86-64-nops-5-k8"
521     run_dump_test "x86-64-sse4_1"
522     run_dump_test "x86-64-sse4_1-intel"
523     run_dump_test "x86-64-sse4_2"
524     run_dump_test "x86-64-sse4_2-intel"
525     run_dump_test "x86-64-crc32"
526     run_dump_test "x86-64-crc32-intel"
527     run_list_test "x86-64-inval-crc32" "-al"
528     run_dump_test "x86-64-simd"
529     run_dump_test "x86-64-simd-intel"
530     run_dump_test "x86-64-simd-suffix"
531     run_dump_test "x86-64-mem"
532     run_dump_test "x86-64-mem-intel"
533     run_dump_test "x86-64-reg"
534     run_dump_test "x86-64-reg-intel"
535     run_dump_test "x86-64-sib"
536     run_dump_test "x86-64-sib-intel"
537     run_dump_test "x86-64-disp"
538     run_dump_test "x86-64-disp-intel"
539     run_dump_test "x86-64-disp32"
540     run_dump_test "rexw"
541     run_list_test "x86-64-specific-reg"
542     run_list_test "x86-64-suffix-bad"
543     run_dump_test "x86-64-fxsave"
544     run_dump_test "x86-64-fxsave-intel"
545     run_dump_test "x86-64-arch-1"
546     run_dump_test "x86-64-arch-2"
547     run_dump_test "x86-64-arch-3"
548     run_dump_test "x86-64-arch-2-lzcnt"
549     run_dump_test "x86-64-arch-2-prefetchw"
550     run_dump_test "x86-64-arch-2-bdver1"
551     run_dump_test "x86-64-arch-2-bdver2"
552     run_dump_test "x86-64-arch-2-bdver3"
553     run_dump_test "x86-64-arch-2-bdver4"
554     run_dump_test "x86-64-arch-3-znver1"
555     run_dump_test "x86-64-arch-2-btver1"
556     run_dump_test "x86-64-arch-2-btver2"
557     run_list_test "x86-64-arch-2-1" "-march=generic64 -I${srcdir}/$subdir -al"
558     run_list_test "x86-64-arch-2-2" "-march=generic64+cx16 -I${srcdir}/$subdir -al"
559     run_dump_test "x86-64-xsave"
560     run_dump_test "x86-64-xsave-intel"
561     run_dump_test "x86-64-aes"
562     run_dump_test "x86-64-aes-intel"
563     run_dump_test "x86-64-clmul"
564     run_dump_test "x86-64-clmul-intel"
565     run_dump_test "x86-64-avx"
566     run_dump_test "x86-64-avx-intel"
567     run_dump_test "x86-64-avx-scalar"
568     run_dump_test "x86-64-avx-scalar-intel"
569     run_dump_test "x86-64-avx256int"
570     run_dump_test "x86-64-avx256int-intel"
571     run_dump_test "x86-64-avx2"
572     run_dump_test "x86-64-avx2-intel"
573     run_dump_test "x86-64-avx-gather"
574     run_dump_test "x86-64-avx-gather-intel"
575     run_dump_test "x86-64-avx512f"
576     run_dump_test "x86-64-avx512f-intel"
577     run_dump_test "x86-64-avx512f-opts"
578     run_dump_test "x86-64-avx512f-opts-intel"
579     run_dump_test "x86-64-avx512f-nondef"
580     run_dump_test "x86-64-avx512cd"
581     run_dump_test "x86-64-avx512cd-intel"
582     run_dump_test "x86-64-avx512er"
583     run_dump_test "x86-64-avx512er-intel"
584     run_dump_test "x86-64-avx512pf"
585     run_dump_test "x86-64-avx512pf-intel"
586     run_dump_test "x86-64-evex-lig256"
587     run_dump_test "x86-64-evex-lig512"
588     run_dump_test "x86-64-evex-lig256-intel"
589     run_dump_test "x86-64-evex-lig512-intel"
590     run_dump_test "x86-64-evex-wig1"
591     run_dump_test "x86-64-evex-wig1-intel"
592     run_dump_test "x86-64-sse2avx"
593     run_list_test "x86-64-inval-avx" "-al"
594     run_list_test "x86-64-inval-avx512f" "-al"
595     run_dump_test "x86-64-sse-check"
596     run_dump_test "x86-64-sse-check-none"
597     run_dump_test "x86-64-sse-check-warn"
598     run_list_test "x86-64-sse-check-error" "-msse-check=error -I${srcdir}/$subdir -al"
599     run_dump_test "x86-64-vgather-check"
600     run_dump_test "x86-64-vgather-check-none"
601     run_dump_test "x86-64-vgather-check-warn"
602     run_list_test "x86-64-vgather-check-error" "-moperand-check=error -I${srcdir}/$subdir"
603     run_dump_test "x86-64-sse-noavx"
604     run_dump_test "x86-64-movbe"
605     run_dump_test "x86-64-movbe-intel"
606     run_list_test "x86-64-inval-movbe" "-al"
607     run_dump_test "x86-64-ept"
608     run_dump_test "x86-64-ept-intel"
609     run_list_test "x86-64-inval-ept" "-al"
610     run_dump_test "x86-64-invpcid"
611     run_dump_test "x86-64-invpcid-intel"
612     run_list_test "x86-64-inval-invpcid" "-al"
613     run_dump_test "x86-64-opts"
614     run_dump_test "x86-64-opts-intel"
615     run_dump_test "x86-64-sse2avx-opts"
616     run_dump_test "x86-64-sse2avx-opts-intel"
617     run_dump_test "x86-64-avx-swap"
618     run_dump_test "x86-64-avx-swap-intel"
619     run_dump_test "x86-64-bmi2"
620     run_dump_test "x86-64-bmi2-intel"
621     run_dump_test "x86-64-fma"
622     run_dump_test "x86-64-fma-intel"
623     run_dump_test "x86-64-fma-scalar"
624     run_dump_test "x86-64-fma-scalar-intel"
625     run_dump_test "x86-64-hle"
626     run_dump_test "x86-64-hle-intel"
627     run_list_test "x86-64-hlebad" "-al"
628     run_dump_test "x86-64-rtm"
629     run_dump_test "x86-64-rtm-intel"
630     run_dump_test "x86-64-fma4"
631     run_dump_test "x86-64-lwp"
632     run_dump_test "x86-64-xop"
633     run_dump_test "x86-64-bmi"
634     run_dump_test "x86-64-bmi-intel"
635     run_dump_test "x86-64-tbm"
636     run_dump_test "x86-64-tbm-intel"
637     run_dump_test "x86-64-f16c"
638     run_dump_test "x86-64-f16c-intel"
639     run_dump_test "x86-64-fsgs"
640     run_dump_test "x86-64-fsgs-intel"
641     run_dump_test "x86-64-rdrnd"
642     run_dump_test "x86-64-rdrnd-intel"
643     run_dump_test "x86-64-bundle"
644     run_dump_test "x86-64-adx"
645     run_dump_test "x86-64-adx-intel"
646     run_dump_test "x86-64-rdseed"
647     run_dump_test "x86-64-rdseed-intel"
648     run_dump_test "x86-64-prefetch"
649     run_dump_test "x86-64-prefetch-intel"
650     run_dump_test "x86-64-smap"
651     run_dump_test "x86-64-mpx"
652     run_list_test "x86-64-mpx-inval-1" "-al"
653     run_list_test "x86-64-mpx-inval-2" "-al"
654     run_dump_test "x86-64-mpx-addr32"
655     run_dump_test "x86-64-mpx-add-bnd-prefix"
656     run_dump_test "x86-64-sha"
657     run_dump_test "x86-64-clflushopt"
658     run_dump_test "x86-64-clflushopt-intel"
659     run_dump_test "x86-64-xsavec"
660     run_dump_test "x86-64-xsavec-intel"
661     run_dump_test "x86-64-xsaves"
662     run_dump_test "x86-64-xsaves-intel"
663     run_dump_test "x86-64-prefetchwt1"
664     run_dump_test "x86-64-prefetchwt1-intel"
665     run_dump_test "x86-64-se1"
666     run_dump_test "x86-64-equ"
667     run_dump_test "x86-64-avx512f_vl-intel"
668     run_dump_test "x86-64-avx512f_vl-opts-intel"
669     run_dump_test "x86-64-avx512f_vl-opts"
670     run_dump_test "x86-64-avx512f_vl-wig1-intel"
671     run_dump_test "x86-64-avx512f_vl-wig1"
672     run_dump_test "x86-64-avx512f_vl"
673     run_dump_test "x86-64-avx512cd_vl-intel"
674     run_dump_test "x86-64-avx512cd_vl"
675     run_dump_test "x86-64-avx512bw-intel"
676     run_dump_test "x86-64-avx512bw-opts-intel"
677     run_dump_test "x86-64-avx512bw-opts"
678     run_dump_test "x86-64-avx512bw-wig1-intel"
679     run_dump_test "x86-64-avx512bw-wig1"
680     run_dump_test "x86-64-avx512bw"
681     run_dump_test "x86-64-avx512bw_vl-intel"
682     run_dump_test "x86-64-avx512bw_vl-opts-intel"
683     run_dump_test "x86-64-avx512bw_vl-opts"
684     run_dump_test "x86-64-avx512bw_vl-wig1-intel"
685     run_dump_test "x86-64-avx512bw_vl-wig1"
686     run_dump_test "x86-64-avx512bw_vl"
687     run_dump_test "x86-64-avx512dq-intel"
688     run_dump_test "x86-64-avx512dq"
689     run_dump_test "x86-64-avx512dq_vl-intel"
690     run_dump_test "x86-64-avx512dq_vl"
691     run_dump_test "x86-64-suffix"
692     run_dump_test "x86-64-suffix-intel"
693     run_dump_test "x86-64-avx512dq-rcigrd-intel"
694     run_dump_test "x86-64-avx512dq-rcigrd"
695     run_dump_test "x86-64-avx512dq-rcigrne-intel"
696     run_dump_test "x86-64-avx512dq-rcigrne"
697     run_dump_test "x86-64-avx512dq-rcigru-intel"
698     run_dump_test "x86-64-avx512dq-rcigru"
699     run_dump_test "x86-64-avx512dq-rcigrz-intel"
700     run_dump_test "x86-64-avx512dq-rcigrz"
701     run_dump_test "x86-64-avx512er-rcigrd-intel"
702     run_dump_test "x86-64-avx512er-rcigrd"
703     run_dump_test "x86-64-avx512er-rcigrne-intel"
704     run_dump_test "x86-64-avx512er-rcigrne"
705     run_dump_test "x86-64-avx512er-rcigru-intel"
706     run_dump_test "x86-64-avx512er-rcigru"
707     run_dump_test "x86-64-avx512er-rcigrz-intel"
708     run_dump_test "x86-64-avx512er-rcigrz"
709     run_dump_test "x86-64-avx512f-rcigrd-intel"
710     run_dump_test "x86-64-avx512f-rcigrd"
711     run_dump_test "x86-64-avx512f-rcigrne-intel"
712     run_dump_test "x86-64-avx512f-rcigrne"
713     run_dump_test "x86-64-avx512f-rcigru-intel"
714     run_dump_test "x86-64-avx512f-rcigru"
715     run_dump_test "x86-64-avx512f-rcigrz-intel"
716     run_dump_test "x86-64-avx512f-rcigrz"
717     run_dump_test "x86-64-clwb"
718     run_dump_test "x86-64-clwb-intel"
719     run_dump_test "x86-64-pcommit"
720     run_dump_test "x86-64-pcommit-intel"
721     run_dump_test "x86-64-avx512ifma"
722     run_dump_test "x86-64-avx512ifma-intel"
723     run_dump_test "x86-64-avx512ifma_vl"
724     run_dump_test "x86-64-avx512ifma_vl-intel"
725     run_dump_test "x86-64-avx512vbmi"
726     run_dump_test "x86-64-avx512vbmi-intel"
727     run_dump_test "x86-64-avx512vbmi_vl"
728     run_dump_test "x86-64-avx512vbmi_vl-intel"
729     run_dump_test "x86-64-clzero"
730     run_dump_test "x86-64-mwaitx-bdver4"
731     run_list_test "x86-64-mwaitx-reg"
732
733     if { ![istarget "*-*-aix*"]
734       && ![istarget "*-*-beos*"]
735       && ![istarget "*-*-*bsd*"]
736       && ![istarget "*-*-chaos*"]
737       && ![istarget "*-*-kaos*"]
738       && ![istarget "*-*-lynx*"]
739       && ![istarget "*-*-moss*"]
740       && ![istarget "*-*-nto-qnx*"]
741       && ![istarget "*-*-rtems*"]
742       && ![istarget "*-*-sco*"]
743       && ![istarget "*-*-solaris*"]
744       && ![istarget "*-*-sysv*"] } then {
745         run_dump_test "rex"
746     }
747
748     # ELF specific tests
749     if [is_elf_format] then {
750         # Verify that @unwind works.
751         run_dump_test "x86-64-unwind"
752
753         run_dump_test "reloc64"
754         run_list_test "reloc64" "--defsym _bad_=1"
755         run_dump_test "mixed-mode-reloc64"
756         run_dump_test "x86-64-ifunc"
757         run_dump_test "x86-64-opcode-inval"
758         run_dump_test "x86-64-opcode-inval-intel"
759         run_dump_test "intel-got64"
760         run_dump_test "l1om"
761         run_dump_test "k1om"
762         run_dump_test "x86-64-localpic"
763         run_dump_test "debug1"
764         run_dump_test "x86-64-mpx-branch-1"
765         run_dump_test "x86-64-mpx-branch-2"
766
767         run_dump_test "x86-64-dw2-compress-2"
768         run_dump_test "x86-64-dw2-compressed-2"
769
770         run_dump_test "x86-64-size-1"
771         run_dump_test "x86-64-size-2"
772         run_dump_test "x86-64-size-3"
773         run_dump_test "x86-64-size-4"
774         run_dump_test "x86-64-size-5"
775         run_list_test "x86-64-size-inval-1" "-al"
776
777         run_dump_test "x86-64-relax-2"
778         run_dump_test "x86-64-relax-3"
779
780         run_dump_test "x86-64-jump"
781         run_dump_test "x86-64-branch-2"
782         run_list_test "x86-64-branch-3" "-al -mintel64"
783     }
784
785     set ASFLAGS "$old_ASFLAGS"
786 }