blob: 23d7b4d3825e7812bc29fb853e74e08dd3487dbd (
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
|
set test "vta-test"
set ::result_string {i: 0x6
i: 0xdeadbeef
i: 0xdeadbeef87654321}
set test_flags "additional_flags=-g"
set test_flags "$test_flags additional_flags=-O2"
set test_flags "$test_flags additional_flags=-I$srcdir/../includes/sys"
set res [target_compile $srcdir/$subdir/$test.c $test.exe executable "$test_flags"]
if { $res != "" } {
verbose "target_compile failed: $res" 2
fail "$test.c compile"
untested "$test"
return
} else {
pass "$test.c compile"
}
# Test only when we are running an install test (can execute) and when gcc
# vta generated DW_OP_{stack|implicit}_values for us. See PR10417.
if {[installtest_p] && [uprobes_p]} {
# See if GCC produce DW_OP_implicit_value and/or DW_OP_stack_value for us.
set regexp {[stack|implicit]_value}
if {![catch {exec readelf --debug-dump=loc vta-test.exe | egrep "$regexp"}]} {
stap_run2 $srcdir/$subdir/$test.stp -c ./$test.exe
} {
untested "$test (no-gcc-vta)"
}
} else {
untested "$test"
}
catch {exec rm -f $test.exe}
|