diff options
Diffstat (limited to 'testsuite/systemtap.syscall/syscall.exp')
-rw-r--r-- | testsuite/systemtap.syscall/syscall.exp | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/testsuite/systemtap.syscall/syscall.exp b/testsuite/systemtap.syscall/syscall.exp new file mode 100644 index 00000000..8068a6fc --- /dev/null +++ b/testsuite/systemtap.syscall/syscall.exp @@ -0,0 +1,46 @@ +proc test_procedure {} { + global srcdir subdir + set wd [pwd] + set flags "" + if {$srcdir == ""} { + set pattern "*.c" + } else { + set pattern "$srcdir/$subdir/*.c" + } + foreach filename [lsort [glob $pattern]] { + set file [file tail [string range $filename 0 end-2]] + target_compile $filename $wd/$file executable $flags + send_log "Testing ${file}\n" + set res [exec $srcdir/$subdir/test.tcl $file $filename] + if {$res == "PASS"} { + pass "$file" + } elseif {$res == "UNSUPP"} { + unsupported "$file not supported on this arch" + } else { + fail "$file" + send_log "$res\n" + } + } + + if {$::tcl_platform(machine) == "x86_64" || + $::tcl_platform(machine) == "ppc64"} { + # on x86_64 and pcp64, test 32-bit and 64-bit binaries + set flags "additional_flags=-m32" + foreach filename [lsort [glob $pattern]] { + set file [file tail [string range $filename 0 end-2]] + target_compile $filename $wd/$file executable $flags + send_log "Testing 32-bit ${file}\n" + set res [exec $srcdir/$subdir/test.tcl $file $filename] + if {$res == "PASS"} { + pass "32-bit $file" + } elseif {$res == "UNSUPP"} { + unsupported "$file not supported on this arch" + } else { + fail "32-bit $file" + send_log "$res\n" + } + } + } +} + +test_procedure |