aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorUros Bizjak <uros@gcc.gnu.org>2011-11-17 20:56:39 +0100
committerUros Bizjak <uros@gcc.gnu.org>2011-11-17 20:56:39 +0100
commit29e339fd2e924cb0936242206e8176ba747f869f (patch)
tree7a8d53ef0108ccf1e1576fada451e375dee404c5 /gcc
parentc39169c82c278bff88da0fcb05516420fbcf808a (diff)
downloadgcc-29e339fd2e924cb0936242206e8176ba747f869f.zip
gcc-29e339fd2e924cb0936242206e8176ba747f869f.tar.gz
gcc-29e339fd2e924cb0936242206e8176ba747f869f.tar.bz2
gcc-simulate-thread.exp (simulate-thread): Run on all targets.
* lib/gcc-simulate-thread.exp (simulate-thread): Run on all targets. Look for simulate_thread_done to determine working gdb. Reduce timeout to 10 seconds and fail when timeout occurs. Improve error messages. From-SVN: r181452
Diffstat (limited to 'gcc')
-rw-r--r--gcc/testsuite/ChangeLog9
-rw-r--r--gcc/testsuite/lib/gcc-simulate-thread.exp35
2 files changed, 22 insertions, 22 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 0aaaaaf..fa073e0 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,9 @@
+2011-10-17 Uros Bizjak <ubizjak@gmail.com>
+
+ * lib/gcc-simulate-thread.exp (simulate-thread): Run on all targets.
+ Look for simulate_thread_done to determine working gdb. Reduce timeout
+ to 10 seconds and fail when timeout occurs. Improve error messages.
+
2011-11-17 Jason Merrill <jason@redhat.com>
PR c++/51137
@@ -11,8 +17,7 @@
2011-11-17 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
- * lib/gcc-simulate-thread.exp (simulate-thread): Skip on
- alpha*-*-*.
+ * lib/gcc-simulate-thread.exp (simulate-thread): Skip on alpha*-*-*.
2011-10-16 Uros Bizjak <ubizjak@gmail.com>
diff --git a/gcc/testsuite/lib/gcc-simulate-thread.exp b/gcc/testsuite/lib/gcc-simulate-thread.exp
index 55fe74e..b545f89 100644
--- a/gcc/testsuite/lib/gcc-simulate-thread.exp
+++ b/gcc/testsuite/lib/gcc-simulate-thread.exp
@@ -22,15 +22,6 @@
# Call 'fail' if a given test printed "FAIL:", otherwise call 'pass'.
proc simulate-thread { args } {
-
- # ??? Exit immediately if this is alpha*-*-* target, single-stepping
- # executable between ldl_l and stl_c insns in gdb breaks LL/SC chaining.
- if { [istarget alpha*-*-*] } { return }
-
- # GNU gdb 6.3 on powerpc-darwin also on these (and expect does not appear
- # to be able to terminate them).
- if { [istarget powerpc*-*-darwin*] } { return }
-
if { ![isnative] || [is_remote target] } { return }
if { [llength $args] == 1 } {
@@ -54,35 +45,39 @@ proc simulate-thread { args } {
return
}
+ set message "(thread simulation test)"
+
send_log "Spawning: $gdb_name -nx -nw -quiet -x $cmd_file ./$exec_file\n"
set res [remote_spawn target "$gdb_name -nx -nw -x $cmd_file ./$exec_file"]
if { $res < 0 || $res == "" } {
- unsupported "$testcase"
+ unsupported "$testcase $message"
return
}
set gdb_worked 0
- remote_expect target [timeout_value] {
+
+ # Set timeout to 10 seconds due to huge amount of generated log.
+ remote_expect target 10 {
# Too old GDB
-re "Unhandled dwarf expression|Error in sourced command file" {
- unsupported "$testcase"
+ unsupported "$testcase $message"
remote_close target
return
}
-re "FAIL:" {
- fail "$testcase"
+ fail "$testcase $message"
remote_close target
return
}
- # If the gdb output contained simulate_thread_main, assume
+ # If the gdb output contained simulate_thread_done, assume
# that at the very least, we had a working gdb that was able
- # to break in simulate_thread_main.
- -re "simulate_thread_main" {
+ # to break in simulate_thread_done.
+ -re "simulate_thread_done" {
set gdb_worked 1
exp_continue
}
timeout {
- unsupported "$testcase"
+ fail "$testcase $message"
remote_close target
return
}
@@ -90,10 +85,10 @@ proc simulate-thread { args } {
remote_close target
if {$gdb_worked} {
- pass "$testcase"
+ pass "$testcase $message"
} else {
- # Fail in the absence of a sane GDB.
- fail "$testcase"
+ # Unsupported in the absence of a sane GDB.
+ unsupported "$testcase $message"
}
return
}