@@ -50,7 +50,7 @@ proc test_thread_find {} {
}
set any "\[^\r\n\]*"
gdb_test_multiple "info threads" "collect thread id" {
- -re ". ($decimal).$decimal (Thread ${any}) \"threadname_\[0-9\]+\" $any" {
+ -re ". ($decimal).$decimal ((Thread|LWP) ${any}) \"threadname_\[0-9\]+\" $any" {
set thr_num $expect_out(1,string)
set target_id($thr_num) $expect_out(2,string)
exp_continue
@@ -63,7 +63,7 @@ gdb_test "continue" \
# reported in the "Id" column.
gdb_test "info threads" \
- {.*[\r\n]+\* +([0-9]+) +Thread[^\r\n]* do_something \(n=\1\) at.*}
+ {.*[\r\n]+\* +([0-9]+) +(Thread|LWP)[^\r\n]* do_something \(n=\1\) at.*}
# Check for expected results when passing a valid thread handle to
# thread_from_handle().
@@ -78,13 +78,13 @@ proc run_test { target_non_stop disable_feature } {
# There should be only one thread listed at this point.
gdb_test_multiple "info threads" "" {
- -re "2 Thread.*$gdb_prompt $" {
+ -re "2 (Thread|LWP).*$gdb_prompt $" {
fail $gdb_test_name
}
-re "has terminated.*$gdb_prompt $" {
fail $gdb_test_name
}
- -re "\\\* 1\[\t \]*Thread\[^\r\n\]*\r\n$gdb_prompt $" {
+ -re "\\\* 1\[\t \]*(Thread|LWP)\[^\r\n\]*\r\n$gdb_prompt $" {
pass $gdb_test_name
}
}
@@ -94,7 +94,7 @@ proc run_test { target_non_stop disable_feature } {
# There should be two threads at this point with thread 1 selected.
gdb_test "info threads" \
- "\\\* 1\[\t \]*Thread\[^\r\n\]*\r\n 2\[\t \]*Thread\[^\r\n\]*" \
+ "\\\* 1\[\t \]*(Thread|LWP)\[^\r\n\]*\r\n 2\[\t \]*(Thread|LWP)\[^\r\n\]*" \
"second thread should now exist"
# Switch threads.
@@ -118,7 +118,7 @@ proc run_test { target_non_stop disable_feature } {
# Check that thread 2 is still selected.
gdb_test "info threads" \
- " 1\[\t \]*Thread\[^\r\n\]*\r\n\\\* 2\[\t \]*Thread\[^\r\n\]*" \
+ " 1\[\t \]*(Thread|LWP)\[^\r\n\]*\r\n\\\* 2\[\t \]*(Thread|LWP)\[^\r\n\]*" \
"second thread should still be selected after stepi"
# Turn scheduler locking off again so that when we continue all
@@ -40,7 +40,7 @@ gdb_test "b [gdb_get_line_number "breakpoint here"]" \
gdb_test "continue" ".*breakpoint here.*" "continue to exec"
-gdb_test "info threads" "1 *Thread.*2 *Thread.*3 *Thread.*" "info threads before exec"
+gdb_test "info threads" "1 *(Thread|LWP).*2 *(Thread|LWP).*3 *(Thread|LWP).*" "info threads before exec"
# Work around PR25656, where the breakpoint above sets 2 breakpoint locations:
# - one on gdb.threads/execl.c:$linenumber, and
@@ -55,11 +55,11 @@ gdb_test "continue" ".*Breakpoint 1, main.*" \
"continue across exec"
gdb_test_multiple "info threads" "info threads after exec" {
- -re "2 *Thread .*$gdb_prompt $" {
+ -re "2 *(Thread|LWP) .*$gdb_prompt $" {
# Old threads left behind.
fail "$gdb_test_name"
}
- -re "4 *Thread .*$gdb_prompt $" {
+ -re "4 *(Thread|LWP) .*$gdb_prompt $" {
# New threads registered.
fail "$gdb_test_name"
}
@@ -44,4 +44,4 @@ gdb_test "continue" "Breakpoint 2, start.*" "get to the spawned thread"
# * 3 Thread 0x40a00950 (LWP 5553) start (arg=0x0) at ../.././gdb/testsuite/gdb.threads/fork-child-threads.c:28
# 2 Thread 0x2aaaaaac3000 (LWP 5552) 0x00000031674076dd in pthread_join (threadid=<optimized out>, thread_return=<optimized out>) at pthread_join.c:89
-gdb_test "info threads" " Thread .* Thread .*" "two threads found"
+gdb_test "info threads" " (Thread|LWP) .* (Thread|LWP) .*" "two threads found"
@@ -37,7 +37,7 @@ gdb_breakpoint "start" "" "1, set breakpoint at start"
gdb_test "continue" "Catchpoint.*" "1, get to the fork event"
-gdb_test "info threads" " Thread .* Thread .* Thread .* Thread .*" "1, multiple threads found"
+gdb_test "info threads" " (Thread|LWP) .* (Thread|LWP) .* (Thread|LWP) .* (Thread|LWP) .*" "1, multiple threads found"
gdb_test "thread 1" ".*" "1, switched away from event thread"
@@ -45,10 +45,10 @@ gdb_test "continue" "Not resuming.*" "1, refused to resume"
set test "1, followed to the child, found one thread"
gdb_test_multiple "info threads" "metest" {
- -re " Thread .* Thread .*$gdb_prompt $" {
+ -re " (Thread|LWP) .* (Thread|LWP) .*$gdb_prompt $" {
fail "$test"
}
- -re " Thread .*$gdb_prompt $" {
+ -re " (Thread|LWP) .*$gdb_prompt $" {
pass "$test"
}
-re "$gdb_prompt $" {
@@ -63,10 +63,10 @@ gdb_test "continue" "Breakpoint 3, start.*" "1, get to the spawned thread in for
set test "1, followed to the child, found two threads"
gdb_test_multiple "info threads" "$test" {
- -re " Thread .* Thread .* Thread .*$gdb_prompt $" {
+ -re " (Thread|LWP) .* (Thread|LWP) .* (Thread|LWP) .*$gdb_prompt $" {
fail "$test"
}
- -re " Thread .* Thread .*$gdb_prompt $" {
+ -re " (Thread|LWP) .* (Thread|LWP) .*$gdb_prompt $" {
pass "$test"
}
-re "$gdb_prompt $" {
@@ -94,16 +94,16 @@ gdb_breakpoint "start"
gdb_test "continue" "Catchpoint.*" "2, get to the fork event"
-gdb_test "info threads" " Thread .* Thread .* Thread .* Thread .*" "2, multiple threads found"
+gdb_test "info threads" " (Thread|LWP) .* (Thread|LWP) .* (Thread|LWP) .* (Thread|LWP) .*" "2, multiple threads found"
gdb_test "continue" "Breakpoint 3, start.*" "2, get to the spawned thread in fork child"
set test "2, followed to the child, found two threads"
gdb_test_multiple "info threads" "$test" {
- -re " Thread .* Thread .* Thread .*$gdb_prompt $" {
+ -re " (Thread|LWP) .* (Thread|LWP) .* (Thread|LWP) .*$gdb_prompt $" {
fail "$test"
}
- -re " Thread .* Thread .*$gdb_prompt $" {
+ -re " (Thread|LWP) .* (Thread|LWP) .*$gdb_prompt $" {
pass "$test"
}
-re "$gdb_prompt $" {
@@ -43,8 +43,8 @@ gdb_test "list $line" \
gdb_test "info threads" \
[multi_line \
"\[ \t\]*Id\[ \t\]+Target\[ \t\]+Id\[ \t\]+Frame\[ \t\]*" \
- " 1 *Thread \[^\r\n\]* .* \[^\r\n\]*" \
- "\\* 2 *Thread \[^\r\n\]* at \[^\r\n\]*"] \
+ " 1 *(Thread|LWP) \[^\r\n\]* .* \[^\r\n\]*" \
+ "\\* 2 *(Thread|LWP) \[^\r\n\]* at \[^\r\n\]*"] \
"info threads before break"
# Check that "break" is still operating on the same file by default.
@@ -53,8 +53,8 @@ gdb_test "break $line" ".*${srcfile2}.*" "break on line"
gdb_test "info threads" \
[multi_line \
"\[ \t\]*Id\[ \t\]+Target\[ \t\]+Id\[ \t\]+Frame\[ \t\]*" \
- " 1 *Thread \[^\r\n\]* .* \[^\r\n\]*" \
- "\\* 2 *Thread \[^\r\n\]* at \[^\r\n\]*"] \
+ " 1 *(Thread|LWP) \[^\r\n\]* .* \[^\r\n\]*" \
+ "\\* 2 *(Thread|LWP) \[^\r\n\]* at \[^\r\n\]*"] \
"info threads before list"
# And that so is "list".
@@ -145,7 +145,7 @@ proc test_one_iteration {} {
set running_count 0
set test "all threads are stopped"
return_if_nonzero [gdb_test_multiple "info threads" $test {
- -re "Thread \[^\r\n\]* \\(running\\)" {
+ -re "(Thread|LWP) \[^\r\n\]* \\(running\\)" {
incr running_count
exp_continue
}
@@ -37,7 +37,7 @@ gdb_breakpoint [gdb_get_line_number "break-here"]
gdb_continue_to_breakpoint "break-here" ".* break-here .*"
gdb_test "info threads" \
- "\r\n\[ \t\]*Id\[ \t\]+Target\[ \t\]+Id\[ \t\]+Frame\[ \t\]*\r\n\\* 2 *Thread \[^\r\n\]* at \[^\r\n\]*" \
+ "\r\n\[ \t\]*Id\[ \t\]+Target\[ \t\]+Id\[ \t\]+Frame\[ \t\]*\r\n\\* 2 *(Thread|LWP) \[^\r\n\]* at \[^\r\n\]*" \
"single thread has been left"
# Test that ctrl-c works even if the leader has exited.
@@ -115,7 +115,7 @@ interrupt_and_wait "stop threads 1"
set cmd "info threads"
set ok 0
gdb_test_multiple $cmd $cmd {
- -re " 1 *Thread " {
+ -re " 1 *(Thread|LWP) " {
set ok 1
exp_continue
}
@@ -42,7 +42,7 @@ gdb_test "continue" \
"continue stops when thread 2 exits"
gdb_test "info threads" \
- "\r\n\[ \t\]*Id\[ \t\]+Target\[ \t\]+Id\[ \t\]+Frame\[ \t\]*\r\n *1 *Thread \[^\r\n\]* \[^\r\n\]*\[\r\n\]*The current thread <Thread ID 2> has terminated.*" \
+ "\r\n\[ \t\]*Id\[ \t\]+Target\[ \t\]+Id\[ \t\]+Frame\[ \t\]*\r\n *1 *(Thread|LWP) \[^\r\n\]* \[^\r\n\]*\[\r\n\]*The current thread <Thread ID 2> has terminated.*" \
"only main thread left, thread 2 terminated"
# Select the main thread, let the third thread start, and stop at the
@@ -63,7 +63,7 @@ gdb_test "continue" \
"continue stops when the main thread exits"
gdb_test "info threads" \
- "\r\n\[ \t\]*Id\[ \t\]+Target\[ \t\]+Id\[ \t\]+Frame\[ \t\]*\r\n *3 *Thread \[^\r\n\]* \[^\r\n\]*\[\r\n\]*The current thread <Thread ID 1> has terminated.*" \
+ "\r\n\[ \t\]*Id\[ \t\]+Target\[ \t\]+Id\[ \t\]+Frame\[ \t\]*\r\n *3 *(Thread|LWP) \[^\r\n\]* \[^\r\n\]*\[\r\n\]*The current thread <Thread ID 1> has terminated.*" \
"only thread 3 left, main thread terminated"
# Make sure thread apply all works when we have exited threads in the
@@ -44,7 +44,7 @@ proc do_test { lock_sched nonstop } {
}
gdb_test "info threads" \
- "\r\n\[ \t\]*Id\[ \t\]+Target\[ \t\]+Id\[ \t\]+Frame\[ \t\]*\r\n\\* 2 *Thread \[^\r\n\]* at \[^\r\n\]*" \
+ "\r\n\[ \t\]*Id\[ \t\]+Target\[ \t\]+Id\[ \t\]+Frame\[ \t\]*\r\n\\* 2 *(Thread|LWP) \[^\r\n\]* at \[^\r\n\]*" \
"single thread left"
# Also test with sched-lock to make sure we can follow the
@@ -130,7 +130,7 @@ proc test_startup {} {
# We should be able to do an info threads before starting any others.
set return_me 1
gdb_test_multiple "info threads" "info threads" {
- -re ".*Thread.*main.*$gdb_prompt $" {
+ -re ".*(Thread|LWP).*main.*$gdb_prompt $" {
pass "info threads"
set return_me 0
}
@@ -145,7 +145,7 @@ proc test_startup {} {
# Extract the thread id number of main thread from "info threads" output.
gdb_test_multiple "info threads" "get main thread id" {
- -re "(\[0-9\]+)(${horiz}Thread${horiz}main.*)($gdb_prompt $)" {
+ -re "(\[0-9\]+)(${horiz}(Thread|LWP)${horiz}main.*)($gdb_prompt $)" {
}
}
@@ -160,7 +160,7 @@ proc test_startup {} {
# Extract the thread id number of thread 1 from "info threads" output.
gdb_test_multiple "info threads" "get thread 1 id" {
- -re "(\[0-9\]+)(${horiz}Thread${horiz}thread1.*)($gdb_prompt $)" {
+ -re "(\[0-9\]+)(${horiz}(Thread|LWP)${horiz}thread1.*)($gdb_prompt $)" {
}
}
@@ -175,7 +175,7 @@ proc test_startup {} {
# Extract the thread id number of thread 2 from "info threads" output.
gdb_test_multiple "info threads" "get thread 2 id" {
- -re "(\[0-9\]+)(${horiz}Thread${horiz}thread2.*)($gdb_prompt $)" {
+ -re "(\[0-9\]+)(${horiz}(Thread|LWP)${horiz}thread2.*)($gdb_prompt $)" {
}
}
@@ -62,7 +62,7 @@ proc test { step_over } {
gdb_test "thread 1" "Switching to thread 1.*"
- set pattern "\\\* 1\[ \t\]+Thread.*"
+ set pattern "\\\* 1\[ \t\]+(Thread|LWP).*"
gdb_test "info threads" $pattern "thread 1 selected"
@@ -63,7 +63,7 @@ proc test { schedlock } {
gdb_test "continue" "all_threads_signalled.*" \
"continue to all_threads signalled"
- gdb_test "info threads" "\\\* 1\[ \t\]+Thread.*" "thread 1 selected"
+ gdb_test "info threads" "\\\* 1\[ \t\]+(Thread|LWP).*" "thread 1 selected"
# With schedlock still enabled, let each thread report its
# signal.
@@ -42,7 +42,7 @@ proc test { command } {
gdb_test "continue" "Thread 2 .*received signal SIGUSR1.*" "stop with SIGUSR1"
- set pattern "\\\* 2\[ \t\]+Thread.*"
+ set pattern "\\\* 2\[ \t\]+(Thread|LWP).*"
gdb_test "info threads" $pattern "thread 2 intercepted signal"
@@ -41,7 +41,7 @@ proc test { sigtrap_thread } {
return 0
}
- set pattern "\\\* 2\[ \t\]+Thread.*"
+ set pattern "\\\* 2\[ \t\]+(Thread|LWP).*"
gdb_test "info threads" $pattern "thread 2 hit breakpoint"
gdb_test "break sigtrap_handler" "Breakpoint .* at .*$srcfile.*"
@@ -57,7 +57,7 @@ proc test { sigtrap_thread } {
"Continuing with signal SIGTRAP.*Breakpoint .* sigtrap_handler .*" \
"signal SIGTRAP reaches handler"
- set pattern "\\\* $sigtrap_thread\[ \t\]+Thread.*"
+ set pattern "\\\* $sigtrap_thread\[ \t\]+(Thread|LWP).*"
gdb_test "info threads" $pattern "right thread got the signal"
}
}
@@ -73,7 +73,7 @@ gdb_test "continue" " .*sem_post .*" "handle $sig helps"
set test "info threads"
gdb_test_multiple "info threads" "$test" {
- -re " Thread .*$gdb_prompt " {
+ -re " (Thread|LWP) .*$gdb_prompt " {
pass "$test"
}
-re "$gdb_prompt " {
@@ -35,7 +35,7 @@ proc get_thread_id {func} {
set thre -1
set test "get $func thread id"
gdb_test_multiple "info threads" $test {
- -re "(\[0-9\]+)\[^\n\r\]*Thread\[^\n\r\]*$func.*$gdb_prompt $" {
+ -re "(\[0-9\]+)\[^\n\r\]*(Thread|LWP)\[^\n\r\]*$func.*$gdb_prompt $" {
# Get the thread's id.
set thre $expect_out(1,string)
pass $test
@@ -41,11 +41,11 @@ proc get_thread_list { } {
-re "^ *Id *Target Id\[^\n\]*\n" {
exp_continue
}
- -re "^\\* *(\[0-9\]*) *Thread \[^\n\]*main\[^\n\]*\n" {
+ -re "^\\* *(\[0-9\]*) *(Thread|LWP) \[^\n\]*main\[^\n\]*\n" {
set thr_list "$expect_out(1,string) $thr_list"
exp_continue
}
- -re "^ *(\[0-9\]*) *Thread \[^\n\]*\n" {
+ -re "^ *(\[0-9\]*) *(Thread|LWP) \[^\n\]*\n" {
lappend thr_list $expect_out(1,string)
exp_continue
}
@@ -207,19 +207,19 @@ gdb_expect {
timeout { fail "continue to first thread (timeout)" }
}
-gdb_test "info thread" ".*Thread.*spin.*" \
+gdb_test "info thread" ".*(Thread|LWP).*spin.*" \
"at least one th in spin while stopped at first th"
check_thread_local "first"
gdb_test "continue" ".*Breakpoint 2.*tls value.*" "continue to second thread"
-gdb_test "info thread" "Thread.*spin.*" \
+gdb_test "info thread" "(Thread|LWP).*spin.*" \
"at least one th in spin while stopped at second th"
check_thread_local "second"
gdb_test "continue" ".*Breakpoint 2.*tls value.*" "continue to third thread"
-gdb_test "info thread" ".*Thread.*spin.*" \
+gdb_test "info thread" ".*(Thread|LWP).*spin.*" \
"at least one th in spin while stopped at third th"
check_thread_local "third"
@@ -229,7 +229,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\]+ *Id .*Frame\[ \t\r\n\]+.*(\[0-9\]+) *Thread\[^\r\n\]+\r\n$gdb_prompt $" {
+ -re "^info thread\[ \t\r\n\]+ *Id .*Frame\[ \t\r\n\]+.*(\[0-9\]+) *(Thread|LWP)\[^\r\n\]+\r\n$gdb_prompt $" {
set no_of_threads $expect_out(1,string)
pass "get number of threads"
}
@@ -280,10 +280,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|LWP).*2 *(Thread|LWP).*$gdb_prompt $" {
fail "too many threads left at end"
}
- -re ".*\\\* 1 *Thread.*main.*$gdb_prompt $" {
+ -re ".*\\\* 1 *(Thread|LWP).*main.*$gdb_prompt $" {
pass "expect only base thread at end"
}
-re ".*No stack.*$gdb_prompt $" {
@@ -385,7 +385,7 @@ proc use_collected_data { data_source } {
# There is always a thread of an inferior, either a live one or
# a faked one.
- gdb_test "info threads" "\\* ${decimal} (process|Thread) \[0-9\.\]+\[ \t\].*"
+ gdb_test "info threads" "\\* ${decimal} (process|Thread|LWP) \[0-9\.\]+\[ \t\].*"
gdb_test "info inferiors" "\\* 1 process ${decimal} \[ \t\]+\[^\r\n\]*\[ \t\]+${binfile}.*"
}
}
@@ -139,7 +139,7 @@ proc strace_info_marker { } {
# List all the thread. It is expected to get three threads without
# any errors.
gdb_test_multiple "info threads 3 2 1" "info threads" {
- -re "3\[ \t\]+Thread .*2\[ \t\]+Thread .*1\[ \t\]+Thread .*${gdb_prompt} $" {
+ -re "3\[ \t\]+(Thread|LWP) .*2\[ \t\]+(Thread|LWP) .*1\[ \t\]+(Thread|LWP) .*${gdb_prompt} $" {
pass "info threads"
}
}