summaryrefslogtreecommitdiff
path: root/gas/testsuite/gas/cfi/cfi.exp
blob: d09d6fd1d67dfbf9844e9c90a0335b925b962441 (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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
# ??? This probably shouldn't be replicated here...
proc run_list_test { name opts } {
    global srcdir subdir
    set testname "cfi $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 ![is_elf_format] then {
    return
}

if [istarget "x86_64-*"] then {
    run_dump_test "cfi-x86_64"

} elseif [istarget "i?86-*"] then {
    run_dump_test "cfi-i386"

} elseif { [istarget alpha*-*-*] } then {
    run_dump_test "cfi-alpha-1"
    run_dump_test "cfi-alpha-2"
    run_dump_test "cfi-alpha-3"

} elseif { [istarget ppc*-*-*] || [istarget powerpc*-*-*] } then {
    run_dump_test "cfi-ppc-1"

} elseif { [istarget s390*-*-*] } then {
    run_dump_test "cfi-s390-1"
    if { [istarget s390x*-*-*] } then {
	run_dump_test "cfi-s390x-1"
    }

} elseif { [istarget "m68*-*"] } then {
    run_dump_test "cfi-m68k"

} elseif { [istarget sparc*-*-*] } then {
    global NM
    global NMFLAGS
    global srcdir

    catch "exec $srcdir/lib/run $NM $NMFLAGS --help" nm_help
    run_dump_test "cfi-sparc-1"
    if { [regexp "elf64\[_-\]sparc" $nm_help] } then {
	run_dump_test "cfi-sparc64-1"
    }
} else {
    return
}

run_list_test "cfi-diag-1" ""
run_dump_test "cfi-common-1"
run_dump_test "cfi-common-2"
run_dump_test "cfi-common-3"