]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - gas/testsuite/gas/i386/i386.exp
PR31796, Internal error in write_function_pdata at obj-coff-seh
[thirdparty/binutils-gdb.git] / gas / testsuite / gas / i386 / i386.exp
CommitLineData
fd67aa11 1# Copyright (C) 2012-2024 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#
848471ac
AM
20if { ![istarget "i*86-*-*"] && ![istarget "x86_64-*-*"] } then {
21 return
22}
23
b96d3a20
JH
24proc gas_64_check { } {
25 global NM
26 global NMFLAGS
252b5132 27
7f6a71ff
JM
28 set status [gas_host_run "$NM $NMFLAGS --help" ""]
29 return [regexp "targets:.*x86-64" [lindex $status 1]];
b96d3a20 30}
6e0b89ee 31
b96d3a20
JH
32proc gas_32_check { } {
33 global NM
34 global NMFLAGS
b96d3a20 35
7f6a71ff
JM
36 set status [gas_host_run "$NM $NMFLAGS --help" ""]
37 return [regexp "targets:.*i386" [lindex $status 1]];
b96d3a20
JH
38}
39
d7f449c0
L
40proc gas_bfd64_check { } {
41 global AS
42
43 set status [gas_host_run "$AS --help" ""]
b00af7c8 44 return [regexp "32bit/64bit" [lindex $status 1]];
d7f449c0
L
45}
46
848471ac 47if [gas_32_check] then {
b96d3a20
JH
48 global ASFLAGS
49 set old_ASFLAGS "$ASFLAGS"
50 set ASFLAGS "$ASFLAGS --32"
252b5132 51
1efbbeb4 52 run_list_test "float" "-al -mmnemonic=att"
bd5dea88 53 run_list_test "general" "-al --listing-lhs-width=2"
47c0279b 54 run_list_test "inval" "-aln"
9e5e5283 55 run_list_test "inval-16" "-al"
4cc91dba
L
56 run_list_test "segment" "-al"
57 run_list_test "inval-seg" "-al"
56ffb741 58 run_list_test "inval-reg" "-al"
252b5132 59 run_list_test "modrm" "-al --listing-lhs-width=2"
3f9ed93b 60 run_dump_test "naked"
252b5132 61 run_dump_test "opcode"
8a82f7e3
JB
62 run_dump_test "opcode-intel"
63 run_dump_test "opcode-suffix"
cc5ca5ce 64 run_dump_test "intel"
d53e6b98 65 run_dump_test "intel-intel"
be66c492 66 run_dump_test "intel16"
9306ca4a
JB
67 run_list_test "intelbad" ""
68 run_dump_test "intelok"
213f15cf 69 run_dump_test "intelok2"
252b5132 70 run_dump_test "prefix"
7a8655d2 71 run_list_test "prefix32" "-al"
edd67638 72 run_dump_test "insn-32"
514a8bb0 73 run_dump_test "lea"
77c59789 74 run_dump_test "lea16"
252b5132 75 run_dump_test "amd"
c608c12e 76 run_dump_test "katmai"
a3d1c52b 77 run_dump_test "jump"
a28fedbc 78 run_dump_test "movs32"
c07315e0 79 run_dump_test "movz32"
7898a2b1
L
80 run_dump_test "relax-1"
81 run_dump_test "relax-2"
de9d65b5
JH
82 run_dump_test "ssemmx2"
83 run_dump_test "sse2"
e1a1babd 84 run_dump_test "sse2-16bit"
4dd8d67b 85 run_dump_test "sub"
bc2ae10b 86 run_dump_test "sse3"
eedb0f2c 87 run_dump_test "sse3-intel"
2033b4b9 88 run_dump_test "sib"
db51cc60 89 run_dump_test "sib-intel"
0e1147d9 90 run_dump_test "disp"
6cee4cda 91 run_dump_test "disp-intel"
f8a5c266 92 run_dump_test "disp32"
4fe51f7d 93 run_list_test "disp-imm-16"
a50187b2
JB
94 if { [gas_bfd64_check] } {
95 run_dump_test "disp-imm-32"
96 }
90700ea2 97 run_dump_test "vmx"
8729a6f6 98 run_dump_test "vmfunc"
47dd174c 99 run_dump_test "smx"
22cbf2e7 100 run_dump_test "suffix"
4b4c407a 101 run_dump_test "suffix-intel"
83b16ac6 102 run_list_test "suffix-bad"
9cd96992 103 run_dump_test "immed32"
5cc00775 104 run_list_test "cst-diag" "-al"
4d1bb795 105 run_dump_test "equ"
4faaa10f 106 run_list_test "equ-2" "-al"
8a6fb3f9 107 run_list_test "equ-bad"
5157cd8a 108 run_dump_test "divide"
9d299bea 109 run_dump_test "quoted"
6acf9130 110 run_dump_test "quoted2"
014fbcda 111 run_dump_test "unary"
26f07657 112 run_dump_test "padlock"
c4a530c5
JB
113 run_dump_test "crx"
114 run_list_test "cr-err" ""
68f34464 115 run_dump_test "cdr"
30123838 116 run_dump_test "svme"
e4971956 117 run_dump_test "svme16"
050dfa73 118 run_dump_test "amdfam10"
bc2ae10b 119 run_dump_test "ssse3"
35c52694
L
120 run_dump_test "rep"
121 run_dump_test "rep-suffix"
d5de92cf 122 run_list_test "inval-rep" "-al"
c32fa91d
L
123 run_dump_test "lock-1"
124 run_dump_test "lock-1-intel"
125 run_list_test "lockbad-1" "-al"
f16cd0d5
L
126 run_dump_test "long-1"
127 run_dump_test "long-1-intel"
15965411 128 run_dump_test "nops"
76bc74dc 129 run_dump_test "nops16-1"
ccc9c027
L
130 run_dump_test "nops-1"
131 run_dump_test "nops-1-i386"
76bc74dc 132 run_dump_test "nops-1-i386-i686"
ccc9c027 133 run_dump_test "nops-1-i686"
76bc74dc 134 run_dump_test "nops-1-k8"
bc2ae10b 135 run_dump_test "nops-1-core2"
ccc9c027
L
136 run_dump_test "nops-2"
137 run_dump_test "nops-2-i386"
bc2ae10b 138 run_dump_test "nops-2-core2"
c0f91ba6 139 run_dump_test "nops-3"
76bc74dc
L
140 run_dump_test "nops-3-i386"
141 run_dump_test "nops-3-i686"
142 run_dump_test "nops-4"
143 run_dump_test "nops-4-i386"
144 run_dump_test "nops-4-i686"
a586129e 145 run_dump_test "nops-4a-i686"
fbf3f584
L
146 run_dump_test "nops-5"
147 run_dump_test "nops-5-i686"
a586129e 148 run_dump_test "nops-6"
3ae729d5 149 run_dump_test "nops-7"
31941983 150 run_dump_test "nops-8"
bd483d21 151 run_dump_test "nops-9"
d12c7ab8 152 run_dump_test "nops-10"
a961a1e1 153 run_dump_test "noreg16"
c006a730 154 run_list_test "noreg16"
8bbb3ad8 155 run_dump_test "noreg16-data32"
a961a1e1 156 run_dump_test "noreg32"
c006a730 157 run_list_test "noreg32"
8bbb3ad8 158 run_dump_test "noreg32-data16"
65fca059
JB
159 run_list_test "movx16" "-I${srcdir}/$subdir -al"
160 run_list_test "movx32" "-al"
48ef937e 161 run_dump_test "sizing32"
539e75ad
L
162 run_dump_test "addr16"
163 run_dump_test "addr32"
dc2be329 164 run_dump_test "code16"
9c33702b 165 run_list_test "oversized16" "-al"
a442cac5
JB
166 run_dump_test "wrap32-text"
167 run_dump_test "wrap32-data"
42903f7f 168 run_dump_test "sse4_1"
c3ad16c0 169 run_dump_test "sse4_1-intel"
381d071f 170 run_dump_test "sse4_2"
c3ad16c0 171 run_dump_test "sse4_2-intel"
9344ff29
L
172 run_dump_test "crc32"
173 run_dump_test "crc32-intel"
2875b28a 174 run_dump_test "crc32-suffix"
20592a94 175 run_list_test "inval-crc32" "-al"
09a2c6cf
L
176 run_dump_test "simd"
177 run_dump_test "simd-intel"
8a72226a 178 run_dump_test "simd-suffix"
1cb0ab18 179 run_dump_test "simd16"
d9a5e5e5
L
180 run_dump_test "mem"
181 run_dump_test "mem-intel"
b844680a
L
182 run_dump_test "reg"
183 run_dump_test "reg-intel"
ca61edf2 184 run_dump_test "i386"
a8484f96 185 run_dump_test "i386-intel"
9d141669
L
186 run_dump_test "compat"
187 run_dump_test "compat-intel"
3df781c5 188 run_dump_test "compat-intel2"
8d79a8c8
L
189 run_dump_test "arch-1"
190 run_dump_test "arch-2"
191 run_dump_test "arch-3"
b414985b 192 run_dump_test "arch-4"
e0329a22
L
193 run_dump_test "arch-5"
194 run_dump_test "arch-6"
195 run_dump_test "arch-7"
3629bb00 196 run_dump_test "arch-9"
6305a203 197 run_dump_test "arch-10"
6c30d220 198 run_dump_test "arch-10-lzcnt"
e2e1fcde 199 run_dump_test "arch-10-prefetchw"
160a30bb 200 run_dump_test "arch-10-bdver1"
5c5acbbd 201 run_dump_test "arch-10-bdver2"
5e5c50d3 202 run_dump_test "arch-10-bdver3"
c7b0bd56 203 run_dump_test "arch-10-bdver4"
029f3522 204 run_dump_test "arch-13-znver1"
a9660a6f 205 run_dump_test "arch-13-znver2"
646cc3e0 206 run_dump_test "arch-14-znver3"
b0e8fa7f 207 run_dump_test "arch-14-znver4"
b143c979 208 run_dump_test "arch-15-znver5"
7b458c12
L
209 run_dump_test "arch-10-btver1"
210 run_dump_test "arch-10-btver2"
6305a203
L
211 run_list_test "arch-10-1" "-march=generic32 -I${srcdir}/$subdir -al"
212 run_list_test "arch-10-2" "-march=i686 -I${srcdir}/$subdir -al"
1848e567
L
213 run_list_test "arch-10-3" "-march=i686+mmx+sse4.2 -I${srcdir}/$subdir -al"
214 run_list_test "arch-10-4" "-march=i686+mmx+sse4+vmx+smx -I${srcdir}/$subdir -al"
ed971d9f 215 run_list_test "arch-10-5" "-march=generic32+i686 -al"
cafa5ef7 216 run_list_test "arch-10-6" "-march=generic32+monitor -I${srcdir}/$subdir -aln"
115c7c25
L
217 run_dump_test "arch-11"
218 run_dump_test "arch-12"
029f3522 219 run_dump_test "arch-13"
646cc3e0 220 run_dump_test "arch-14"
b0e8fa7f 221 run_dump_test "arch-14-1"
b143c979 222 run_dump_test "arch-15"
3ce2ebcf 223 run_list_test "arch-dflt" "-march=generic32 -al"
f68697e8 224 run_list_test "arch-stk" "-march=generic32 -al"
309d3373
JB
225 run_dump_test "8087"
226 run_dump_test "287"
227 run_dump_test "387"
228 run_list_test "no87" "-al"
229 run_list_test "no87-2" "-march=i686+no87 -al"
1848e567 230 run_list_test "no87-3" "-al"
0e0eea78
JB
231 run_list_test "stN" "-al"
232 run_list_test "fpu"
293f5f65
L
233 run_list_test "nommx-1" "-al"
234 run_list_test "nommx-2" "-march=core+nommx -al"
235 run_list_test "nommx-3" "-march=+nommx -al"
236 run_list_test "nosse-1" "-al"
237 run_list_test "nosse-2" "-march=core+nosse -al"
238 run_list_test "nosse-3" "-march=+nosse -al"
1848e567
L
239 run_list_test "nosse-4" "-al"
240 run_dump_test "nosse-5"
293f5f65
L
241 run_list_test "noavx-1" "-al"
242 run_list_test "noavx-2" "-march=+noavx -al"
1848e567
L
243 run_list_test "noavx-3" "-al"
244 run_dump_test "noavx-4"
b236b82a 245 run_list_test "noavx512-1" "-almn"
4fc85f37 246 run_list_test "noavx512-2" "-almn --divide"
3a2430e0 247 run_dump_test "noextreg"
6e041cf4 248 run_dump_test "xmmhi32"
475a2301
L
249 run_dump_test "xsave"
250 run_dump_test "xsave-intel"
c0f3af97
L
251 run_dump_test "aes"
252 run_dump_test "aes-intel"
253 run_dump_test "clmul"
254 run_dump_test "clmul-intel"
255 run_dump_test "avx"
256 run_dump_test "avx-intel"
539f890d
L
257 run_dump_test "avx-scalar"
258 run_dump_test "avx-scalar-intel"
d5f787c2 259 run_dump_test "avx-scalar-2"
c1dc7af5 260 run_dump_test "avx-16bit"
6c30d220
L
261 run_dump_test "avx256int"
262 run_dump_test "avx256int-intel"
263 run_dump_test "avx2"
264 run_dump_test "avx2-intel"
265 run_dump_test "avx-gather"
266 run_dump_test "avx-gather-intel"
03751133
L
267 run_dump_test "avx-wig"
268 run_dump_test "avx2-wig"
fd71a375 269 run_dump_test "vex-lig-2"
43234a1e
L
270 run_dump_test "avx512f"
271 run_dump_test "avx512f-intel"
272 run_dump_test "avx512f-opts"
273 run_dump_test "avx512f-opts-intel"
274 run_dump_test "avx512f-nondef"
929f69fa 275 run_list_test "avx512f-plain" "-al"
6e041cf4 276 run_dump_test "avx512f-ymm"
c1dc7af5 277 run_dump_test "avx512f-16bit"
43234a1e
L
278 run_dump_test "avx512cd"
279 run_dump_test "avx512cd-intel"
280 run_dump_test "avx512er"
281 run_dump_test "avx512er-intel"
282 run_dump_test "avx512pf"
283 run_dump_test "avx512pf-intel"
d20dee9e 284 run_dump_test "evex"
43234a1e
L
285 run_dump_test "evex-lig256"
286 run_dump_test "evex-lig512"
287 run_dump_test "evex-lig256-intel"
288 run_dump_test "evex-lig512-intel"
04e2a182 289 run_dump_test "evex-lig-2"
43234a1e
L
290 run_dump_test "evex-wig1"
291 run_dump_test "evex-wig1-intel"
185a798e 292 run_dump_test "evex-no-scale-32"
c0f3af97 293 run_dump_test "sse2avx"
c8480b58 294 run_dump_test "unaligned-vector-move"
c0f3af97 295 run_list_test "inval-avx" "-al"
43234a1e 296 run_list_test "inval-avx512f" "-al"
9186c494 297 run_list_test "inval-avx512vl" "-al"
daf50ae7 298 run_dump_test "sse-check"
cb19c032 299 run_dump_test "sse-check-none"
daf50ae7
L
300 run_dump_test "sse-check-warn"
301 run_list_test "sse-check-error" "-msse-check=error -I${srcdir}/$subdir -al"
7bab8ab5
JB
302 run_dump_test "vgather-check"
303 run_dump_test "vgather-check-none"
304 run_dump_test "vgather-check-warn"
305 run_list_test "vgather-check-error" "-moperand-check=error -I${srcdir}/$subdir"
9ba52a26 306 run_dump_test "sse-noavx"
f1f8f695
L
307 run_dump_test "movbe"
308 run_dump_test "movbe-intel"
9ab00b61 309 run_dump_test "movbe-suffix"
f1f8f695
L
310 run_list_test "inval-movbe" "-al"
311 run_dump_test "ept"
312 run_dump_test "ept-intel"
313 run_list_test "inval-ept" "-al"
6c30d220
L
314 run_dump_test "invpcid"
315 run_dump_test "invpcid-intel"
316 run_list_test "inval-invpcid" "-al"
a5ff0eb2
L
317 run_dump_test "arch-avx-1"
318 run_list_test "arch-avx-1-1" "-march=generic32+avx -I${srcdir}/$subdir -al"
319 run_list_test "arch-avx-1-2" "-march=generic32+aes -I${srcdir}/$subdir -al"
ce2f5b3c
L
320 run_list_test "arch-avx-1-3" "-march=generic32+pclmul -I${srcdir}/$subdir -al"
321 run_list_test "arch-avx-1-4" "-march=generic32+avx+aes -I${srcdir}/$subdir -al"
322 run_list_test "arch-avx-1-5" "-march=generic32+avx+pclmul -I${srcdir}/$subdir -al"
323 run_list_test "arch-avx-1-6" "-march=generic32+aes+pclmul -I${srcdir}/$subdir -al"
929f69fa
JB
324 run_list_test "arch-avx-1-7" "-march=generic32+gfni -I${srcdir}/$subdir -al"
325 run_list_test "arch-avx-1-8" "-march=generic32+avx+gfni -I${srcdir}/$subdir -al"
b6169b20
L
326 run_dump_test "opts"
327 run_dump_test "opts-intel"
328 run_dump_test "sse2avx-opts"
329 run_dump_test "sse2avx-opts-intel"
6c30d220
L
330 run_dump_test "bmi2"
331 run_dump_test "bmi2-intel"
c1dc7af5 332 run_dump_test "bmi2-16bit"
0bfee649
L
333 run_dump_test "fma"
334 run_dump_test "fma-intel"
1c480963
L
335 run_dump_test "fma-scalar"
336 run_dump_test "fma-scalar-intel"
42164a71
L
337 run_dump_test "hle"
338 run_dump_test "hle-intel"
339 run_list_test "hlebad" "-al"
340 run_dump_test "rtm"
341 run_dump_test "rtm-intel"
922d8de8 342 run_dump_test "fma4"
6384fd9e 343 run_dump_test "fma4-lig"
f88c9eb0 344 run_dump_test "lwp"
c1dc7af5 345 run_dump_test "lwp-16bit"
5dd85c99 346 run_dump_test "xop"
6384fd9e 347 run_dump_test "xop-lig"
abfcb414 348 run_dump_test "xop32reg"
f12dc422
L
349 run_dump_test "bmi"
350 run_dump_test "bmi-intel"
c1dc7af5 351 run_dump_test "bmi-16bit"
2a2a0f38
QN
352 run_dump_test "tbm"
353 run_dump_test "tbm-intel"
c1dc7af5 354 run_dump_test "tbm-16bit"
c7b8aa3a
L
355 run_dump_test "f16c"
356 run_dump_test "f16c-intel"
357 run_dump_test "fsgs"
358 run_dump_test "fsgs-intel"
359 run_dump_test "rdrnd"
360 run_dump_test "rdrnd-intel"
fa94de6b
RM
361 run_dump_test "bundle"
362 run_dump_test "bundle-lock"
363 run_dump_test "bundle-bad"
e2e1fcde
L
364 run_dump_test "adx"
365 run_dump_test "adx-intel"
366 run_dump_test "rdseed"
367 run_dump_test "rdseed-intel"
d7189fa5
RM
368 run_dump_test "prefetch"
369 run_dump_test "prefetch-intel"
5c111e37 370 run_dump_test "smap"
7e8b059b
L
371 run_dump_test "mpx"
372 run_list_test "mpx-inval-1" "-al"
327e8c42 373 run_list_test "mpx-inval-2" "-al"
7e8b059b 374 run_dump_test "mpx-add-bnd-prefix"
a23b33b3 375 run_dump_test "mpx-16bit"
1adf7f56 376 run_list_test "bnd" "-al"
a0046408 377 run_dump_test "sha"
963f3586
IT
378 run_dump_test "clflushopt"
379 run_dump_test "clflushopt-intel"
380 run_dump_test "xsavec"
381 run_dump_test "xsavec-intel"
382 run_dump_test "xsaves"
383 run_dump_test "xsaves-intel"
dcf893b5
IT
384 run_dump_test "prefetchwt1"
385 run_dump_test "prefetchwt1-intel"
2cf200a4 386 run_dump_test "se1"
b28d1bda
IT
387 run_dump_test "avx512f_vl-intel"
388 run_dump_test "avx512f_vl-opts-intel"
389 run_dump_test "avx512f_vl-opts"
390 run_dump_test "avx512f_vl-wig1-intel"
391 run_dump_test "avx512f_vl-wig1"
392 run_dump_test "avx512f_vl"
99282af6
IT
393 run_dump_test "avx512cd_vl-intel"
394 run_dump_test "avx512cd_vl"
1ba585e8
IT
395 run_dump_test "avx512bw-intel"
396 run_dump_test "avx512bw-opts-intel"
397 run_dump_test "avx512bw-opts"
398 run_dump_test "avx512bw-wig1-intel"
399 run_dump_test "avx512bw-wig1"
400 run_dump_test "avx512bw"
401 run_dump_test "avx512bw_vl-intel"
402 run_dump_test "avx512bw_vl-opts-intel"
403 run_dump_test "avx512bw_vl-opts"
404 run_dump_test "avx512bw_vl-wig1-intel"
405 run_dump_test "avx512bw_vl-wig1"
406 run_dump_test "avx512bw_vl"
90a915bf
IT
407 run_dump_test "avx512dq-intel"
408 run_dump_test "avx512dq"
4814632e 409 run_list_test "avx512dq-inval"
90a915bf
IT
410 run_dump_test "avx512dq_vl-intel"
411 run_dump_test "avx512dq_vl"
d022bddd
IT
412 run_dump_test "omit-lock-yes"
413 run_dump_test "omit-lock-no"
e4e00185
AS
414 run_dump_test "fence-as-lock-add-yes"
415 run_dump_test "fence-as-lock-add-no"
d3d3c6db
IT
416 run_dump_test "avx512dq-rcigrd-intel"
417 run_dump_test "avx512dq-rcigrd"
418 run_dump_test "avx512dq-rcigrne-intel"
419 run_dump_test "avx512dq-rcigrne"
420 run_dump_test "avx512dq-rcigru-intel"
421 run_dump_test "avx512dq-rcigru"
422 run_dump_test "avx512dq-rcigrz-intel"
423 run_dump_test "avx512dq-rcigrz"
424 run_dump_test "avx512er-rcigrd-intel"
425 run_dump_test "avx512er-rcigrd"
426 run_dump_test "avx512er-rcigrne-intel"
427 run_dump_test "avx512er-rcigrne"
428 run_dump_test "avx512er-rcigru-intel"
429 run_dump_test "avx512er-rcigru"
430 run_dump_test "avx512er-rcigrz-intel"
431 run_dump_test "avx512er-rcigrz"
432 run_dump_test "avx512f-rcigrd-intel"
433 run_dump_test "avx512f-rcigrd"
434 run_dump_test "avx512f-rcigrne-intel"
435 run_dump_test "avx512f-rcigrne"
436 run_dump_test "avx512f-rcigru-intel"
437 run_dump_test "avx512f-rcigru"
438 run_dump_test "avx512f-rcigrz-intel"
439 run_dump_test "avx512f-rcigrz"
c5e7287a
IT
440 run_dump_test "clwb"
441 run_dump_test "clwb-intel"
2cc1b5aa
IT
442 run_dump_test "avx512ifma"
443 run_dump_test "avx512ifma-intel"
444 run_dump_test "avx512ifma_vl"
445 run_dump_test "avx512ifma_vl-intel"
14f195c9
IT
446 run_dump_test "avx512vbmi"
447 run_dump_test "avx512vbmi-intel"
448 run_dump_test "avx512vbmi_vl"
449 run_dump_test "avx512vbmi_vl-intel"
920d2ddc
IT
450 run_dump_test "avx512_4fmaps"
451 run_dump_test "avx512_4fmaps-intel"
920d2ddc 452 run_list_test "avx512_4fmaps-warn"
47acf0bd
IT
453 run_dump_test "avx512_4vnniw"
454 run_dump_test "avx512_4vnniw-intel"
620214f7
IT
455 run_dump_test "avx512_vpopcntdq"
456 run_dump_test "avx512_vpopcntdq-intel"
2548c261 457 run_dump_test "avx512_vpopcntdq_vl"
53467f57
IT
458 run_dump_test "avx512vbmi2"
459 run_dump_test "avx512vbmi2-intel"
460 run_dump_test "avx512vbmi2_vl"
461 run_dump_test "avx512vbmi2_vl-intel"
48521003
IT
462 run_dump_test "avx512f_gfni"
463 run_dump_test "avx512f_gfni-intel"
464 run_dump_test "avx512vl_gfni"
465 run_dump_test "avx512vl_gfni-intel"
8dcf1fad
IT
466 run_dump_test "avx512f_vaes"
467 run_dump_test "avx512f_vaes-intel"
468 run_dump_test "avx512f_vaes-wig1"
8dcf1fad
IT
469 run_dump_test "avx512vl_vaes"
470 run_dump_test "avx512vl_vaes-intel"
471 run_dump_test "avx512vl_vaes-wig1"
ff1982d5
IT
472 run_dump_test "avx512f_vpclmulqdq"
473 run_dump_test "avx512f_vpclmulqdq-intel"
474 run_dump_test "avx512f_vpclmulqdq-wig1"
ff1982d5
IT
475 run_dump_test "avx512vl_vpclmulqdq"
476 run_dump_test "avx512vl_vpclmulqdq-intel"
477 run_dump_test "avx512vl_vpclmulqdq-wig1"
8cfcb765
IT
478 run_dump_test "avx512vnni"
479 run_dump_test "avx512vnni-intel"
480 run_dump_test "avx512vnni_vl"
481 run_dump_test "avx512vnni_vl-intel"
ee6872be
IT
482 run_dump_test "avx512bitalg"
483 run_dump_test "avx512bitalg-intel"
484 run_dump_test "avx512bitalg_vl"
485 run_dump_test "avx512bitalg_vl-intel"
d6aab7a1
XG
486 run_dump_test "avx512_bf16"
487 run_dump_test "avx512_bf16_vl"
488 run_list_test "avx512_bf16_vl-inval"
58bf9b6a 489 run_dump_test "avx-vnni"
57392598 490 run_list_test "avx-vnni-inval"
4321af3e
HW
491 run_dump_test "avx-ifma"
492 run_dump_test "avx-ifma-intel"
493 run_list_test "avx-ifma-inval"
23ae61ad
CL
494 run_dump_test "avx-vnni-int8"
495 run_dump_test "avx-vnni-int8-intel"
a93e3234 496 run_list_test "cmpccxadd-inval"
941f0833
HL
497 run_dump_test "wrmsrns"
498 run_dump_test "wrmsrns-intel"
2188d6ea 499 run_list_test "msrlist-inval"
01d8ce74 500 run_dump_test "avx-ne-convert"
501 run_dump_test "avx-ne-convert-intel"
58bceb18 502 run_list_test "avx-vex" "-almn"
b06311ad
KL
503 run_dump_test "raoint"
504 run_dump_test "raoint-intel"
d100d8c1 505 run_list_test "amx-complex-inval"
b5c37946
SJ
506 run_dump_test "avx-vnni-int16"
507 run_dump_test "avx-vnni-int16-intel"
508 run_dump_test "sha512"
509 run_dump_test "sha512-intel"
510 run_list_test "sha512-inval"
511 run_dump_test "sm3"
512 run_dump_test "sm3-intel"
513 run_dump_test "sm4"
514 run_dump_test "sm4-intel"
515 run_list_test "pbndkb-inval"
8170af78 516 run_list_test "user_msr-inval"
08a98d4c 517 run_list_test "apx-push2pop2-inval"
6ff00b5e 518 run_list_test "sg"
029f3522 519 run_dump_test "clzero"
646cc3e0
GG
520 run_dump_test "invlpgb"
521 run_dump_test "tlbsync"
522 run_dump_test "snp"
4a357820 523 run_dump_test "disassem"
9916071f
AP
524 run_dump_test "mwaitx-bdver4"
525 run_list_test "mwaitx-reg"
8eab4136 526 run_dump_test "ospke"
8bc52696
AF
527 run_dump_test "rdpid"
528 run_dump_test "rdpid-intel"
6b40c462
L
529 run_dump_test "ptwrite"
530 run_dump_test "ptwrite-intel"
48521003
IT
531 run_dump_test "gfni"
532 run_dump_test "gfni-intel"
8dcf1fad
IT
533 run_dump_test "vaes"
534 run_dump_test "vaes-intel"
a87cd576 535 run_dump_test "vaes-wig1"
ff1982d5
IT
536 run_dump_test "vpclmulqdq"
537 run_dump_test "vpclmulqdq-intel"
05bb930a 538 run_dump_test "vpclmulqdq-wig1"
3233d7d0
IT
539 run_dump_test "wbnoinvd"
540 run_dump_test "wbnoinvd-intel"
be3a8dca
IT
541 run_dump_test "pconfig"
542 run_dump_test "pconfig-intel"
de89d0a3
IT
543 run_dump_test "waitpkg"
544 run_dump_test "waitpkg-intel"
c48935d7
IT
545 run_dump_test "cldemote"
546 run_dump_test "cldemote-intel"
c0a30a9f
L
547 run_dump_test "movdir"
548 run_dump_test "movdir-intel"
b3a3496f 549 run_dump_test "movdir-16bit"
c0a30a9f 550 run_list_test "movdir64b-reg"
5d79adc4
L
551 run_dump_test "enqcmd"
552 run_dump_test "enqcmd-intel"
b3a3496f 553 run_dump_test "enqcmd-16bit"
5d79adc4 554 run_list_test "enqcmd-inval"
4b27d27c 555 run_dump_test "serialize"
81d54bb7 556 run_dump_test "tdx"
bb651e8b 557 run_dump_test "tsxldtrk"
c1fa250a 558 run_dump_test "hreset"
9186c494
L
559 run_dump_test "vp2intersect"
560 run_dump_test "vp2intersect-intel"
561 run_list_test "vp2intersect-inval-bcast"
c4694f17
TG
562 run_dump_test "keylocker"
563 run_dump_test "keylocker-intel"
17a089ff
CL
564 run_dump_test "avx512_fp16"
565 run_dump_test "avx512_fp16-intel"
566 run_dump_test "avx512_fp16_vl"
567 run_dump_test "avx512_fp16_vl-intel"
568 run_dump_test "avx512_fp16_pseudo_ops"
569 run_list_test "avx512_fp16-inval-bcast"
73b090a9
L
570 run_list_test "avx512vl-1" "-al"
571 run_list_test "avx512vl-2" "-al"
b9915cbc 572 run_list_test "avx512vl-ambig"
929f69fa 573 run_list_test "avx512vl-plain" "-al"
2548c261
JB
574 run_dump_test "avx10.1-512-1"
575 run_dump_test "avx10.1-512-2"
576 run_dump_test "avx10.1-512-3"
577 run_dump_test "avx10.1-512-4"
578 run_dump_test "avx10.1-512-5"
579 run_dump_test "avx10.1-512-gfni"
580 run_dump_test "avx10.1-512-vaes"
581 run_dump_test "avx10.1-512-vpclmulqdq"
582 run_dump_test "avx10.1-256-1"
583 run_dump_test "avx10.1-256-2"
584 run_dump_test "avx10.1-256-3"
585 run_dump_test "avx10.1-256-4"
586 run_dump_test "avx10.1-256-5"
587 run_dump_test "avx10.1-256-gfni"
588 run_dump_test "avx10.1-256-vaes"
589 run_dump_test "avx10.1-256-vpclmulqdq"
4fc85f37 590 run_list_test "avx10-vsz" "-almn --divide --listing-lhs-width=2"
48c97fa1 591 run_dump_test "fpu-bad"
603555e5
L
592 run_dump_test "cet"
593 run_dump_test "cet-intel"
d777820b
IT
594 run_list_test "cet-ibt-inval"
595 run_list_test "cet-shstk-inval"
86fa6981 596 run_dump_test "pseudos"
da4977e0 597 run_list_test "pseudos-bad"
04ef582a
L
598 run_dump_test "notrack"
599 run_dump_test "notrack-intel"
600 run_list_test "notrackbad" "-al"
0ad71725
L
601 run_dump_test "align-1a"
602 run_dump_test "align-1b"
390c91cf 603 run_list_test "inval-pseudo" "-al"
62a02d25 604 run_dump_test "nop-1"
2a1bb84c 605 run_dump_test "nop-1-suffix"
a0094f1a 606 run_list_test "nop-1" "-aln"
62a02d25 607 run_dump_test "nop-2"
b6f8c7c4 608 run_dump_test "optimize-1"
99112332 609 run_dump_test "optimize-1a"
b6f8c7c4 610 run_dump_test "optimize-2"
5641ec01 611 run_dump_test "optimize-2b"
b6f8c7c4 612 run_dump_test "optimize-3"
0089dace
L
613 run_dump_test "optimize-4"
614 run_dump_test "optimize-5"
89199bb5 615 run_list_test "optimize-6a" "-I${srcdir}/$subdir -march=+noavx -al"
dd22218c 616 run_dump_test "optimize-6b"
89199bb5 617 run_list_test "optimize-7" "-I${srcdir}/$subdir -march=+noavx2 -al"
1e7dd4a0 618 run_dump_test "noopt"
92334ad2 619 run_dump_test "lea-optimize"
fe134c65 620 run_dump_test "lea16-optimize"
7772f168 621 run_dump_test "lea16-optimize2"
8493b665
L
622 run_dump_test "align-branch-1a"
623 run_dump_test "align-branch-1b"
624 run_dump_test "align-branch-1c"
625 run_dump_test "align-branch-1d"
626 run_dump_test "align-branch-1e"
627 run_dump_test "align-branch-1f"
628 run_dump_test "align-branch-1g"
629 run_dump_test "align-branch-1h"
630 run_dump_test "align-branch-1i"
631 run_dump_test "align-branch-2a"
632 run_dump_test "align-branch-2b"
633 run_dump_test "align-branch-2c"
634 run_dump_test "align-branch-4a"
635 run_dump_test "align-branch-4b"
636 run_dump_test "align-branch-5"
637 run_dump_test "align-branch-6"
638 run_dump_test "align-branch-7"
639 run_dump_test "align-branch-8"
79d72f45 640 run_dump_test "align-branch-9"
97b4a8f7
L
641 run_dump_test "lfence-load"
642 run_dump_test "lfence-indbr-a"
643 run_dump_test "lfence-indbr-b"
644 run_dump_test "lfence-indbr-c"
645 run_dump_test "lfence-ret-a"
646 run_dump_test "lfence-ret-b"
a09f656b 647 run_dump_test "lfence-ret-c"
648 run_dump_test "lfence-ret-d"
97b4a8f7 649 run_dump_test "lfence-byte"
b5482fe5
JB
650 # This test uses the .section directive, which only ELF and COFF/PE support.
651 if {[is_elf_format]
652 || [istarget "*-*-vxworks*"]
653 || [istarget "*-*-coff*"]
654 || [istarget "*-*-pe*"]
655 || [istarget "*-*-cygwin*"]
656 || [istarget "*-*-mingw*"]
657 } then {
658 run_dump_test "lfence-section"
659 }
660
632ee6fd 661 run_dump_test "branch"
252b5132 662
a3d1c52b
AM
663 # These tests require support for 8 and 16 bit relocs,
664 # so we only run them for ELF and COFF targets.
693bec1e
JB
665 if {[is_elf_format]
666 || [istarget "*-*-vxworks*"]
667 || [istarget "*-*-coff*"]
668 } then {
252b5132 669 run_dump_test "reloc"
a3d1c52b 670 run_dump_test "jump16"
252b5132 671 run_list_test "white" "-al --listing-lhs-width=3"
3d983505
NC
672
673 # These tests should in theory work for PE targets as well,
674 # but the relocs we currently produce are slightly different
675 # from those produced for ELF/COFF based toolchains.
676 # So for now we ignore PE targets.
3d983505 677 run_dump_test "absrel"
8dcea932
L
678 if {[istarget "*-*-coff*"]} then {
679 run_dump_test "pcrel"
680 }
252b5132 681 }
00687228 682
62e88f3c 683 # ELF specific tests
693bec1e 684 if {[is_elf_format] || [istarget "*-*-vxworks*"]} then {
62e88f3c
NC
685 # PIC is only supported on ELF targets.
686 run_dump_test "intelpic"
687
8dcea932 688 run_dump_test "pcrel-elf"
00687228 689 run_dump_test "relax"
2bbd9c25 690 run_dump_test "gotpc"
13ae64f3
JJ
691 run_dump_test "tlsd"
692 run_dump_test "tlspic"
693 run_dump_test "tlsnopic"
d7e3e627 694 run_list_test "inval-tls"
8a75718c 695 run_dump_test "bss"
3956db08
JB
696 run_dump_test "reloc32"
697 run_list_test "reloc32" "--defsym _bad_=1"
4261360e 698 run_dump_test "intel-got32"
8325cc63 699 run_dump_test "intel-movs32"
b1538430 700 run_dump_test "intel-movs16"
d241b910 701 run_dump_test "intel-cmps32"
b1538430 702 run_dump_test "intel-cmps16"
d0548f34
L
703 run_list_test "inval-equ-1" "-al"
704 run_list_test "inval-equ-2" "-al"
915bcca5 705 run_dump_test "ifunc"
c969da64
RS
706 run_list_test "ifunc-2"
707 run_dump_test "ifunc-3"
2a86604a 708 run_dump_test "localpic"
df1c40a7 709 run_dump_test "debug1"
502abbdf 710
edc7a80a
MW
711 run_dump_test "dwarf2-line-1"
712 run_dump_test "dwarf2-line-2"
713 run_dump_test "dwarf2-line-3"
714 run_dump_test "dwarf2-line-4"
ae9d2233 715 run_dump_test "dwarf4-line-1"
6915020b 716 run_dump_test "dwarf5-line-1"
bd0c565e
L
717 run_dump_test "dwarf5-line-2"
718 run_dump_test "dwarf5-line-3"
9717970a 719 run_dump_test "dwarf5-line-4"
edc7a80a 720
089b8992 721 run_dump_test "dw2-compress-2"
151411f8 722 run_dump_test "dw2-compressed-2"
21be61f5 723
2c02075a 724 run_dump_test "bad-bcast-intel"
7e40d574 725 run_dump_test "bad-bcast"
21be61f5 726 run_dump_test "bad-size"
8fd4256d
L
727
728 run_dump_test "size-1"
729 run_dump_test "size-2"
730 run_dump_test "size-3"
731 run_dump_test "size-4"
3abbafc2
JB
732 run_dump_test "size-5a"
733 run_dump_test "size-5b"
00923338
L
734
735 run_dump_test "note"
b084df0b
L
736
737 run_dump_test "relax-3"
8dcea932 738 run_dump_test "relax-4"
292676c1 739 run_dump_test "relax-5"
81486035 740
02a86693 741 run_dump_test "got"
0cb4071e 742 run_dump_test "got-no-relax"
02a86693 743
844bf810
L
744 run_dump_test "no-got"
745
4e21640f 746 run_dump_test "addend"
62a02d25
L
747 run_dump_test "nop-3"
748 run_dump_test "nop-4"
749 run_dump_test "nop-5"
750 run_dump_test "nop-6"
986ac314 751 run_dump_test "unique"
4e21640f 752
da374e94
JB
753 run_dump_test "lfence-subsect"
754
90c745dc 755 run_dump_test "property-1"
99c2d522 756
8493b665
L
757 if {[istarget "*-*-linux*"]} then {
758 run_dump_test "align-branch-3"
759 }
760
da5f19a2
L
761 if { [gas_64_check] } then {
762 run_dump_test "att-regs"
763 run_dump_test "intel-regs"
764 run_dump_test "mixed-mode-reloc32"
765 run_dump_test "code64"
d7f449c0 766 } elseif { ![gas_bfd64_check] } {
da5f19a2
L
767 run_list_test "code64-inval" "-I${srcdir}/$subdir -al"
768 }
769
693bec1e
JB
770 if {![istarget "*-*-vxworks*"]} then {
771 run_dump_test "iamcu-1"
772 run_dump_test "iamcu-2"
773 run_dump_test "iamcu-3"
774 run_dump_test "iamcu-4"
775 run_dump_test "iamcu-5"
648d04db 776 run_dump_test "iamcu-6"
693bec1e
JB
777 run_list_test "iamcu-inval-1" "-march=iamcu -al"
778 }
00687228
L
779 }
780
145667f8 781 # These are PE specific tests.
6482c264
NC
782 if { [istarget "*-*-cygwin*"] || [istarget "*-*-pe"]
783 || [istarget "*-*-mingw*"]
784 } then {
785 run_dump_test "secrel"
145667f8 786 run_dump_test "secidx"
6482c264
NC
787 }
788
a5f21126
L
789 # Miscellaneous tests.
790 run_dump_test "pr12589-1"
791
b96d3a20
JH
792 set ASFLAGS "$old_ASFLAGS"
793}
6e0b89ee 794
cdcf9467 795# Common tests
848471ac
AM
796if {![istarget "i*86-*-elfiamcu"] && [gas_64_check]} then {
797 run_dump_test "intel-expr"
798 run_dump_test "string-ok"
799}
800run_list_test "string-bad" ""
801run_list_test "reg-bad" ""
802run_list_test "space1" "-al"
86b96a79
JB
803if {![istarget "i*86-*-elfiamcu"]} then {
804 run_list_test "xmmword"
805}
0d29b1a4
L
806# Disabled due to large memory requirement.
807# run_dump_test rept
848471ac
AM
808run_dump_test pr19498
809run_list_test "nop-bad-1" ""
810run_list_test "unspec" ""
faca1a42 811run_dump_test "fp"
1e66f4c5 812run_dump_test "cond"
100f993c 813run_dump_test pr30248
848471ac
AM
814if {[is_elf_format] || [istarget "*-*-vxworks*"]} then {
815 run_list_test_stdin "list-1" "-al"
816 run_list_test_stdin "list-2" "-al"
817 run_list_test_stdin "list-3" "-al"
818 run_dump_test "dw2-compress-1"
819 run_dump_test "dw2-compress-3a"
820 run_dump_test "dw2-compress-3b"
821 run_dump_test "dw2-compressed-1"
822 run_dump_test "dw2-compressed-3a"
823 run_dump_test "dw2-compressed-3b"
824
86b96a79
JB
825 if {![istarget "i*86-*-elfiamcu"]} then {
826 run_dump_test "property-2"
827 run_dump_test "property-3"
828 run_dump_test "property-4"
829 run_dump_test "property-5"
830 run_dump_test "property-6"
831 run_dump_test "property-10"
832 run_dump_test "property-11"
833 run_dump_test "property-12"
834 run_dump_test "property-13"
835 run_dump_test "property-cvtpi2pd"
836 run_dump_test "property-cvtpi2ps"
837 run_dump_test "property-ldmxcsr"
838 run_dump_test "property-v4fmaddps"
839 run_dump_test "property-vfmaddps"
840 run_dump_test "property-vldmxcsr"
841 run_dump_test "property-vpcmov"
842 run_dump_test "property-vzeroall"
843 }
844
50c95a73 845 run_dump_test "code16-2"
cbe68696 846
848471ac
AM
847 if {![istarget "*-*-dragonfly*"]
848 && ![istarget "*-*-gnu*"]
849 && ![istarget "*-*-freebsd*"]
850 && ![istarget "*-*-linux*"]
851 && ![istarget "*-*-netbsd*"]} then {
852 run_dump_test "svr4"
12a8b92e 853 }
fc0763e6 854}