forked from Imagelibrary/binutils-gdb
gdb
* thread.c (print_thread_info): Make a ui-out table in CLI mode. gdb/testsuite * gdb.threads/execl.exp: Update. * gdb.threads/linux-dp.exp: Update. * gdb.threads/manythreads.exp: Update. * gdb.threads/tls.exp: Update.
This commit is contained in:
@@ -1,3 +1,10 @@
|
||||
2010-12-21 Tom Tromey <tromey@redhat.com>
|
||||
|
||||
* gdb.threads/execl.exp: Update.
|
||||
* gdb.threads/linux-dp.exp: Update.
|
||||
* gdb.threads/manythreads.exp: Update.
|
||||
* gdb.threads/tls.exp: Update.
|
||||
|
||||
2010-12-15 Jan Kratochvil <jan.kratochvil@redhat.com>
|
||||
|
||||
* gdb.cp/nextoverthrow.cc (dummy): Return int 0.
|
||||
|
||||
@@ -46,7 +46,7 @@ gdb_test "b [gdb_get_line_number "breakpoint here"]" \
|
||||
|
||||
gdb_test "continue" ".*breakpoint here.*" "continue to exec"
|
||||
|
||||
gdb_test "info threads" ".*3 Thread.*2 Thread.*1 Thread.*" "info threads before exec"
|
||||
gdb_test "info threads" ".*3 *Thread.*2 *Thread.*1 *Thread.*" "info threads before exec"
|
||||
|
||||
# When continuing from this point we'll hit the breakpoint in main()
|
||||
# again, this time in the exec'd process.
|
||||
|
||||
@@ -70,7 +70,10 @@ for {set i 0} {$i < 5} {incr i} {
|
||||
-re "info threads\r\n" {
|
||||
exp_continue
|
||||
}
|
||||
-re "^. +(\[0-9\]+ Thread \[-0-9a-fx\]+) \[^\n\]*\n" {
|
||||
-re "^ *Id.*Frame *\[\r\n\]+" {
|
||||
exp_continue
|
||||
}
|
||||
-re "^. +(\[0-9\]+ *Thread \[-0-9a-fx\]+) \[^\n\]*\n" {
|
||||
verbose -log "found thread $expect_out(1,string)" 2
|
||||
lappend threads_before $expect_out(1,string)
|
||||
exp_continue
|
||||
@@ -136,7 +139,10 @@ for {set i 0} {$i < 5} {incr i} {
|
||||
-re "info threads\r\n" {
|
||||
exp_continue
|
||||
}
|
||||
-re "^. +(\[0-9\]+ Thread \[-0-9a-fx\]+) \[^\n\]*\n" {
|
||||
-re "^ *Id.*Frame *\[\r\n\]+" {
|
||||
exp_continue
|
||||
}
|
||||
-re "^. +(\[0-9\]+ *Thread \[-0-9a-fx\]+) \[^\n\]*\n" {
|
||||
set name $expect_out(1,string)
|
||||
for {set j 0} {$j != [llength $threads_before] } {incr j} {
|
||||
if {$name == [lindex $threads_before $j]} {
|
||||
@@ -177,12 +183,12 @@ set nthreads 6
|
||||
# Run until there are some threads.
|
||||
gdb_breakpoint [gdb_get_line_number "linuxthreads.exp: info threads 2"]
|
||||
gdb_continue_to_breakpoint "main thread's sleep"
|
||||
set info_threads_ptn ""
|
||||
set info_threads_ptn ".*"
|
||||
for {set i $nthreads} {$i > 0} {incr i -1} {
|
||||
append info_threads_ptn "$i Thread .*"
|
||||
append info_threads_ptn "$i *Thread .*"
|
||||
}
|
||||
append info_threads_ptn "\[\r\n\]+$gdb_prompt $"
|
||||
set info_threads_manager_ptn "[expr $nthreads + 1] Thread .*$info_threads_ptn"
|
||||
set info_threads_manager_ptn "[expr $nthreads + 1] *Thread .*$info_threads_ptn"
|
||||
|
||||
gdb_test_multiple "info threads" "info threads 2" {
|
||||
-re "$info_threads_manager_ptn" {
|
||||
@@ -245,7 +251,7 @@ set only_five 1
|
||||
for {set i 0} {$only_five > 0 && $i < 10} {incr i} {
|
||||
gdb_continue_to_breakpoint "thread 5's print, pass: $i"
|
||||
gdb_test_multiple "info threads" "" {
|
||||
-re "\\* 5 Thread .* print_philosopher .*\r\n$gdb_prompt $" {
|
||||
-re "\[*\] 5 *Thread .* +print_philosopher .*\r\n$gdb_prompt $" {
|
||||
# Okay this time.
|
||||
}
|
||||
-re ".*$gdb_prompt $" {
|
||||
|
||||
@@ -82,7 +82,7 @@ gdb_test_multiple "" "stop threads 1" {
|
||||
set cmd "info threads"
|
||||
set ok 0
|
||||
gdb_test_multiple $cmd $cmd {
|
||||
-re " 1 Thread " {
|
||||
-re " 1 *Thread " {
|
||||
set ok 1
|
||||
exp_continue
|
||||
}
|
||||
|
||||
@@ -214,7 +214,7 @@ gdb_test "continue" ".*Breakpoint 3.*still alive.*" "continue to synch point"
|
||||
set no_of_threads 0
|
||||
send_gdb "info thread\n"
|
||||
gdb_expect {
|
||||
-re "^info thread\[ \t\r\n\]+(\[0-9\]+) Thread.*$gdb_prompt $" {
|
||||
-re "^info thread\[ \t\r\n\]+ *Id .*Frame\[ \t\r\n\]|(\[0-9\]+) *Thread.*$gdb_prompt $" {
|
||||
set no_of_threads $expect_out(1,string)
|
||||
pass "get number of threads"
|
||||
}
|
||||
@@ -262,10 +262,10 @@ gdb_test "continue" ".*Breakpoint 4.*before exit.*" "threads exited"
|
||||
|
||||
send_gdb "info thread\n"
|
||||
gdb_expect {
|
||||
-re ".* 1 Thread.*2 Thread.*$gdb_prompt $" {
|
||||
-re ".* 1 *Thread.*2 *Thread.*$gdb_prompt $" {
|
||||
fail "Too many threads left at end"
|
||||
}
|
||||
-re ".*\\\* 1 Thread.*main.*$gdb_prompt $" {
|
||||
-re ".*\\\* 1 *Thread.*main.*$gdb_prompt $" {
|
||||
pass "Expect only base thread at end"
|
||||
}
|
||||
-re ".*No stack.*$gdb_prompt $" {
|
||||
|
||||
Reference in New Issue
Block a user