summaryrefslogtreecommitdiff
path: root/gas/testsuite/gas/i386/i386.exp
blob: a431bb6cd61c0ccbd26fb59f4cf168d2b4856de6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#
# i386 tests
#
proc run_list_test { name opts } {
    global srcdir subdir
    set testname "i386 $name"
    set file $srcdir/$subdir/$name
    gas_run ${name}.s $opts ">&dump.out"
    if { [regexp_diff "dump.out" "${file}.l"] } then {
	fail $testname
	verbose "output is [file_contents "dump.out"]" 2
	return
    }
    pass $testname
}


if [istarget "i*86-*-*"] then {

    run_list_test "float" "-al"
    run_list_test "general" "-al --listing-lhs-width=2"
    run_list_test "inval" "-al"
    run_list_test "modrm" "-al --listing-lhs-width=2"
    run_dump_test "naked"
    run_dump_test "opcode"
    run_dump_test "prefix"
    run_dump_test "amd"
    run_dump_test "katmai"
    run_dump_test "jump"

    # These tests require support for 8 and 16 bit relocs,
    # so we only run them for ELF and COFF targets.
    if {[istarget "*-*-elf*"] || [istarget "*-*-linux*"] || [istarget "*-*-coff*"]} then {
	run_dump_test "reloc"
	run_dump_test "jump16"
	run_list_test "white" "-al --listing-lhs-width=3"
    }
}