public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
From: Jan Kratochvil <jan.kratochvil@redhat.com>
To: git-commits@fedoraproject.org
Subject: [rpms/gdb] gdb-17.2-rebase-f44: Rebase to FSF GDB 7.10.50.20160121 (trunk snapshot).
Date: Sat, 27 Jun 2026 23:57:25 GMT [thread overview]
Message-ID: <178260464569.1.4394454663117011285.rpms-gdb-c16b44507f81@fedoraproject.org> (raw)
A new commit has been pushed.
Repo : rpms/gdb
Branch : gdb-17.2-rebase-f44
Commit : c16b44507f814686b2d9a47ee78ddbc302971953
Author : Jan Kratochvil <jan.kratochvil@redhat.com>
Date : 2016-01-22T19:00:27+01:00
Stats : +221/-1546 in 13 file(s)
URL : https://src.fedoraproject.org/rpms/gdb/c/c16b44507f814686b2d9a47ee78ddbc302971953?branch=gdb-17.2-rebase-f44
Log:
Rebase to FSF GDB 7.10.50.20160121 (trunk snapshot).
---
diff --git a/.gitignore b/.gitignore
index f911cb2..4ec7e9e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,2 +1,2 @@
/gdb-libstdc++-v3-python-r225521.tar.xz
-/gdb-7.10.50.20160106.tar.xz
+/gdb-7.10.50.20160121.tar.xz
diff --git a/gdb-6.3-test-pie-20050107.patch b/gdb-6.3-test-pie-20050107.patch
index db3271b..260fba7 100644
--- a/gdb-6.3-test-pie-20050107.patch
+++ b/gdb-6.3-test-pie-20050107.patch
@@ -1,7 +1,7 @@
-Index: gdb-7.10.50.20160106/gdb/testsuite/configure.ac
+Index: gdb-7.10.50.20160121/gdb/testsuite/configure.ac
===================================================================
---- gdb-7.10.50.20160106.orig/gdb/testsuite/configure.ac 2016-01-06 02:48:37.000000000 +0100
-+++ gdb-7.10.50.20160106/gdb/testsuite/configure.ac 2016-01-08 19:57:23.747571543 +0100
+--- gdb-7.10.50.20160121.orig/gdb/testsuite/configure.ac 2016-01-21 02:48:36.000000000 +0100
++++ gdb-7.10.50.20160121/gdb/testsuite/configure.ac 2016-01-22 17:13:28.163703633 +0100
@@ -112,5 +112,5 @@
gdb.guile/Makefile gdb.linespec/Makefile \
gdb.mi/Makefile gdb.modula2/Makefile gdb.multi/Makefile \
@@ -9,10 +9,10 @@ Index: gdb-7.10.50.20160106/gdb/testsuite/configure.ac
- gdb.perf/Makefile gdb.python/Makefile gdb.reverse/Makefile gdb.stabs/Makefile \
+ gdb.perf/Makefile gdb.pie/Makefile gdb.python/Makefile gdb.reverse/Makefile gdb.stabs/Makefile \
gdb.threads/Makefile gdb.trace/Makefile gdb.xml/Makefile])
-Index: gdb-7.10.50.20160106/gdb/testsuite/configure
+Index: gdb-7.10.50.20160121/gdb/testsuite/configure
===================================================================
---- gdb-7.10.50.20160106.orig/gdb/testsuite/configure 2016-01-06 02:48:37.000000000 +0100
-+++ gdb-7.10.50.20160106/gdb/testsuite/configure 2016-01-08 19:57:23.748571549 +0100
+--- gdb-7.10.50.20160121.orig/gdb/testsuite/configure 2016-01-21 02:48:36.000000000 +0100
++++ gdb-7.10.50.20160121/gdb/testsuite/configure 2016-01-22 17:13:28.164703639 +0100
@@ -3512,7 +3512,7 @@
ac_config_files="$ac_config_files lib/pdtrace"
@@ -30,10 +30,10 @@ Index: gdb-7.10.50.20160106/gdb/testsuite/configure
"gdb.python/Makefile") CONFIG_FILES="$CONFIG_FILES gdb.python/Makefile" ;;
"gdb.reverse/Makefile") CONFIG_FILES="$CONFIG_FILES gdb.reverse/Makefile" ;;
"gdb.stabs/Makefile") CONFIG_FILES="$CONFIG_FILES gdb.stabs/Makefile" ;;
-Index: gdb-7.10.50.20160106/gdb/testsuite/gdb.pie/attach.c
+Index: gdb-7.10.50.20160121/gdb/testsuite/gdb.pie/attach.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.10.50.20160106/gdb/testsuite/gdb.pie/attach.c 2016-01-08 19:57:23.748571549 +0100
++++ gdb-7.10.50.20160121/gdb/testsuite/gdb.pie/attach.c 2016-01-22 17:13:28.164703639 +0100
@@ -0,0 +1,20 @@
+/* This program is intended to be started outside of gdb, and then
+ attached to by gdb. Thus, it simply spins in a loop. The loop
@@ -55,10 +55,10 @@ Index: gdb-7.10.50.20160106/gdb/testsuite/gdb.pie/attach.c
+ }
+ return 0;
+}
-Index: gdb-7.10.50.20160106/gdb/testsuite/gdb.pie/attach2.c
+Index: gdb-7.10.50.20160121/gdb/testsuite/gdb.pie/attach2.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.10.50.20160106/gdb/testsuite/gdb.pie/attach2.c 2016-01-08 19:57:23.748571549 +0100
++++ gdb-7.10.50.20160121/gdb/testsuite/gdb.pie/attach2.c 2016-01-22 17:13:28.165703646 +0100
@@ -0,0 +1,24 @@
+/* This program is intended to be started outside of gdb, and then
+ attached to by gdb. Thus, it simply spins in a loop. The loop
@@ -84,10 +84,10 @@ Index: gdb-7.10.50.20160106/gdb/testsuite/gdb.pie/attach2.c
+ }
+ return (0);
+}
-Index: gdb-7.10.50.20160106/gdb/testsuite/gdb.pie/break.c
+Index: gdb-7.10.50.20160121/gdb/testsuite/gdb.pie/break.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.10.50.20160106/gdb/testsuite/gdb.pie/break.c 2016-01-08 19:57:23.748571549 +0100
++++ gdb-7.10.50.20160121/gdb/testsuite/gdb.pie/break.c 2016-01-22 17:13:28.165703646 +0100
@@ -0,0 +1,146 @@
+/* This testcase is part of GDB, the GNU debugger.
+
@@ -235,10 +235,10 @@ Index: gdb-7.10.50.20160106/gdb/testsuite/gdb.pie/break.c
+ }
+ return 0;
+}
-Index: gdb-7.10.50.20160106/gdb/testsuite/gdb.pie/break1.c
+Index: gdb-7.10.50.20160121/gdb/testsuite/gdb.pie/break1.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.10.50.20160106/gdb/testsuite/gdb.pie/break1.c 2016-01-08 19:57:23.749571554 +0100
++++ gdb-7.10.50.20160121/gdb/testsuite/gdb.pie/break1.c 2016-01-22 17:13:28.165703646 +0100
@@ -0,0 +1,44 @@
+/* This testcase is part of GDB, the GNU debugger.
+
@@ -284,10 +284,10 @@ Index: gdb-7.10.50.20160106/gdb/testsuite/gdb.pie/break1.c
+void marker3 (a, b) char *a, *b; {} /* set breakpoint 18 here */
+void marker4 (d) long d; {} /* set breakpoint 13 here */
+#endif
-Index: gdb-7.10.50.20160106/gdb/testsuite/gdb.pie/coremaker.c
+Index: gdb-7.10.50.20160121/gdb/testsuite/gdb.pie/coremaker.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.10.50.20160106/gdb/testsuite/gdb.pie/coremaker.c 2016-01-08 19:57:23.749571554 +0100
++++ gdb-7.10.50.20160121/gdb/testsuite/gdb.pie/coremaker.c 2016-01-22 17:13:28.165703646 +0100
@@ -0,0 +1,142 @@
+/* Copyright 1992, 1993, 1994, 1995, 1996, 1999
+ Free Software Foundation, Inc.
@@ -431,10 +431,10 @@ Index: gdb-7.10.50.20160106/gdb/testsuite/gdb.pie/coremaker.c
+ return 0;
+}
+
-Index: gdb-7.10.50.20160106/gdb/testsuite/gdb.pie/attach.exp
+Index: gdb-7.10.50.20160121/gdb/testsuite/gdb.pie/attach.exp
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.10.50.20160106/gdb/testsuite/gdb.pie/attach.exp 2016-01-08 19:57:23.749571554 +0100
++++ gdb-7.10.50.20160121/gdb/testsuite/gdb.pie/attach.exp 2016-01-22 17:13:28.166703652 +0100
@@ -0,0 +1,417 @@
+# Copyright 1997, 1999, 2002 Free Software Foundation, Inc.
+
@@ -853,11 +853,11 @@ Index: gdb-7.10.50.20160106/gdb/testsuite/gdb.pie/attach.exp
+do_call_attach_tests
+
+return 0
-Index: gdb-7.10.50.20160106/gdb/testsuite/gdb.pie/break.exp
+Index: gdb-7.10.50.20160121/gdb/testsuite/gdb.pie/break.exp
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.10.50.20160106/gdb/testsuite/gdb.pie/break.exp 2016-01-08 19:58:00.877778395 +0100
-@@ -0,0 +1,958 @@
++++ gdb-7.10.50.20160121/gdb/testsuite/gdb.pie/break.exp 2016-01-22 17:21:31.973720194 +0100
+@@ -0,0 +1,954 @@
+# Copyright 1988, 1990, 1991, 1992, 1994, 1995, 1996, 1997, 1998, 1999,
+# 2000, 2002, 2003, 2004
+# Free Software Foundation, Inc.
@@ -1355,14 +1355,10 @@ Index: gdb-7.10.50.20160106/gdb/testsuite/gdb.pie/break.exp
+ {fail "thread-specific breakpoint on non-existent thread disallowed"}
+ timeout {fail "(timeout) thread-specific breakpoint on non-existent thread disallowed"}
+}
-+send_gdb "break $bp_location12 thread foo\n"
-+gdb_expect {
-+ -re "Junk after thread keyword..*$gdb_prompt $"\
-+ {pass "thread-specific breakpoint on bogus thread ID disallowed"}
-+ -re "$gdb_prompt $"\
-+ {fail "thread-specific breakpoint on bogus thread ID disallowed"}
-+ timeout {fail "(timeout) thread-specific breakpoint on bogus thread ID disallowed"}
-+}
++
++gdb_test "break $bp_location12 thread foo" \
++ "Invalid thread ID: foo" \
++ "thread-specific breakpoint on bogus thread ID disallowed"
+
+# Verify that GDB responds gracefully to a breakpoint command with
+# trailing garbage.
@@ -1816,10 +1812,10 @@ Index: gdb-7.10.50.20160106/gdb/testsuite/gdb.pie/break.exp
+ send_gdb "set args main\n"
+ gdb_expect -re ".*$gdb_prompt $" {}
+}
-Index: gdb-7.10.50.20160106/gdb/testsuite/gdb.pie/corefile.exp
+Index: gdb-7.10.50.20160121/gdb/testsuite/gdb.pie/corefile.exp
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.10.50.20160106/gdb/testsuite/gdb.pie/corefile.exp 2016-01-08 19:57:23.750571560 +0100
++++ gdb-7.10.50.20160121/gdb/testsuite/gdb.pie/corefile.exp 2016-01-22 17:13:28.167703658 +0100
@@ -0,0 +1,233 @@
+# Copyright 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000
+# Free Software Foundation, Inc.
@@ -2054,10 +2050,10 @@ Index: gdb-7.10.50.20160106/gdb/testsuite/gdb.pie/corefile.exp
+gdb_test "up" "#\[0-9\]* *\[0-9xa-fH'\]* in .* \\(.*\\).*" "up in corefile.exp (reinit)"
+
+gdb_test "core" "No core file now."
-Index: gdb-7.10.50.20160106/gdb/testsuite/gdb.pie/Makefile.in
+Index: gdb-7.10.50.20160121/gdb/testsuite/gdb.pie/Makefile.in
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.10.50.20160106/gdb/testsuite/gdb.pie/Makefile.in 2016-01-08 19:57:23.750571560 +0100
++++ gdb-7.10.50.20160121/gdb/testsuite/gdb.pie/Makefile.in 2016-01-22 17:13:28.167703658 +0100
@@ -0,0 +1,19 @@
+VPATH = @srcdir@
+srcdir = @srcdir@
diff --git a/gdb-6.5-bz216711-clone-is-outermost.patch b/gdb-6.5-bz216711-clone-is-outermost.patch
index a2c4b8f..1554837 100644
--- a/gdb-6.5-bz216711-clone-is-outermost.patch
+++ b/gdb-6.5-bz216711-clone-is-outermost.patch
@@ -23,11 +23,11 @@ instead.
Port to GDB-6.7.
-Index: gdb-7.8.50.20141228/gdb/amd64-linux-tdep.c
+Index: gdb-7.10.50.20160121/gdb/amd64-linux-tdep.c
===================================================================
---- gdb-7.8.50.20141228.orig/gdb/amd64-linux-tdep.c 2015-01-01 17:01:51.506856241 +0100
-+++ gdb-7.8.50.20141228/gdb/amd64-linux-tdep.c 2015-01-01 17:01:54.769854349 +0100
-@@ -290,6 +290,80 @@ amd64_linux_register_reggroup_p (struct
+--- gdb-7.10.50.20160121.orig/gdb/amd64-linux-tdep.c 2016-01-22 17:19:01.945819383 +0100
++++ gdb-7.10.50.20160121/gdb/amd64-linux-tdep.c 2016-01-22 17:21:54.609855292 +0100
+@@ -292,6 +292,80 @@
/* Set the program counter for process PTID to PC. */
@@ -108,7 +108,7 @@ Index: gdb-7.8.50.20141228/gdb/amd64-linux-tdep.c
static void
amd64_linux_write_pc (struct regcache *regcache, CORE_ADDR pc)
{
-@@ -1657,6 +1731,8 @@ amd64_linux_init_abi_common(struct gdbar
+@@ -1800,6 +1874,8 @@
tdep->xsave_xcr0_offset = I386_LINUX_XSAVE_XCR0_OFFSET;
@@ -117,11 +117,11 @@ Index: gdb-7.8.50.20141228/gdb/amd64-linux-tdep.c
/* Add the %orig_rax register used for syscall restarting. */
set_gdbarch_write_pc (gdbarch, amd64_linux_write_pc);
-Index: gdb-7.8.50.20141228/gdb/amd64-tdep.c
+Index: gdb-7.10.50.20160121/gdb/amd64-tdep.c
===================================================================
---- gdb-7.8.50.20141228.orig/gdb/amd64-tdep.c 2015-01-01 17:01:51.507856240 +0100
-+++ gdb-7.8.50.20141228/gdb/amd64-tdep.c 2015-01-01 17:01:54.770854349 +0100
-@@ -2492,6 +2492,7 @@ amd64_frame_unwind_stop_reason (struct f
+--- gdb-7.10.50.20160121.orig/gdb/amd64-tdep.c 2016-01-22 17:19:01.945819383 +0100
++++ gdb-7.10.50.20160121/gdb/amd64-tdep.c 2016-01-22 17:21:54.610855298 +0100
+@@ -2494,6 +2494,7 @@
{
struct amd64_frame_cache *cache =
amd64_frame_cache (this_frame, this_cache);
@@ -129,7 +129,7 @@ Index: gdb-7.8.50.20141228/gdb/amd64-tdep.c
if (!cache->base_p)
return UNWIND_UNAVAILABLE;
-@@ -2500,6 +2501,10 @@ amd64_frame_unwind_stop_reason (struct f
+@@ -2502,6 +2503,10 @@
if (cache->base == 0)
return UNWIND_OUTERMOST;
@@ -140,7 +140,7 @@ Index: gdb-7.8.50.20141228/gdb/amd64-tdep.c
return UNWIND_NO_REASON;
}
-@@ -2631,6 +2636,7 @@ amd64_sigtramp_frame_this_id (struct fra
+@@ -2636,6 +2641,7 @@
{
struct amd64_frame_cache *cache =
amd64_sigtramp_frame_cache (this_frame, this_cache);
@@ -148,7 +148,7 @@ Index: gdb-7.8.50.20141228/gdb/amd64-tdep.c
if (!cache->base_p)
(*this_id) = frame_id_build_unavailable_stack (get_frame_pc (this_frame));
-@@ -2639,6 +2645,11 @@ amd64_sigtramp_frame_this_id (struct fra
+@@ -2644,6 +2650,11 @@
/* This marks the outermost frame. */
return;
}
@@ -160,11 +160,11 @@ Index: gdb-7.8.50.20141228/gdb/amd64-tdep.c
else
(*this_id) = frame_id_build (cache->base + 16, get_frame_pc (this_frame));
}
-Index: gdb-7.8.50.20141228/gdb/i386-tdep.c
+Index: gdb-7.10.50.20160121/gdb/i386-tdep.c
===================================================================
---- gdb-7.8.50.20141228.orig/gdb/i386-tdep.c 2015-01-01 17:01:51.509856239 +0100
-+++ gdb-7.8.50.20141228/gdb/i386-tdep.c 2015-01-01 17:01:54.772854348 +0100
-@@ -8286,6 +8286,9 @@ i386_gdbarch_init (struct gdbarch_info i
+--- gdb-7.10.50.20160121.orig/gdb/i386-tdep.c 2016-01-22 17:19:01.945819383 +0100
++++ gdb-7.10.50.20160121/gdb/i386-tdep.c 2016-01-22 17:21:54.612855310 +0100
+@@ -8305,6 +8305,9 @@
tdep->xsave_xcr0_offset = -1;
@@ -174,11 +174,11 @@ Index: gdb-7.8.50.20141228/gdb/i386-tdep.c
tdep->record_regmap = i386_record_regmap;
set_gdbarch_long_long_align_bit (gdbarch, 32);
-Index: gdb-7.8.50.20141228/gdb/i386-tdep.h
+Index: gdb-7.10.50.20160121/gdb/i386-tdep.h
===================================================================
---- gdb-7.8.50.20141228.orig/gdb/i386-tdep.h 2015-01-01 17:01:54.772854348 +0100
-+++ gdb-7.8.50.20141228/gdb/i386-tdep.h 2015-01-01 17:02:15.826842143 +0100
-@@ -240,6 +240,9 @@ struct gdbarch_tdep
+--- gdb-7.10.50.20160121.orig/gdb/i386-tdep.h 2016-01-22 17:19:01.945819383 +0100
++++ gdb-7.10.50.20160121/gdb/i386-tdep.h 2016-01-22 17:21:54.612855310 +0100
+@@ -240,6 +240,9 @@
/* Regsets. */
const struct regset *fpregset;
@@ -188,10 +188,10 @@ Index: gdb-7.8.50.20141228/gdb/i386-tdep.h
};
/* Floating-point registers. */
-Index: gdb-7.8.50.20141228/gdb/testsuite/gdb.threads/bt-clone-stop.c
+Index: gdb-7.10.50.20160121/gdb/testsuite/gdb.threads/bt-clone-stop.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.8.50.20141228/gdb/testsuite/gdb.threads/bt-clone-stop.c 2015-01-01 17:01:54.773854347 +0100
++++ gdb-7.10.50.20160121/gdb/testsuite/gdb.threads/bt-clone-stop.c 2016-01-22 17:21:54.612855310 +0100
@@ -0,0 +1,39 @@
+/* This testcase is part of GDB, the GNU debugger.
+
@@ -232,10 +232,10 @@ Index: gdb-7.8.50.20141228/gdb/testsuite/gdb.threads/bt-clone-stop.c
+ for (;;)
+ pause();
+}
-Index: gdb-7.8.50.20141228/gdb/testsuite/gdb.threads/bt-clone-stop.exp
+Index: gdb-7.10.50.20160121/gdb/testsuite/gdb.threads/bt-clone-stop.exp
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.8.50.20141228/gdb/testsuite/gdb.threads/bt-clone-stop.exp 2015-01-01 17:01:54.774854346 +0100
++++ gdb-7.10.50.20160121/gdb/testsuite/gdb.threads/bt-clone-stop.exp 2016-01-22 17:23:42.188497347 +0100
@@ -0,0 +1,61 @@
+# Copyright 2006 Free Software Foundation, Inc.
+
@@ -278,7 +278,7 @@ Index: gdb-7.8.50.20141228/gdb/testsuite/gdb.threads/bt-clone-stop.exp
+# Program received signal SIGABRT, Aborted.
+
+gdb_test "run" \
-+ "Program received signal SIGABRT.*" \
++ {Thread 2 "bt-clone-stop" received signal SIGABRT.*} \
+ "run"
+
+# Former gdb unwind (the first function is `clone'):
diff --git a/gdb-archer-pie-addons-keep-disabled.patch b/gdb-archer-pie-addons-keep-disabled.patch
index 1f849d1..b6a486d 100644
--- a/gdb-archer-pie-addons-keep-disabled.patch
+++ b/gdb-archer-pie-addons-keep-disabled.patch
@@ -1,8 +1,8 @@
-Index: gdb-7.7.50.20140609/gdb/breakpoint.c
+Index: gdb-7.10.50.20160121/gdb/breakpoint.c
===================================================================
---- gdb-7.7.50.20140609.orig/gdb/breakpoint.c 2014-06-13 20:24:34.564667225 +0200
-+++ gdb-7.7.50.20140609/gdb/breakpoint.c 2014-06-13 20:24:35.650668351 +0200
-@@ -16364,6 +16364,50 @@ initialize_breakpoint_ops (void)
+--- gdb-7.10.50.20160121.orig/gdb/breakpoint.c 2016-01-21 21:52:34.243387043 +0100
++++ gdb-7.10.50.20160121/gdb/breakpoint.c 2016-01-21 21:53:00.365542925 +0100
+@@ -16139,6 +16139,50 @@
static struct cmd_list_element *enablebreaklist = NULL;
void
@@ -53,23 +53,23 @@ Index: gdb-7.7.50.20140609/gdb/breakpoint.c
_initialize_breakpoint (void)
{
struct cmd_list_element *c;
-Index: gdb-7.7.50.20140609/gdb/breakpoint.h
+Index: gdb-7.10.50.20160121/gdb/breakpoint.h
===================================================================
---- gdb-7.7.50.20140609.orig/gdb/breakpoint.h 2014-06-13 20:24:34.566667227 +0200
-+++ gdb-7.7.50.20140609/gdb/breakpoint.h 2014-06-13 20:24:35.651668352 +0200
-@@ -1553,4 +1553,7 @@ extern void breakpoint_free_objfile (str
-
- extern char *ep_parse_optional_if_clause (char **arg);
+--- gdb-7.10.50.20160121.orig/gdb/breakpoint.h 2016-01-21 21:52:34.244387049 +0100
++++ gdb-7.10.50.20160121/gdb/breakpoint.h 2016-01-21 21:53:00.366542931 +0100
+@@ -1629,4 +1629,7 @@
+ UIOUT iff debugging multiple threads. */
+ extern void maybe_print_thread_hit_breakpoint (struct ui_out *uiout);
+extern void breakpoints_relocate (struct objfile *objfile,
+ struct section_offsets *delta);
+
#endif /* !defined (BREAKPOINT_H) */
-Index: gdb-7.7.50.20140609/gdb/objfiles.c
+Index: gdb-7.10.50.20160121/gdb/objfiles.c
===================================================================
---- gdb-7.7.50.20140609.orig/gdb/objfiles.c 2014-06-13 20:24:35.652668353 +0200
-+++ gdb-7.7.50.20140609/gdb/objfiles.c 2014-06-13 20:25:10.867704891 +0200
-@@ -820,6 +820,11 @@ objfile_relocate1 (struct objfile *objfi
+--- gdb-7.10.50.20160121.orig/gdb/objfiles.c 2016-01-21 21:52:34.245387055 +0100
++++ gdb-7.10.50.20160121/gdb/objfiles.c 2016-01-21 21:53:00.367542937 +0100
+@@ -916,6 +916,11 @@
obj_section_addr (s));
}
diff --git a/gdb-bz541866-rwatch-before-run.patch b/gdb-bz541866-rwatch-before-run.patch
index 792b410..dc2d3ee 100644
--- a/gdb-bz541866-rwatch-before-run.patch
+++ b/gdb-bz541866-rwatch-before-run.patch
@@ -1,8 +1,8 @@
-Index: gdb-7.9.90.20150709/gdb/config/i386/linux64.mh
+Index: gdb-7.10.50.20160121/gdb/config/i386/linux64.mh
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/config/i386/linux64.mh 2015-07-09 18:23:32.173786118 +0200
-+++ gdb-7.9.90.20150709/gdb/config/i386/linux64.mh 2015-07-09 18:23:51.823953736 +0200
-@@ -7,7 +7,7 @@ NATDEPFILES= inf-ptrace.o fork-child.o \
+--- gdb-7.10.50.20160121.orig/gdb/config/i386/linux64.mh 2016-01-21 02:48:36.000000000 +0100
++++ gdb-7.10.50.20160121/gdb/config/i386/linux64.mh 2016-01-22 18:36:09.099067233 +0100
+@@ -7,7 +7,7 @@
linux-procfs.o linux-ptrace.o linux-btrace.o \
linux-waitpid.o linux-personality.o x86-linux.o \
x86-linux-dregs.o linux-namespaces.o
@@ -11,10 +11,10 @@ Index: gdb-7.9.90.20150709/gdb/config/i386/linux64.mh
NAT_CDEPS = $(srcdir)/proc-service.list
# The dynamically loaded libthread_db needs access to symbols in the
-Index: gdb-7.9.90.20150709/gdb/config/i386/linux.mh
+Index: gdb-7.10.50.20160121/gdb/config/i386/linux.mh
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/config/i386/linux.mh 2015-07-09 18:23:30.527772078 +0200
-+++ gdb-7.9.90.20150709/gdb/config/i386/linux.mh 2015-07-09 18:23:32.174786127 +0200
+--- gdb-7.10.50.20160121.orig/gdb/config/i386/linux.mh 2016-01-21 02:48:36.000000000 +0100
++++ gdb-7.10.50.20160121/gdb/config/i386/linux.mh 2016-01-22 18:36:09.099067233 +0100
@@ -1,6 +1,6 @@
# Host: Intel 386 running GNU/Linux.
@@ -23,10 +23,10 @@ Index: gdb-7.9.90.20150709/gdb/config/i386/linux.mh
NATDEPFILES= inf-ptrace.o fork-child.o \
x86-nat.o x86-dregs.o i386-linux-nat.o x86-linux-nat.o \
proc-service.o linux-thread-db.o \
-Index: gdb-7.9.90.20150709/gdb/config/i386/nm-linux.h
+Index: gdb-7.10.50.20160121/gdb/config/i386/nm-linux.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.9.90.20150709/gdb/config/i386/nm-linux.h 2015-07-09 18:23:32.174786127 +0200
++++ gdb-7.10.50.20160121/gdb/config/i386/nm-linux.h 2016-01-22 18:36:09.099067233 +0100
@@ -0,0 +1,28 @@
+/* Native support for GNU/Linux i386.
+
@@ -56,10 +56,10 @@ Index: gdb-7.9.90.20150709/gdb/config/i386/nm-linux.h
+#define target_can_use_hardware_watchpoint(type, cnt, ot) 1
+
+#endif /* NM_LINUX64_H */
-Index: gdb-7.9.90.20150709/gdb/config/i386/nm-linux64.h
+Index: gdb-7.10.50.20160121/gdb/config/i386/nm-linux64.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.9.90.20150709/gdb/config/i386/nm-linux64.h 2015-07-09 18:23:32.174786127 +0200
++++ gdb-7.10.50.20160121/gdb/config/i386/nm-linux64.h 2016-01-22 18:36:09.100067240 +0100
@@ -0,0 +1,28 @@
+/* Native support for GNU/Linux amd64.
+
@@ -89,11 +89,11 @@ Index: gdb-7.9.90.20150709/gdb/config/i386/nm-linux64.h
+#define target_can_use_hardware_watchpoint(type, cnt, ot) 1
+
+#endif /* NM_LINUX64_H */
-Index: gdb-7.9.90.20150709/gdb/target.h
+Index: gdb-7.10.50.20160121/gdb/target.h
===================================================================
---- gdb-7.9.90.20150709.orig/gdb/target.h 2015-07-09 18:23:30.528772086 +0200
-+++ gdb-7.9.90.20150709/gdb/target.h 2015-07-09 18:23:32.175786135 +0200
-@@ -1849,9 +1849,11 @@ extern char *target_thread_name (struct
+--- gdb-7.10.50.20160121.orig/gdb/target.h 2016-01-21 02:48:36.000000000 +0100
++++ gdb-7.10.50.20160121/gdb/target.h 2016-01-22 18:36:09.100067240 +0100
+@@ -1924,9 +1924,11 @@
CNT is the number of such watchpoints used so far, including this
one. OTHERTYPE is who knows what... */
@@ -105,10 +105,10 @@ Index: gdb-7.9.90.20150709/gdb/target.h
/* Returns the number of debug registers needed to watch the given
memory region, or zero if not supported. */
-Index: gdb-7.9.90.20150709/gdb/testsuite/gdb.base/watchpoint-hw-before-run.exp
+Index: gdb-7.10.50.20160121/gdb/testsuite/gdb.base/watchpoint-hw-before-run.exp
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ gdb-7.9.90.20150709/gdb/testsuite/gdb.base/watchpoint-hw-before-run.exp 2015-07-09 18:23:32.175786135 +0200
++++ gdb-7.10.50.20160121/gdb/testsuite/gdb.base/watchpoint-hw-before-run.exp 2016-01-22 18:38:58.350155294 +0100
@@ -0,0 +1,40 @@
+# Copyright 2009, 2010 Free Software Foundation, Inc.
+
@@ -149,4 +149,4 @@ Index: gdb-7.9.90.20150709/gdb/testsuite/gdb.base/watchpoint-hw-before-run.exp
+}
+gdb_test "" "main .* at .*" "start"
+
-+gdb_test "continue" "Continuing.\r\nHardware read watchpoint \[0-9\]+: watchee\r\n\r\nValue = 0\r\n.*"
++gdb_test "continue" "Continuing.\r\n\r\nHardware read watchpoint \[0-9\]+: watchee\r\n\r\nValue = 0\r\n.*"
diff --git a/gdb-fork-plus-threads-ascending-revert.patch b/gdb-fork-plus-threads-ascending-revert.patch
deleted file mode 100644
index 3258bf4..0000000
--- a/gdb-fork-plus-threads-ascending-revert.patch
+++ /dev/null
@@ -1,945 +0,0 @@
-http://sourceware.org/ml/gdb-patches/2016-01/msg00141.html
-Subject: Regression for gdb.threads/fork-plus-threads.exp [Re: [PATCH 3/6] List inferiors/threads/pspaces in ascending order]
-
-On Thu, 22 Oct 2015 11:59:01 +0200, Pedro Alves wrote:
-
-7e0aa6aa9983c745aedc203db0cc360a0ad47cac is the first bad commit
-commit 7e0aa6aa9983c745aedc203db0cc360a0ad47cac
-Author: Pedro Alves <palves@redhat.com>
-Date: Tue Nov 24 18:11:21 2015 +0000
- List inferiors/threads/pspaces in ascending order
-
-PASS->FAIL:
-FAIL: gdb.threads/fork-plus-threads.exp: detach-on-fork=off: inferior 1 exited
-FAIL: gdb.threads/fork-plus-threads.exp: detach-on-fork=off: no threads left (timeout)
-FAIL: gdb.threads/fork-plus-threads.exp: detach-on-fork=off: only inferior 1 left (the program exited)
-
--PASS: gdb.threads/fork-plus-threads.exp: detach-on-fork=off: inferior 1 exited
-+warning: Error removing breakpoint 1^M
-+Error in re-setting breakpoint 1: Warning:^M
-+Cannot insert breakpoint 1.^M
-+Cannot access memory at address 0x8048700^M
-+^M
-+Warning:^M
-+Cannot insert breakpoint 1.^M
-+Cannot access memory at address 0x8048700^M
-+^M
-+(gdb) FAIL: gdb.threads/fork-plus-threads.exp: detach-on-fork=off: inferior 1 exited
-
-I haven't tried to debug it.
-
-It happens on Fedora 23 x86_64 with -m32 for the testsuite.
-
-
-Jan
-
-REVERT:
-
-commit 7e0aa6aa9983c745aedc203db0cc360a0ad47cac
-Author: Pedro Alves <palves@redhat.com>
-Date: Tue Nov 24 18:11:21 2015 +0000
-
- List inferiors/threads/pspaces in ascending order
-
- Before:
- (gdb) info threads
- Id Target Id Frame
- 3 Thread 0x7ffff77c3700 (LWP 29035) callme () at foo.c:30
- 2 Thread 0x7ffff7fc4700 (LWP 29034) 0x000000000040087b in child_function_2 (arg=0x0) at foo.c:60
- * 1 Thread 0x7ffff7fc5740 (LWP 29030) 0x0000003b37209237 in pthread_join (threadid=140737353893632, thread_return=0x0) at pthread_join.c:92
-
- After:
- (gdb) info threads
- Id Target Id Frame
- * 1 Thread 0x7ffff7fc5740 (LWP 29030) 0x0000003b37209237 in pthread_join (threadid=140737353893632, thread_return=0x0) at pthread_join.c:92
- 2 Thread 0x7ffff7fc4700 (LWP 29034) 0x000000000040087b in child_function_2 (arg=0x0) at foo.c:60
- 3 Thread 0x7ffff77c3700 (LWP 29035) callme () at foo.c:30
-
- gdb/doc/ChangeLog:
- 2015-11-24 Pedro Alves <palves@redhat.com>
-
- PR 17539
- * gdb.texinfo (Inferiors and Programs): Adjust "maint info
- program-spaces" example to ascending order listing.
- (Threads): Adjust "info threads" example to ascending order
- listing.
- (Forks): Adjust "info inferiors" example to ascending order
- listing.
-
- gdb/ChangeLog:
- 2015-11-24 Pedro Alves <palves@redhat.com>
-
- PR 17539
- * inferior.c (add_inferior_silent): Append the new inferior to the
- end of the list.
- * progspace.c (add_program_space): Append the new pspace to the
- end of the list.
- * thread.c (new_thread): Append the new thread to the end of the
- list.
-
- gdb/testsuite/ChangeLog:
- 2015-11-24 Pedro Alves <palves@redhat.com>
-
- PR 17539
- * gdb.base/foll-exec-mode.exp: Adjust to GDB listing inferiors and
- threads in ascending order.
- * gdb.base/foll-fork.exp: Likewise.
- * gdb.base/foll-vfork.exp: Likewise.
- * gdb.base/multi-forks.exp: Likewise.
- * gdb.mi/mi-nonstop.exp: Likewise.
- * gdb.mi/mi-nsintrall.exp: Likewise.
- * gdb.multi/base.exp: Likewise.
- * gdb.multi/multi-arch.exp: Likewise.
- * gdb.python/py-inferior.exp: Likewise.
- * gdb.threads/break-while-running.exp: Likewise.
- * gdb.threads/execl.exp: Likewise.
- * gdb.threads/gcore-thread.exp: Likewise.
- * gdb.threads/info-threads-cur-sal.exp: Likewise.
- * gdb.threads/kill.exp: Likewise.
- * gdb.threads/linux-dp.exp: Likewise.
- * gdb.threads/multiple-step-overs.exp: Likewise.
- * gdb.threads/next-bp-other-thread.exp: Likewise.
- * gdb.threads/step-bg-decr-pc-switch-thread.exp: Likewise.
- * gdb.threads/step-over-lands-on-breakpoint.exp: Likewise.
- * gdb.threads/step-over-trips-on-watchpoint.exp: Likewise.
- * gdb.threads/thread-find.exp: Likewise.
- * gdb.threads/tls.exp: Likewise.
- * lib/mi-support.exp (mi_reverse_list): Delete.
- (mi_check_thread_states): No longer reverse list.
-
-diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo
-index 0778383..fe9481d 100644
---- a/gdb/doc/gdb.texinfo
-+++ b/gdb/doc/gdb.texinfo
-@@ -2791,9 +2791,9 @@ example, the list of inferiors bound to the program space.
- @smallexample
- (@value{GDBP}) maint info program-spaces
- Id Executable
--* 1 hello
- 2 goodbye
- Bound inferiors: ID 1 (process 21561)
-+* 1 hello
- @end smallexample
-
- Here we can see that no inferior is running the program @code{hello},
-@@ -2924,9 +2924,9 @@ For example,
- @smallexample
- (@value{GDBP}) info threads
- Id Target Id Frame
--* 1 process 35 thread 13 main (argc=1, argv=0x7ffffff8)
-- 2 process 35 thread 23 0x34e5 in sigpause ()
- 3 process 35 thread 27 0x34e5 in sigpause ()
-+ 2 process 35 thread 23 0x34e5 in sigpause ()
-+* 1 process 35 thread 13 main (argc=1, argv=0x7ffffff8)
- at threadtest.c:68
- @end smallexample
-
-@@ -3241,8 +3241,8 @@ process 12020 is executing new program: prog2
- Program exited normally.
- (@value{GDBP}) info inferiors
- Id Description Executable
-- 1 <null> prog1
- * 2 <null> prog2
-+ 1 <null> prog1
- @end smallexample
-
- @item same
-diff --git a/gdb/inferior.c b/gdb/inferior.c
-index e71104d..515268f 100644
---- a/gdb/inferior.c
-+++ b/gdb/inferior.c
-@@ -135,17 +135,8 @@ add_inferior_silent (int pid)
- inf->control.stop_soon = NO_STOP_QUIETLY;
-
- inf->num = ++highest_inferior_num;
--
-- if (inferior_list == NULL)
-- inferior_list = inf;
-- else
-- {
-- struct inferior *last;
--
-- for (last = inferior_list; last->next != NULL; last = last->next)
-- ;
-- last->next = inf;
-- }
-+ inf->next = inferior_list;
-+ inferior_list = inf;
-
- inf->environment = make_environ ();
- init_environ (inf->environment);
-diff --git a/gdb/progspace.c b/gdb/progspace.c
-index 59a7846..9a622ed 100644
---- a/gdb/progspace.c
-+++ b/gdb/progspace.c
-@@ -133,16 +133,8 @@ add_program_space (struct address_space *aspace)
-
- program_space_alloc_data (pspace);
-
-- if (program_spaces == NULL)
-- program_spaces = pspace;
-- else
-- {
-- struct program_space *last;
--
-- for (last = program_spaces; last->next != NULL; last = last->next)
-- ;
-- last->next = pspace;
-- }
-+ pspace->next = program_spaces;
-+ program_spaces = pspace;
-
- return pspace;
- }
-diff --git a/gdb/testsuite/gdb.base/foll-exec-mode.exp b/gdb/testsuite/gdb.base/foll-exec-mode.exp
-index 41d788b..ad23cb5 100644
---- a/gdb/testsuite/gdb.base/foll-exec-mode.exp
-+++ b/gdb/testsuite/gdb.base/foll-exec-mode.exp
-@@ -150,7 +150,7 @@ proc do_follow_exec_mode_tests { mode cmd infswitch } {
- if {$mode == "same"} {
- set expected_re "\\* 1.*process.*"
- } else {
-- set expected_re " 1.*null.*$testfile.*\r\n\\* 2.*process.*$testfile2 .*"
-+ set expected_re "\\* 2.*process.*$testfile2 \r\n 1.*null.*$testfile.*"
- }
-
- # Check that the inferior list is correct:
-diff --git a/gdb/testsuite/gdb.base/foll-fork.exp b/gdb/testsuite/gdb.base/foll-fork.exp
-index 61aefc1..bd1df14 100644
---- a/gdb/testsuite/gdb.base/foll-fork.exp
-+++ b/gdb/testsuite/gdb.base/foll-fork.exp
-@@ -139,7 +139,7 @@ proc test_follow_fork { who detach cmd } {
-
- # Follow parent / keep child: two inferiors under debug, the
- # parent is the current inferior.
-- gdb_test "info inferiors" "\\* 1 .*process.* 2 .*process.*" \
-+ gdb_test "info inferiors" " 2 .*process.*\\* 1 .*process.*" \
- "info inferiors"
-
- gdb_test "inferior 2" "Switching to inferior 2 .*"
-@@ -150,14 +150,14 @@ proc test_follow_fork { who detach cmd } {
- # Follow child / detach parent: the child is under debug and is
- # the current inferior. The parent is listed but is not under
- # debug.
-- gdb_test "info inferiors" " 1 .*<null>.*\\* 2 .*process.*" \
-+ gdb_test "info inferiors" "\\* 2 .*process.* 1 .*<null>.*" \
- "info inferiors"
-
- } elseif {$who == "child" && $detach == "off"} {
-
- # Follow child / keep parent: two inferiors under debug, the
- # child is the current inferior.
-- gdb_test "info inferiors" " 1 .*process.*\\* 2 .*process.*" \
-+ gdb_test "info inferiors" "\\* 2 .*process.* 1 .*process.*" \
- "info inferiors"
-
- gdb_test "inferior 1" "Switching to inferior 1 .*"
-diff --git a/gdb/testsuite/gdb.base/foll-vfork.exp b/gdb/testsuite/gdb.base/foll-vfork.exp
-index efa1b39..ed25487 100644
---- a/gdb/testsuite/gdb.base/foll-vfork.exp
-+++ b/gdb/testsuite/gdb.base/foll-vfork.exp
-@@ -330,7 +330,7 @@ proc vfork_relations_in_info_inferiors { variant } {
- }
-
- gdb_test "info inferiors" \
-- ".*is vfork parent of inferior 2.*is vfork child of inferior 1" \
-+ ".*is vfork child of inferior 1.*is vfork parent of inferior 2" \
- "info inferiors shows vfork parent/child relation"
-
- if { $variant == "exec" } {
-diff --git a/gdb/testsuite/gdb.base/multi-forks.exp b/gdb/testsuite/gdb.base/multi-forks.exp
-index 1eaaa71..2f3dd86 100644
---- a/gdb/testsuite/gdb.base/multi-forks.exp
-+++ b/gdb/testsuite/gdb.base/multi-forks.exp
-@@ -150,13 +150,13 @@ gdb_test_no_output "set detach off" "set detach off"
-
- for {set i 1} {$i <= 15} {incr i} {
- gdb_test "continue" "Breakpoint .* main .*exit.*" "Run to exit $i"
-- gdb_test "info inferior" " 2 .* 3 .* 4 .* 5 .*" "info inferior $i"
-+ gdb_test "info inferior" " 5 .* 4 .* 3 .* 2 .*" "info inferior $i"
- gdb_test "inferior $i + 1" "(_dl_sysinfo_int80|fork|__kernel_(v|)syscall).*" \
- "inferior $i"
- }
-
- gdb_test "continue" "Breakpoint .* main .*exit.*" "Run to exit 16"
--gdb_test "info inferior" " 2 .* 3 .* 4 .* 5 .*" "info inferior 16"
-+gdb_test "info inferiors" " 5 .* 4 .* 3 .* 2 .*" "info inferior 16"
- gdb_test "inferior 2" " main .*" "restart final"
-
- #
-@@ -177,9 +177,27 @@ gdb_test "detach inferior 5" "Detaching .*" "Detach 5"
- # Test kill inferior
- #
-
--for {set i 6} { $i <= 16} {incr i} {
-- gdb_test_no_output "kill inferior $i" "Kill $i"
-- gdb_test "info inferior $i" "<null>.*" "Did kill $i"
--}
-+gdb_test_no_output "kill inferior 6" "Kill 6"
-+gdb_test "info inferior 6" "<null>.*" "Did kill 6"
-+gdb_test_no_output "kill inferior 7" "Kill 7"
-+gdb_test "info inferior 7" "<null>.*" "Did kill 7"
-+gdb_test_no_output "kill inferior 8" "Kill 8"
-+gdb_test "info inferior 8" "<null>.*" "Did kill 8"
-+gdb_test_no_output "kill inferior 9" "Kill 9"
-+gdb_test "info inferior 9" "<null>.*" "Did kill 9"
-+gdb_test_no_output "kill inferior 10" "Kill 10"
-+gdb_test "info inferior 10" "<null>.*" "Did kill 10"
-+gdb_test_no_output "kill inferior 11" "Kill 11"
-+gdb_test "info inferior 11" "<null>.*" "Did kill 11"
-+gdb_test_no_output "kill inferior 12" "Kill 12"
-+gdb_test "info inferior 12" "<null>.*" "Did kill 12"
-+gdb_test_no_output "kill inferior 13" "Kill 13"
-+gdb_test "info inferior 13" "<null>.*" "Did kill 13"
-+gdb_test_no_output "kill inferior 14" "Kill 14"
-+gdb_test "info inferior 14" "<null>.*" "Did kill 14"
-+gdb_test_no_output "kill inferior 15" "Kill 15"
-+gdb_test "info inferior 15" "<null>.*" "Did kill 15"
-+gdb_test_no_output "kill inferior 16" "Kill 16"
-+gdb_test "info inferior 16" "<null>.*" "Did kill 16"
-
- return 0
-diff --git a/gdb/testsuite/gdb.mi/mi-nonstop.exp b/gdb/testsuite/gdb.mi/mi-nonstop.exp
-index 5e11f8d..cad9901 100644
---- a/gdb/testsuite/gdb.mi/mi-nonstop.exp
-+++ b/gdb/testsuite/gdb.mi/mi-nonstop.exp
-@@ -97,7 +97,7 @@ mi_expect_interrupt "got interrupt"
- sleep 1
- mi_check_thread_states {"stopped" "stopped" "stopped"} "thread state, stop 4"
-
--mi_gdb_test "-exec-continue --all" ".*\\*running,thread-id=\"1\"\r\n\\*running,thread-id=\"2\"\r\n\\*running,thread-id=\"3\"" \
-+mi_gdb_test "-exec-continue --all" ".*\\*running,thread-id=\"3\"\r\n\\*running,thread-id=\"2\"\r\n\\*running,thread-id=\"1\"" \
- "resume all"
-
- mi_expect_stop "breakpoint-hit" "break_at_me" "\[^\n\]*" "non-stop.c" "\[0-9\]*" {"" "disp=\"keep\""} "w0,i2 stop"
-diff --git a/gdb/testsuite/gdb.mi/mi-nsintrall.exp b/gdb/testsuite/gdb.mi/mi-nsintrall.exp
-index 378c729..061a6f3 100644
---- a/gdb/testsuite/gdb.mi/mi-nsintrall.exp
-+++ b/gdb/testsuite/gdb.mi/mi-nsintrall.exp
-@@ -67,10 +67,10 @@ mi_delete_breakpoints
- # Here we create a response string. Note we don't want \r\n at the end,
- # since mi_gdb_test will append this itself.
- set running_re ""
--for {set i 1} {$i < 6} {incr i} {
-+for {set i 6} {$i > 1} {incr i -1} {
- set running_re "$running_re\\*running,thread-id=\"$i\"\r\n"
- }
--set running_re "$running_re\\*running,thread-id=\"6\""
-+set running_re "$running_re\\*running,thread-id=\"1\""
-
- mi_gdb_test "-exec-continue --all" "\[^\n\]*\r\n$running_re" \
- "resume all, no breakpoint"
-diff --git a/gdb/testsuite/gdb.multi/base.exp b/gdb/testsuite/gdb.multi/base.exp
-index 6f0bc63..e02f95f 100644
---- a/gdb/testsuite/gdb.multi/base.exp
-+++ b/gdb/testsuite/gdb.multi/base.exp
-@@ -59,7 +59,7 @@ gdb_test "add-inferior -exec ${binfile3}" \
- # Check that we have multiple inferiors.
-
- gdb_test "info inferiors" \
-- "Executable.*${exec1}.*${exec2}.*${exec3}.*"
-+ "Executable.*${exec3}.*${exec2}.*${exec1}.*"
-
- # Test info inferiors with args
-
-@@ -68,16 +68,16 @@ set see2 0
- set see3 0
-
- gdb_test_multiple "info inferior 2 3" "info inferior 2 3" {
-- -re ". 1 \[^\r\n\]*${exec1}" {
-- set see1 1
-+ -re ". 3 \[^\r\n\]*${exec3}" {
-+ set see3 1
- exp_continue
- }
- -re ". 2 \[^\r\n\]*${exec2}" {
- set see2 1
- exp_continue
- }
-- -re ". 3 \[^\r\n\]*${exec3}" {
-- set see3 1
-+ -re ". 1 \[^\r\n\]*${exec1}" {
-+ set see1 1
- exp_continue
- }
- -re "$gdb_prompt $" {
-@@ -94,16 +94,16 @@ set see2 0
- set see3 0
-
- gdb_test_multiple "info inferior 1-2" "info inferior 1-2" {
-- -re ". 1 \[^\r\n\]*${exec1}" {
-- set see1 1
-+ -re ". 3 \[^\r\n\]*${exec3}" {
-+ set see3 1
- exp_continue
- }
- -re ". 2 \[^\r\n\]*${exec2}" {
- set see2 1
- exp_continue
- }
-- -re ". 3 \[^\r\n\]*${exec3}" {
-- set see3 1
-+ -re ". 1 \[^\r\n\]*${exec1}" {
-+ set see1 1
- exp_continue
- }
- -re "$gdb_prompt $" {
-diff --git a/gdb/testsuite/gdb.multi/multi-arch.exp b/gdb/testsuite/gdb.multi/multi-arch.exp
-index b114a2f..5922d70 100644
---- a/gdb/testsuite/gdb.multi/multi-arch.exp
-+++ b/gdb/testsuite/gdb.multi/multi-arch.exp
-@@ -95,4 +95,4 @@ if ![runto_main] then {
- # Check we do have two inferiors loaded.
-
- gdb_test "info inferiors" \
-- "Executable.*${exec1}.*${exec2}.*"
-+ "Executable.*${exec2}.*${exec1}.*"
-diff --git a/gdb/testsuite/gdb.python/py-inferior.exp b/gdb/testsuite/gdb.python/py-inferior.exp
-index 9b90d0b..7e6f91d 100644
---- a/gdb/testsuite/gdb.python/py-inferior.exp
-+++ b/gdb/testsuite/gdb.python/py-inferior.exp
-@@ -230,10 +230,10 @@ with_test_prefix "is_valid" {
- "check inferior validity 3"
-
- gdb_test_no_output "remove-inferiors 2" "remove-inferiors 3"
-- gdb_test "python print (inf_list\[0\].is_valid())" "True" \
-+ gdb_test "python print (inf_list\[0\].is_valid())" "False" \
- "check inferior validity 4"
-
-- gdb_test "python print (inf_list\[1\].is_valid())" "False" \
-+ gdb_test "python print (inf_list\[1\].is_valid())" "True" \
- "check inferior validity 5"
- }
-
-diff --git a/gdb/testsuite/gdb.threads/break-while-running.exp b/gdb/testsuite/gdb.threads/break-while-running.exp
-index 8a197e4..05860bc 100644
---- a/gdb/testsuite/gdb.threads/break-while-running.exp
-+++ b/gdb/testsuite/gdb.threads/break-while-running.exp
-@@ -78,7 +78,7 @@ proc test { update_thread_list always_inserted non_stop } {
- # without the user explicitly fetching the thread list.
- if {$update_thread_list} {
- gdb_test "info threads" \
-- "main .*\\\(running\\\).*\\\(running\\\).*" \
-+ "\\\(running\\\).*\\\(running\\\).* main .*" \
- "only main stopped"
- }
-
-@@ -107,7 +107,7 @@ proc test { update_thread_list always_inserted non_stop } {
-
- if {$non_stop == "on"} {
- gdb_test "info threads" \
-- "main .* breakpoint_function .*\\\(running\\\)" \
-+ "\\\(running\\\).* breakpoint_function .* main .*" \
- "one thread running"
-
- # Unblock the other thread, which should then trip on the same
-@@ -131,7 +131,7 @@ proc test { update_thread_list always_inserted non_stop } {
- }
-
- gdb_test "info threads" \
-- " main .* breakpoint_function .* breakpoint_function .*" \
-+ " breakpoint_function .* breakpoint_function .* main .*" \
- "all threads stopped"
- } else {
- # This test is not merged with the non-stop one because in
-@@ -142,7 +142,7 @@ proc test { update_thread_list always_inserted non_stop } {
- -re "\\\(running\\\).*$gdb_prompt $" {
- fail $test
- }
-- -re "main .* breakpoint_function .*$gdb_prompt $" {
-+ -re "breakpoint_function .* main .*$gdb_prompt $" {
- pass $test
- }
- }
-diff --git a/gdb/testsuite/gdb.threads/execl.exp b/gdb/testsuite/gdb.threads/execl.exp
-index 8538fd7..14e3e68 100644
---- a/gdb/testsuite/gdb.threads/execl.exp
-+++ b/gdb/testsuite/gdb.threads/execl.exp
-@@ -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" ".*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.
-diff --git a/gdb/testsuite/gdb.threads/gcore-thread.exp b/gdb/testsuite/gdb.threads/gcore-thread.exp
-index f74f147..44fb347 100644
---- a/gdb/testsuite/gdb.threads/gcore-thread.exp
-+++ b/gdb/testsuite/gdb.threads/gcore-thread.exp
-@@ -127,7 +127,7 @@ foreach name { corefile core0file } { with_test_prefix $name {
- # mapping various OS's may do? Let's assume that there must
- # be at least two threads:
-
-- gdb_test "info threads" "\\* 1 ${horiz}${nl} 2 ${horiz}.*" \
-+ gdb_test "info threads" ".*${nl} 2 ${horiz}${nl}\\* 1 .*" \
- "corefile contains at least two threads"
-
- # One thread in the corefile should be in the "thread2" function.
-@@ -137,6 +137,6 @@ foreach name { corefile core0file } { with_test_prefix $name {
-
- # The thread2 thread should be marked as the current thread.
-
-- gdb_test "info threads" "\\* ${horiz} thread2 .*${nl}" \
-+ gdb_test "info threads" ".*${nl}\\* ${horiz} thread2 .*" \
- "thread2 is current thread in corefile"
- }}
-diff --git a/gdb/testsuite/gdb.threads/info-threads-cur-sal.exp b/gdb/testsuite/gdb.threads/info-threads-cur-sal.exp
-index 23a3c36..603d944 100644
---- a/gdb/testsuite/gdb.threads/info-threads-cur-sal.exp
-+++ b/gdb/testsuite/gdb.threads/info-threads-cur-sal.exp
-@@ -41,20 +41,14 @@ gdb_test "list $line" \
- # There used to be a bug where "info threads" would set the current
- # SAL to the location of the last thread displayed.
- 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\]*"] \
-+ "\r\n\[ \t\]*Id\[ \t\]+Target\[ \t\]+Id\[ \t\]+Frame\[ \t\]*\r\n\\* 2 *Thread \[^\r\n\]* at \[^\r\n\]*\r\n 1 *Thread \[^\r\n\]* .* \[^\r\n\]*" \
- "info threads before break"
-
- # Check that "break" is still operating on the same file by default.
- 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\]*"] \
-+ "\r\n\[ \t\]*Id\[ \t\]+Target\[ \t\]+Id\[ \t\]+Frame\[ \t\]*\r\n\\* 2 *Thread \[^\r\n\]* at \[^\r\n\]*\r\n 1 *Thread \[^\r\n\]* .* \[^\r\n\]*" \
- "info threads before list"
-
- # And that so is "list".
-diff --git a/gdb/testsuite/gdb.threads/kill.exp b/gdb/testsuite/gdb.threads/kill.exp
-index a6d8382..741ebd5 100644
---- a/gdb/testsuite/gdb.threads/kill.exp
-+++ b/gdb/testsuite/gdb.threads/kill.exp
-@@ -48,7 +48,7 @@ proc test {threaded} {
- gdb_continue_to_breakpoint "break here" ".*break here.*"
-
- if {$threaded} {
-- gdb_test "info threads" "1.*2.*3.*4.*5.*6.*" "all threads started"
-+ gdb_test "info threads" "6.*5.*4.*3.*2.*1.*" "all threads started"
- }
-
- # This kills and ensures no output other than the prompt comes out,
-diff --git a/gdb/testsuite/gdb.threads/linux-dp.exp b/gdb/testsuite/gdb.threads/linux-dp.exp
-index 6365f7d..7b5c706 100644
---- a/gdb/testsuite/gdb.threads/linux-dp.exp
-+++ b/gdb/testsuite/gdb.threads/linux-dp.exp
-@@ -168,7 +168,7 @@ set nthreads 6
- gdb_breakpoint [gdb_get_line_number "linuxthreads.exp: info threads 2"]
- gdb_continue_to_breakpoint "main thread's sleep"
- set info_threads_ptn ".*"
--for {set i 1} {$i < $nthreads} {incr i} {
-+for {set i $nthreads} {$i > 0} {incr i -1} {
- append info_threads_ptn "$i *Thread .*"
- }
- append info_threads_ptn "\[\r\n\]+$gdb_prompt $"
-diff --git a/gdb/testsuite/gdb.threads/multiple-step-overs.exp b/gdb/testsuite/gdb.threads/multiple-step-overs.exp
-index cf7728b..6a38192 100644
---- a/gdb/testsuite/gdb.threads/multiple-step-overs.exp
-+++ b/gdb/testsuite/gdb.threads/multiple-step-overs.exp
-@@ -46,7 +46,7 @@ proc setup {} {
-
- gdb_breakpoint [gdb_get_line_number "set wait-threads breakpoint here"]
- gdb_continue_to_breakpoint "run to breakpoint"
-- gdb_test "info threads" "\\\* 1 .* 2 .* 3 .*" "info threads shows all threads"
-+ gdb_test "info threads" "3 .* 2 .*\\\* 1.*" "info threads shows all threads"
-
- gdb_test_no_output "set scheduler-locking on"
-
-diff --git a/gdb/testsuite/gdb.threads/next-bp-other-thread.exp b/gdb/testsuite/gdb.threads/next-bp-other-thread.exp
-index 4de3bf9..25791be 100644
---- a/gdb/testsuite/gdb.threads/next-bp-other-thread.exp
-+++ b/gdb/testsuite/gdb.threads/next-bp-other-thread.exp
-@@ -35,7 +35,7 @@ foreach schedlock {"off" "step" "on" } {
-
- gdb_breakpoint [gdb_get_line_number "set wait-thread breakpoint here"]
- gdb_continue_to_breakpoint "run to wait-thread breakpoint"
-- gdb_test "info threads" "\\\* 1 .* 2 .*" "info threads shows all threads"
-+ gdb_test "info threads" "2 .*\\\* 1.*" "info threads shows all threads"
-
- delete_breakpoints
-
-diff --git a/gdb/testsuite/gdb.threads/step-bg-decr-pc-switch-thread.exp b/gdb/testsuite/gdb.threads/step-bg-decr-pc-switch-thread.exp
-index 4f5c05c..1354d03 100644
---- a/gdb/testsuite/gdb.threads/step-bg-decr-pc-switch-thread.exp
-+++ b/gdb/testsuite/gdb.threads/step-bg-decr-pc-switch-thread.exp
-@@ -48,7 +48,7 @@ delete_breakpoints
-
- gdb_breakpoint [gdb_get_line_number "set breakpoint here"]
- gdb_continue_to_breakpoint "run to nop breakpoint"
--gdb_test "info threads" " 1 .*\\\* 2 .*" "info threads shows all threads"
-+gdb_test "info threads" "\\\* 2 .* 1.*" "info threads shows all threads"
-
- gdb_test "next" "while.*" "next over nop"
-
-diff --git a/gdb/testsuite/gdb.threads/step-over-lands-on-breakpoint.exp b/gdb/testsuite/gdb.threads/step-over-lands-on-breakpoint.exp
-index a7273d4..aa91e29 100644
---- a/gdb/testsuite/gdb.threads/step-over-lands-on-breakpoint.exp
-+++ b/gdb/testsuite/gdb.threads/step-over-lands-on-breakpoint.exp
-@@ -40,7 +40,7 @@ proc do_test {displaced command} {
-
- gdb_breakpoint [gdb_get_line_number "set wait-thread breakpoint here"]
- gdb_continue_to_breakpoint "run to wait-thread breakpoint"
-- gdb_test "info threads" "\\\* 1 .* 2 .*" "info threads shows all threads"
-+ gdb_test "info threads" "2 .*\\\* 1.*" "info threads shows all threads"
-
- gdb_test_no_output "set scheduler-locking on"
-
-diff --git a/gdb/testsuite/gdb.threads/step-over-trips-on-watchpoint.exp b/gdb/testsuite/gdb.threads/step-over-trips-on-watchpoint.exp
-index 2f0be50..b0a7e4a 100644
---- a/gdb/testsuite/gdb.threads/step-over-trips-on-watchpoint.exp
-+++ b/gdb/testsuite/gdb.threads/step-over-trips-on-watchpoint.exp
-@@ -59,7 +59,7 @@ proc do_test { displaced with_bp } {
-
- gdb_breakpoint [gdb_get_line_number "set wait-thread breakpoint here"]
- gdb_continue_to_breakpoint "run to wait-thread breakpoint"
-- gdb_test "info threads" "\\\* 1 .* 2 .*" "info threads shows all threads"
-+ gdb_test "info threads" "2 .*\\\* 1.*" "info threads shows all threads"
-
- gdb_test_no_output "set scheduler-locking on"
-
-diff --git a/gdb/testsuite/gdb.threads/thread-find.exp b/gdb/testsuite/gdb.threads/thread-find.exp
-index bd90c57..57d58a2 100644
---- a/gdb/testsuite/gdb.threads/thread-find.exp
-+++ b/gdb/testsuite/gdb.threads/thread-find.exp
-@@ -55,11 +55,29 @@ gdb_test "thread apply 6 thread name threadname_6" \
- "name thread 6"
-
- # Collect thread ids, if any.
--
- gdb_test_multiple "info threads" "collect thread id" {
-- -re ". (\[0-9\]+) \[^\r\n\]*\[Tt\]hread (\[0-9a-fA-Fx\]+)\[^\r\n\]* \"threadname_\[0-9\]+\" \[^\r\n\]*" {
-- set thr_num $expect_out(1,string)
-- set thread$thr_num $expect_out(2,string)
-+ -re ". 6 .*\[Tt\]hread (\[0-9a-fA-Fx\]+).* \"threadname_6\" \[^\r\n\]*" {
-+ set thread6 $expect_out(1,string)
-+ exp_continue
-+ }
-+ -re ". 5 .*\[Tt\]hread (\[0-9a-fA-Fx\]+).* \"threadname_5\" \[^\r\n\]*" {
-+ set thread5 $expect_out(1,string)
-+ exp_continue
-+ }
-+ -re ". 4 .*\[Tt\]hread (\[0-9a-fA-Fx\]+).* \"threadname_4\" \[^\r\n\]*" {
-+ set thread4 $expect_out(1,string)
-+ exp_continue
-+ }
-+ -re ". 3 .*\[Tt\]hread (\[0-9a-fA-Fx\]+).* \"threadname_3\" \[^\r\n\]*" {
-+ set thread3 $expect_out(1,string)
-+ exp_continue
-+ }
-+ -re ". 2 .*\[Tt\]hread (\[0-9a-fA-Fx\]+).* \"threadname_2\" \[^\r\n\]*" {
-+ set thread2 $expect_out(1,string)
-+ exp_continue
-+ }
-+ -re ". 1 .*\[Tt\]hread (\[0-9a-fA-Fx\]+).* \"threadname_1\" \[^\r\n\]*" {
-+ set thread1 $expect_out(1,string)
- exp_continue
- }
- -re ".*$gdb_prompt $" {
-@@ -72,11 +90,29 @@ if { [info exists thread6] } then {
- }
-
- # Collect process ids, if any.
--
- gdb_test_multiple "info threads" "collect thread id" {
-- -re ". (\[0-9\]+) \[^\r\n\]*\[Pp\]rocess (\[0-9a-fA-Fx\]+)\[^\r\n\]* \"threadname_\[0-9\]+\" \[^\r\n\]*" {
-- set thr_num $expect_out(1,string)
-- set process$thr_num $expect_out(2,string)
-+ -re ". 6 .*\[Pp\]rocess (\[0-9a-fA-Fx\]+).* \"threadname_6\" \[^\r\n\]*" {
-+ set process6 $expect_out(1,string)
-+ exp_continue
-+ }
-+ -re ". 5 .*\[Pp\]rocess (\[0-9a-fA-Fx\]+).* \"threadname_5\" \[^\r\n\]*" {
-+ set process5 $expect_out(1,string)
-+ exp_continue
-+ }
-+ -re ". 4 .*\[Pp\]rocess (\[0-9a-fA-Fx\]+).* \"threadname_4\" \[^\r\n\]*" {
-+ set process4 $expect_out(1,string)
-+ exp_continue
-+ }
-+ -re ". 3 .*\[Pp\]rocess (\[0-9a-fA-Fx\]+).* \"threadname_3\" \[^\r\n\]*" {
-+ set process3 $expect_out(1,string)
-+ exp_continue
-+ }
-+ -re ". 2 .*\[Pp\]rocess (\[0-9a-fA-Fx\]+).* \"threadname_2\" \[^\r\n\]*" {
-+ set process2 $expect_out(1,string)
-+ exp_continue
-+ }
-+ -re ". 1 .*\[Pp\]rocess (\[0-9a-fA-Fx\]+).* \"threadname_1\" \[^\r\n\]*" {
-+ set process1 $expect_out(1,string)
- exp_continue
- }
- -re ".*$gdb_prompt $" {
-@@ -89,11 +125,29 @@ if { [info exists process6] } then {
- }
-
- # Collect lwp ids, if any.
--
- gdb_test_multiple "info threads" "collect thread id" {
-- -re ". (\[0-9\]+) \[^\r\n\]*LWP (\[0-9a-fA-Fx\]+)\[^\r\n\]* \"threadname_\[0-9\]+\" \[^\r\n\]*" {
-- set thr_num $expect_out(1,string)
-- set lwp$thr_num $expect_out(2,string)
-+ -re ". 6 .*LWP (\[0-9a-fA-Fx\]+).* \"threadname_6\" \[^\r\n\]*" {
-+ set lwp6 $expect_out(1,string)
-+ exp_continue
-+ }
-+ -re ". 5 .*LWP (\[0-9a-fA-Fx\]+).* \"threadname_5\" \[^\r\n\]*" {
-+ set lwp5 $expect_out(1,string)
-+ exp_continue
-+ }
-+ -re ". 4 .*LWP (\[0-9a-fA-Fx\]+).* \"threadname_4\" \[^\r\n\]*" {
-+ set lwp4 $expect_out(1,string)
-+ exp_continue
-+ }
-+ -re ". 3 .*LWP (\[0-9a-fA-Fx\]+).* \"threadname_3\" \[^\r\n\]*" {
-+ set lwp3 $expect_out(1,string)
-+ exp_continue
-+ }
-+ -re ". 2 .*LWP (\[0-9a-fA-Fx\]+).* \"threadname_2\" \[^\r\n\]*" {
-+ set lwp2 $expect_out(1,string)
-+ exp_continue
-+ }
-+ -re ". 1 .*LWP (\[0-9a-fA-Fx\]+).* \"threadname_1\" \[^\r\n\]*" {
-+ set lwp1 $expect_out(1,string)
- exp_continue
- }
- -re ".*$gdb_prompt $" {
-@@ -187,13 +241,36 @@ gdb_test "thread find foobarbaz" "No threads match .*" "no thread"
- # Test regular expression
- #
-
--for {set i 1} {$i <= 6} {incr i} {
-- set see$i 0
--}
-+set see1 0
-+set see2 0
-+set see3 0
-+set see4 0
-+set see5 0
-+set see6 0
-+
- gdb_test_multiple "thread find threadname_\[345\]" "test regular exp" {
-- -re "Thread (\[0-9\]+) has name \[^\r\n\]*" {
-- set thr_num $expect_out(1,string)
-- set see$thr_num 1
-+ -re "Thread 6 has name \[^\r\n\]*" {
-+ set see6 1
-+ exp_continue
-+ }
-+ -re "Thread 5 has name \[^\r\n\]*" {
-+ set see5 1
-+ exp_continue
-+ }
-+ -re "Thread 4 has name \[^\r\n\]*" {
-+ set see4 1
-+ exp_continue
-+ }
-+ -re "Thread 3 has name \[^\r\n\]*" {
-+ set see3 1
-+ exp_continue
-+ }
-+ -re "Thread 2 has name \[^\r\n\]*" {
-+ set see2 1
-+ exp_continue
-+ }
-+ -re "Thread 1 has name \[^\r\n\]*" {
-+ set see1 1
- exp_continue
- }
- -re ".*$gdb_prompt $" {
-@@ -209,13 +286,36 @@ gdb_test_multiple "thread find threadname_\[345\]" "test regular exp" {
- # Test info threads on a subset of threads
- #
-
--for {set i 1} {$i <= 6} {incr i} {
-- set see$i 0
--}
-+set see1 0
-+set see2 0
-+set see3 0
-+set see4 0
-+set see5 0
-+set see6 0
-+
- gdb_test_multiple "info threads 2 4 6" "info threads 2 4 6" {
-- -re ". (\[0-9\]+) \[^\r\n\]*\"threadname_\[0-9\]+\" \[^\r\n\]*" {
-- set thr_num $expect_out(1,string)
-- set see$thr_num 1
-+ -re ". 6 \[^\r\n\]*\"threadname_6\" \[^\r\n\]*" {
-+ set see6 1
-+ exp_continue
-+ }
-+ -re ". 5 \[^\r\n\]*\"threadname_5\" \[^\r\n\]*" {
-+ set see5 1
-+ exp_continue
-+ }
-+ -re ". 4 \[^\r\n\]*\"threadname_4\" \[^\r\n\]*" {
-+ set see4 1
-+ exp_continue
-+ }
-+ -re ". 3 \[^\r\n\]*\"threadname_3\" \[^\r\n\]*" {
-+ set see3 1
-+ exp_continue
-+ }
-+ -re ". 2 \[^\r\n\]*\"threadname_2\" \[^\r\n\]*" {
-+ set see2 1
-+ exp_continue
-+ }
-+ -re ". 1 \[^\r\n\]*\"threadname_1\" \[^\r\n\]*" {
-+ set see1 1
- exp_continue
- }
- -re "$gdb_prompt $" {
-@@ -231,13 +331,36 @@ gdb_test_multiple "info threads 2 4 6" "info threads 2 4 6" {
- # Test info threads on a range
- #
-
--for {set i 1} {$i <= 6} {incr i} {
-- set see$i 0
--}
-+set see1 0
-+set see2 0
-+set see3 0
-+set see4 0
-+set see5 0
-+set see6 0
-+
- gdb_test_multiple "info threads 3-5" "info threads 3-5" {
-- -re ". (\[0-9\]+) \[^\r\n\]*\"threadname_\[0-9\]+\" \[^\r\n\]*" {
-- set thr_num $expect_out(1,string)
-- set see$thr_num 1
-+ -re ". 6 .*\"threadname_6\" \[^\r\n\]*" {
-+ set see6 1
-+ exp_continue
-+ }
-+ -re ". 5 .*\"threadname_5\" \[^\r\n\]*" {
-+ set see5 1
-+ exp_continue
-+ }
-+ -re ". 4 .*\"threadname_4\" \[^\r\n\]*" {
-+ set see4 1
-+ exp_continue
-+ }
-+ -re ". 3 .*\"threadname_3\" \[^\r\n\]*" {
-+ set see3 1
-+ exp_continue
-+ }
-+ -re ". 2 .*\"threadname_2\" \[^\r\n\]*" {
-+ set see2 1
-+ exp_continue
-+ }
-+ -re ". 1 .*\"threadname_1\" \[^\r\n\]*" {
-+ set see1 1
- exp_continue
- }
- -re "$gdb_prompt $" {
-@@ -255,13 +378,36 @@ gdb_test "info threads 5-3" "inverted range" "test inverted range"
-
- # Test degenerate range
-
--for {set i 1} {$i <= 6} {incr i} {
-- set see$i 0
--}
-+set see1 0
-+set see2 0
-+set see3 0
-+set see4 0
-+set see5 0
-+set see6 0
-+
- gdb_test_multiple "info threads 3-3" "info threads 3-3" {
-- -re ". (\[0-9\]+) .*\"threadname_\[0-9\]+\" \[^\r\n\]*" {
-- set thr_num $expect_out(1,string)
-- set see$thr_num 1
-+ -re ". 6 .*\"threadname_6\" \[^\r\n\]*" {
-+ set see6 1
-+ exp_continue
-+ }
-+ -re ". 5 .*\"threadname_5\" \[^\r\n\]*" {
-+ set see5 1
-+ exp_continue
-+ }
-+ -re ". 4 .*\"threadname_4\" \[^\r\n\]*" {
-+ set see4 1
-+ exp_continue
-+ }
-+ -re ". 3 .*\"threadname_3\" \[^\r\n\]*" {
-+ set see3 1
-+ exp_continue
-+ }
-+ -re ". 2 .*\"threadname_2\" \[^\r\n\]*" {
-+ set see2 1
-+ exp_continue
-+ }
-+ -re ". 1 .*\"threadname_1\" \[^\r\n\]*" {
-+ set see1 1
- exp_continue
- }
- -re ".*$gdb_prompt $" {
-diff --git a/gdb/testsuite/gdb.threads/tls.exp b/gdb/testsuite/gdb.threads/tls.exp
-index 4d0a235..cd7fc0a 100644
---- a/gdb/testsuite/gdb.threads/tls.exp
-+++ b/gdb/testsuite/gdb.threads/tls.exp
-@@ -205,7 +205,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.*$gdb_prompt $" {
- set no_of_threads $expect_out(1,string)
- pass "get number of threads"
- }
-diff --git a/gdb/testsuite/lib/mi-support.exp b/gdb/testsuite/lib/mi-support.exp
-index 7f9a3f5..cb8227d 100644
---- a/gdb/testsuite/lib/mi-support.exp
-+++ b/gdb/testsuite/lib/mi-support.exp
-@@ -1968,8 +1968,19 @@ proc mi_load_shlibs { args } {
- mi_gdb_test "set solib-search-path [file dirname [lindex $args 0]]" "\^done" ""
- }
-
--proc mi_check_thread_states { states test } {
-+proc mi_reverse_list { list } {
-+ if { [llength $list] <= 1 } {
-+ return $list
-+ }
-+ set tail [lrange $list 1 [llength $list]]
-+ set rtail [mi_reverse_list $tail]
-+ lappend rtail [lindex $list 0]
-+ return $rtail
-+}
-+
-+proc mi_check_thread_states { xstates test } {
- global expect_out
-+ set states [mi_reverse_list $xstates]
- set pattern ".*\\^done,threads=\\\["
- foreach s $states {
- set pattern "${pattern}(.*)state=\"$s\""
-diff --git a/gdb/thread.c b/gdb/thread.c
-index 4c2259f..29fc610 100644
---- a/gdb/thread.c
-+++ b/gdb/thread.c
-@@ -236,17 +236,8 @@ new_thread (ptid_t ptid)
-
- tp->ptid = ptid;
- tp->num = ++highest_thread_num;
--
-- if (thread_list == NULL)
-- thread_list = tp;
-- else
-- {
-- struct thread_info *last;
--
-- for (last = thread_list; last->next != NULL; last = last->next)
-- ;
-- last->next = tp;
-- }
-+ tp->next = thread_list;
-+ thread_list = tp;
-
- /* Nothing to follow yet. */
- tp->pending_follow.kind = TARGET_WAITKIND_SPURIOUS;
diff --git a/gdb-testsuite-foll-vfork.patch b/gdb-testsuite-foll-vfork.patch
deleted file mode 100644
index e01343d..0000000
--- a/gdb-testsuite-foll-vfork.patch
+++ /dev/null
@@ -1,128 +0,0 @@
-http://sourceware.org/ml/gdb-patches/2016-01/msg00142.html
-Subject: [testsuite patch] Regression for foll-vfork.exp [Re: [PATCH] Remove HP-UX reference in foll-vfork.exp]
-
-
---PEIAKu/WMn1b1Hv9
-Content-Type: text/plain; charset=us-ascii
-Content-Disposition: inline
-
-On Tue, 22 Dec 2015 16:53:23 +0100, Simon Marchi wrote:
-> Thanks, pushed.
-
-fe33faff35a8ee19db823149e764e3373e603bb9 is the first bad commit
-commit fe33faff35a8ee19db823149e764e3373e603bb9
-Author: Simon Marchi <simon.marchi@ericsson.com>
-Date: Tue Dec 22 10:52:31 2015 -0500
- Remove HP-UX reference in foll-vfork.exp
-
-FAIL: gdb.base/foll-vfork.exp: exec: vfork parent follow, finish after tcatch vfork: continue to vfork
-FAIL: gdb.base/foll-vfork.exp: exec: vfork child follow, finish after tcatch vfork: continue to vfork
-FAIL: gdb.base/foll-vfork.exp: exit: vfork parent follow, finish after tcatch vfork: continue to vfork
-FAIL: gdb.base/foll-vfork.exp: exit: vfork child follow, finish after tcatch vfork: continue to vfork
-
-It happens for plain gdb.base/foll-vfork.exp runtest on Fedora 23 x86_64.
-
--Temporary catchpoint 2 (vforked process 24562), vfork () at ../sysdeps/unix/sysv/linux/x86_64/vfork.S:52^M
-+Temporary catchpoint 2 (vforked process 25345), vfork () at ../sysdeps/unix/sysv/linux/x86_64/vfork.S:52^M
- 52 pushq %rdi^M
- Current language: auto^M
- The current source language is "auto; currently asm".^M
--(gdb) PASS: gdb.base/foll-vfork.exp: exec: vfork parent follow, finish after tcatch vfork: continue to vfork
-+(gdb) FAIL: gdb.base/foll-vfork.exp: exec: vfork parent follow, finish after tcatch vfork: continue to vfork
-
--Temporary catchpoint 2 (vforked process 24629), vfork () at ../sysdeps/unix/sysv/linux/x86_64/vfork.S:52^M
-+Temporary catchpoint 2 (vforked process 25411), vfork () at ../sysdeps/unix/sysv/linux/x86_64/vfork.S:52^M
- 52 pushq %rdi^M
- Current language: auto^M
- The current source language is "auto; currently asm".^M
--(gdb) PASS: gdb.base/foll-vfork.exp: exec: vfork child follow, finish after tcatch vfork: continue to vfork
-+(gdb) FAIL: gdb.base/foll-vfork.exp: exec: vfork child follow, finish after tcatch vfork: continue to vfork
-
-
-So I have reverted it and just simplified the comment, OK for check-in?
-
-The third case is not necessary during testing but I have changed back all the
-3 cases.
-
-
-Jan
-
---PEIAKu/WMn1b1Hv9
-Content-Type: text/plain; charset=us-ascii
-Content-Disposition: inline; filename=1
-
-gdb/testsuite/ChangeLog
-2016-01-08 Jan Kratochvil <jan.kratochvil@redhat.com>
-
- * gdb.base/foll-vfork.exp (tcatch_vfork_then_parent_follow)
- (tcatch_vfork_then_child_follow_exec)
- (tcatch_vfork_then_child_follow_exit): Revert back DWARF vfork
- identification.
-
-diff --git a/gdb/testsuite/gdb.base/foll-vfork.exp b/gdb/testsuite/gdb.base/foll-vfork.exp
-index efa1b39..ebbe4ad 100644
---- a/gdb/testsuite/gdb.base/foll-vfork.exp
-+++ b/gdb/testsuite/gdb.base/foll-vfork.exp
-@@ -222,8 +222,17 @@ proc tcatch_vfork_then_parent_follow {} {
- gdb_test_no_output "set follow-fork parent"
-
- gdb_test "tcatch vfork" "Catchpoint .*(vfork).*"
-- gdb_test "continue" "0x\[0-9a-fA-F\]*.*(vfork|__kernel_v?syscall).*" \
-- "continue to vfork"
-+
-+ # It may stop in either "vfork" or "_vfork".
-+ set test "continue to vfork"
-+ gdb_test_multiple "continue" $test {
-+ -re "0x\[0-9a-fA-F\]*.*(vfork|__kernel_v?syscall).*$gdb_prompt " {
-+ pass $test
-+ }
-+ -re "vfork \\(\\) at.*$gdb_prompt " {
-+ pass $test
-+ }
-+ }
-
- set linenum [gdb_get_line_number "pid = vfork ();"]
- set test "finish"
-@@ -254,8 +263,17 @@ proc tcatch_vfork_then_child_follow_exec {} {
- gdb_test_no_output "set follow-fork child"
-
- gdb_test "tcatch vfork" "Catchpoint .*(vfork).*"
-- gdb_test "continue" "0x\[0-9a-fA-F\]*.*(vfork|__kernel_v?syscall).*" \
-- "continue to vfork"
-+
-+ # It may stop in either "vfork" or "_vfork".
-+ set test "continue to vfork"
-+ gdb_test_multiple "continue" $test {
-+ -re "vfork \\(\\) at .*$gdb_prompt $" {
-+ pass $test
-+ }
-+ -re "0x\[0-9a-fA-F\]*.*(vfork|__kernel_v?syscall).*$gdb_prompt " {
-+ pass $test
-+ }
-+ }
-
- set linenum1 [gdb_get_line_number "pid = vfork ();"]
- set linenum2 [gdb_get_line_number "printf(\"Hello from vforked-prog" ${srcfile2}]
-@@ -290,8 +308,17 @@ proc tcatch_vfork_then_child_follow_exit {} {
- gdb_test_no_output "set follow-fork child"
-
- gdb_test "tcatch vfork" "Catchpoint .*(vfork).*"
-- gdb_test "continue" "0x\[0-9a-fA-F\]*.*(vfork|__kernel_v?syscall).*" \
-- "continue to vfork"
-+
-+ # It may stop in either "vfork" or "_vfork".
-+ set test "continue to vfork"
-+ gdb_test_multiple "continue" $test {
-+ -re "vfork \\(\\) at .*$gdb_prompt $" {
-+ pass $test
-+ }
-+ -re "0x\[0-9a-fA-F\]*.*(vfork|__kernel_v?syscall).*$gdb_prompt " {
-+ pass $test
-+ }
-+ }
-
- set test "finish"
- gdb_test_multiple "finish" $test {
-
---PEIAKu/WMn1b1Hv9--
-
diff --git a/gdb-testsuite-funcargs-m32.patch b/gdb-testsuite-funcargs-m32.patch
deleted file mode 100644
index 5a268d8..0000000
--- a/gdb-testsuite-funcargs-m32.patch
+++ /dev/null
@@ -1,88 +0,0 @@
-http://sourceware.org/ml/gdb-patches/2016-01/msg00140.html
-Subject: [testsuite patch] i386 regression for funcargs.exp [Re: [PATCH 3/3] Remove HP-UX references fom testsuite]
-
-
---EeQfGwPcQSOJBaQU
-Content-Type: text/plain; charset=us-ascii
-Content-Disposition: inline
-
-On Mon, 21 Dec 2015 18:52:59 +0100, Simon Marchi wrote:
-> Ok, I pushed this one in. Thanks!
-
-3ca22649a6dfeb71058c33be4d0542b98f1f0ff5 is the first bad commit
-commit 3ca22649a6dfeb71058c33be4d0542b98f1f0ff5
-Author: Simon Marchi <simon.marchi@polymtl.ca>
-Date: Mon Dec 21 12:51:54 2015 -0500
- Remove HP-UX references fom testsuite
-### a/gdb/testsuite/gdb.base/funcargs.exp
-### b/gdb/testsuite/gdb.base/funcargs.exp
-@@ -1013,13 +1013,6 @@ proc localvars_in_indirect_call { } {
- #
-
- gdb_test_multiple "finish" "finish from indirectly called function" {
-- -re "\\(\\*pointer_to_call0a\\) \\(c, s, i, l\\);.*First.*$gdb_prompt $" {
-- #On hppa2.0w-hp-hpux11.00, gdb finishes at one line earlier than
-- #hppa1.1-hp-hpux11.00. Therefore, an extra "step" is necessary
-- #to continue the test.
-- send_gdb "step\n"
-- exp_continue
-- }
- -re ".*\\(\\*pointer_to_call0a\\) \\(c, s, i, l\\);.*Second.*$gdb_prompt $" {
- pass "finish from indirectly called function"
- }
-
-->
-
- finish^M
- Run till exit from #0 call0a (c=97 'a', s=1, i=2, l=3) at ./gdb.base/funcargs.c:82^M
- 0x0804a189 in main () at ./gdb.base/funcargs.c:583^M
- 583 (*pointer_to_call0a) (c, s, i, l); /* First step into call0a. */^M
--(gdb) step^M
--584 (*pointer_to_call0a) (c, s, i, l); /* Second step into call0a. */^M
--(gdb) PASS: gdb.base/funcargs.exp: finish from indirectly called function
-+(gdb) FAIL: gdb.base/funcargs.exp: finish from indirectly called function
- step^M
--call0a (c=97 'a', s=1, i=2, l=3) at ./gdb.base/funcargs.c:82^M
--82 c = 'a';^M
--(gdb) PASS: gdb.base/funcargs.exp: stepping into indirectly called function
-+584 (*pointer_to_call0a) (c, s, i, l); /* Second step into call0a. */^M
-+(gdb) FAIL: gdb.base/funcargs.exp: stepping into indirectly called function
-
-At least on x86_64 with testsuite in -m32 (expecting native i386 would be the
-same).
-
-OK for check-in?
-
-
-Jan
-
---EeQfGwPcQSOJBaQU
-Content-Type: text/plain; charset=us-ascii
-Content-Disposition: inline; filename=1
-
-gdb/testsuite/ChangeLog
-2016-01-08 Jan Kratochvil <jan.kratochvil@redhat.com>
-
- * gdb.base/funcargs.exp (finish from indirectly called function):
- Reintroduce the case for 'First'.
-
-diff --git a/gdb/testsuite/gdb.base/funcargs.exp b/gdb/testsuite/gdb.base/funcargs.exp
-index e5b6ced..a476169 100644
---- a/gdb/testsuite/gdb.base/funcargs.exp
-+++ b/gdb/testsuite/gdb.base/funcargs.exp
-@@ -1013,6 +1013,12 @@ proc localvars_in_indirect_call { } {
- #
-
- gdb_test_multiple "finish" "finish from indirectly called function" {
-+ -re "\\(\\*pointer_to_call0a\\) \\(c, s, i, l\\);.*First.*$gdb_prompt $" {
-+ # On i386, gdb finishes at one line earlier than on x86_64.
-+ # Therefore, an extra "step" is necessary to continue the test.
-+ send_gdb "step\n"
-+ exp_continue
-+ }
- -re ".*\\(\\*pointer_to_call0a\\) \\(c, s, i, l\\);.*Second.*$gdb_prompt $" {
- pass "finish from indirectly called function"
- }
-
---EeQfGwPcQSOJBaQU--
-
diff --git a/gdb-testsuite-guile.patch b/gdb-testsuite-guile.patch
new file mode 100644
index 0000000..0a3b1a7
--- /dev/null
+++ b/gdb-testsuite-guile.patch
@@ -0,0 +1,124 @@
+http://sourceware.org/ml/gdb-patches/2016-01/msg00578.html
+Subject: [testsuite patch]#2 Fix PR threads/19422 regression + Guile regression [Re: [PATCH+doc] Fix PR threads/19422 - show which thread caused stop]
+
+
+--cNdxnHkX5QqsyA0e
+Content-Type: text/plain; charset=us-ascii
+Content-Disposition: inline
+
+[ now with the patch]
+On Fri, 22 Jan 2016 18:30:20 +0100, Jan Kratochvil wrote:
+
+On Thu, 14 Jan 2016 15:08:40 +0100, Pedro Alves wrote:
+> gdb/ChangeLog:
+> 2016-01-14 Pedro Alves <palves@redhat.com>
+>
+> * NEWS: Mention that GDB now displays the ID and name of the
+> thread that hit a breakpoint or received a signal.
+> * break-catch-sig.c (signal_catchpoint_print_it): Use
+> maybe_print_thread_hit_breakpoint.
+> * break-catch-syscall.c (print_it_catch_syscall): Likewise.
+> * break-catch-throw.c (print_it_exception_catchpoint): Likewise.
+> * breakpoint.c (maybe_print_thread_hit_breakpoint): New function.
+> (print_it_catch_fork, print_it_catch_vfork, print_it_catch_solib)
+> (print_it_catch_exec, print_it_ranged_breakpoint)
+> (print_it_watchpoint, print_it_masked_watchpoint, bkpt_print_it):
+> Use maybe_print_thread_hit_breakpoint.
+> * breakpoint.h (maybe_print_thread_hit_breakpoint): Declare.
+> * gdbthread.h (show_thread_that_caused_stop): Declare.
+> * infrun.c (print_signal_received_reason): Print which thread
+> received signal.
+> * thread.c (show_thread_that_caused_stop): New function.
+
+There was already before a regression if --with-guile (which is default if
+Guile is found) was used:
+
+backtrace^M
+#0 0x00007ffff6078da0 in __sigprocmask (how=2, set=0x7fffffffcc40, oset=0x0) at ../sysdeps/unix/sysv/linux/x86_64/sigprocmask.c:39^M
+#1 0x0000000000966ce9 in _rl_handle_signal (sig=2) at signals.c:228^M
+#2 0x0000000000966c05 in rl_signal_handler (sig=2) at signals.c:149^M
+#3 <signal handler called>^M
+#4 0x00007ffff613afc0 in __poll_nocancel () at ../sysdeps/unix/syscall-template.S:84^M
+#5 0x00000000007d9a88 in gdb_wait_for_event (block=1) at event-loop.c:746^M
+#6 0x00000000007d8e87 in gdb_do_one_event () at event-loop.c:323^M
+#7 0x00000000007d8ed8 in start_event_loop () at event-loop.c:347^M
+#8 0x00000000007da9dc in cli_command_loop (data=0x0) at event-top.c:186^M
+#9 0x00000000007d0b4c in current_interp_command_loop () at interps.c:317^M
+#10 0x00000000007d1f56 in captured_command_loop (data=0x0) at main.c:318^M
+#11 0x00000000007cd6c9 in catch_errors (func=0x7d1f3b <captured_command_loop>, func_args=0x0, errstring=0x1167f75 "", mask=RETURN_MASK_ALL) at exceptions.c:240^M
+#12 0x00000000007d3514 in captured_main (data=0x7fffffffd600) at main.c:1157^M
+#13 0x00000000007cd6c9 in catch_errors (func=0x7d23d5 <captured_main>, func_args=0x7fffffffd600, errstring=0x1167f75 "", mask=RETURN_MASK_ALL) at exceptions.c:240^M
+#14 0x00000000007d353d in gdb_main (args=0x7fffffffd600) at main.c:1165^M
+#15 0x000000000049ae8c in main (argc=5, argv=0x7fffffffd708) at gdb.c:32^M
+(gdb) PASS: gdb.gdb/selftest.exp: backtrace through signal handler
+->
+backtrace^M
+#0 pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185^M
+#1 0x00007ffff6db32b7 in GC_wait_marker () at pthread_support.c:2036^M
+#2 0x00007ffff6da92ba in GC_help_marker (my_mark_no=my_mark_no@entry=4) at mark.c:1168^M
+#3 0x00007ffff6db15ef in GC_mark_thread (id=<optimized out>) at pthread_support.c:389^M
+#4 0x00007ffff6b8360a in start_thread (arg=0x7ffff337e700) at pthread_create.c:334^M
+#5 0x00007ffff5847a4d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109^M
+(gdb) FAIL: gdb.gdb/selftest.exp: backtrace through signal handler
+
+
+Additionally this patchset added a new regression:
+
+Program received signal SIGINT, Interrupt.^M
+0x00007ffff613afc0 in __poll_nocancel () at ../sysdeps/unix/syscall-template.S:84^M
+84 T_PSEUDO (SYSCALL_SYMBOL, SYSCALL_NAME, SYSCALL_NARGS)^M
+(gdb) PASS: gdb.gdb/selftest.exp: send ^C to child process
+->
+Thread 1 "xgdb" received signal SIGINT, Interrupt.^M
+0x00007ffff583bfdd in poll () at ../sysdeps/unix/syscall-template.S:84^M
+84 T_PSEUDO (SYSCALL_SYMBOL, SYSCALL_NAME, SYSCALL_NARGS)^M
+(gdb) FAIL: gdb.gdb/selftest.exp: send ^C to child process
+
+
+OK to check-in the fix for both of these problems?
+
+Tested on x86_64-fedora23-linux-gnu.
+
+
+Thanks,
+Jan
+
+--cNdxnHkX5QqsyA0e
+Content-Type: text/plain; charset=us-ascii
+Content-Disposition: inline; filename=1
+
+gdb/testsuite/ChangeLog
+2016-01-22 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ Fix testsuite compatibility with Guile.
+ * gdb.gdb/selftest.exp (send ^C to child process): Accept also Thread.
+ (thread 1): New test for backtrace through signal handler.
+
+diff --git a/gdb/testsuite/gdb.gdb/selftest.exp b/gdb/testsuite/gdb.gdb/selftest.exp
+index 4d55cb5..cdcf981 100644
+--- a/gdb/testsuite/gdb.gdb/selftest.exp
++++ b/gdb/testsuite/gdb.gdb/selftest.exp
+@@ -436,8 +436,9 @@ proc test_with_self { executable } {
+ if ![target_info exists gdb,nointerrupts] {
+ set description "send ^C to child process"
+ send_gdb "\003"
++ # "Thread 1" is displayed iff Guile support is linked in.
+ gdb_expect {
+- -re "Program received signal SIGINT.*$gdb_prompt $" {
++ -re "(Thread 1 \"xgdb\"|Program) received signal SIGINT.*$gdb_prompt $" {
+ pass "$description"
+ }
+ -re ".*$gdb_prompt $" {
+@@ -448,6 +449,9 @@ proc test_with_self { executable } {
+ }
+ }
+ }
++
++ # Switch back to the GDB thread if Guile support is linked in.
++ gdb_test "thread 1" {\[Switching to thread 1 .*\].*}
+
+ set description "send SIGINT signal to child process"
+ gdb_test "signal SIGINT" \
+
+--cNdxnHkX5QqsyA0e--
+
diff --git a/gdb-testsuite-longdirname.patch b/gdb-testsuite-longdirname.patch
deleted file mode 100644
index 5190f5c..0000000
--- a/gdb-testsuite-longdirname.patch
+++ /dev/null
@@ -1,130 +0,0 @@
-http://sourceware.org/ml/gdb-patches/2016-01/msg00146.html
-Subject: [testsuite patch] Fix false FAILs on too long base directory
-
-
---r5Pyd7+fXNt84Ff3
-Content-Type: text/plain; charset=us-ascii
-Content-Disposition: inline
-
-Hi,
-
-I was getting
-
-gu (print arg0)^M
-= 0x7fffffffdafb
-"/unsafebuild-x86_64-redhat-linux-gnu/gdb/testsuite.unix.-m64/outputs/gdb.guile/scm-value/scm-"...^M
-(gdb) FAIL: gdb.guile/scm-value.exp: verify dereferenced value
-python print (arg0)^M
-0x7fffffffdafd
-"/unsafebuild-x86_64-redhat-linux-gnu/gdb/testsuite.unix.-m64/outputs/gdb.python/py-value/py-v"...^M
-(gdb) FAIL: gdb.python/py-value.exp: verify dereferenced value
-
-and also:
-
-(gdb) p argv[0]^M
-$2 = 0x7fffffffd832 "/home/jkratoch/redhat/gdb-test-", 'x' <repeats 169
-times>...^M
-(gdb) FAIL: gdb.guile/scm-value.exp: argv[0] should be available on this
-target
-
-OK for check-in?
-
-
-Thanks,
-Jan
-
---r5Pyd7+fXNt84Ff3
-Content-Type: text/plain; charset=us-ascii
-Content-Disposition: inline; filename="longdirname.patch"
-
-gdb/testsuite/ChangeLog
-2016-01-08 Jan Kratochvil <jan.kratochvil@redhat.com>
-
- * gdb.guile/scm-value.exp (test_value_in_inferior): Set print elements
- and repeats to unlimited.
- * gdb.python/py-value.exp: Likewise.
- * lib/gdb.exp (gdb_has_argv0): Save and temporarily set print elements
- and repeats to unlimited.
-
-diff --git a/gdb/testsuite/gdb.guile/scm-value.exp b/gdb/testsuite/gdb.guile/scm-value.exp
-index 8c858d5..1d07c9f 100644
---- a/gdb/testsuite/gdb.guile/scm-value.exp
-+++ b/gdb/testsuite/gdb.guile/scm-value.exp
-@@ -91,6 +91,8 @@ proc test_value_in_inferior {} {
- global has_argv0
- set test "verify dereferenced value"
- if { $has_argv0 } {
-+ gdb_test_no_output "set print elements unlimited" ""
-+ gdb_test_no_output "set print repeats unlimited" ""
- gdb_test "gu (print arg0)" "0x.*$testfile\"" $test
- } else {
- unsupported $test
-diff --git a/gdb/testsuite/gdb.python/py-value.exp b/gdb/testsuite/gdb.python/py-value.exp
-index e60bd9e..a9dbe97 100644
---- a/gdb/testsuite/gdb.python/py-value.exp
-+++ b/gdb/testsuite/gdb.python/py-value.exp
-@@ -226,6 +226,8 @@ proc test_value_in_inferior {} {
- global has_argv0
- set test "verify dereferenced value"
- if { $has_argv0 } {
-+ gdb_test_no_output "set print elements unlimited" ""
-+ gdb_test_no_output "set print repeats unlimited" ""
- gdb_test "python print (arg0)" "0x.*$testfile\"" $test
- } else {
- unsupported $test
-diff --git a/gdb/testsuite/lib/gdb.exp b/gdb/testsuite/lib/gdb.exp
-index 015e202..52220d0 100644
---- a/gdb/testsuite/lib/gdb.exp
-+++ b/gdb/testsuite/lib/gdb.exp
-@@ -4896,24 +4896,44 @@ gdb_caching_proc gdb_has_argv0 {
- }
- }
-
-+ set old_elements "200"
-+ set test "show print elements"
-+ gdb_test_multiple $test $test {
-+ -re "Limit on string chars or array elements to print is (\[^\r\n\]+)\\.\r\n$gdb_prompt $" {
-+ set old_elements $expect_out(1,string)
-+ }
-+ }
-+ set old_repeats "200"
-+ set test "show print repeats"
-+ gdb_test_multiple $test $test {
-+ -re "Threshold for repeated print elements is (\[^\r\n\]+)\\.\r\n$gdb_prompt $" {
-+ set old_repeats $expect_out(1,string)
-+ }
-+ }
-+ gdb_test_no_output "set print elements unlimited" ""
-+ gdb_test_no_output "set print repeats unlimited" ""
-+
-+ set retval 0
- # Check whether argc is 1.
- gdb_test_multiple "p argc" "p argc" {
- -re " = 1\r\n${gdb_prompt} $" {
-
- gdb_test_multiple "p argv\[0\]" "p argv\[0\]" {
- -re " = $hex \".*[file tail $exe]\"\r\n${gdb_prompt} $" {
-- return 1
-+ set retval 1
- }
- -re "${gdb_prompt} $" {
-- return 0
- }
- }
- }
- -re "${gdb_prompt} $" {
-- return 0
- }
- }
-- return 0
-+
-+ gdb_test_no_output "set print elements $old_elements" ""
-+ gdb_test_no_output "set print repeats $old_repeats" ""
-+
-+ return $retval
- }
-
- set result [gdb_has_argv0_1 $exe]
-
---r5Pyd7+fXNt84Ff3--
-
diff --git a/gdb-testsuite-multi-base-warnings.patch b/gdb-testsuite-multi-base-warnings.patch
deleted file mode 100644
index b261ed2..0000000
--- a/gdb-testsuite-multi-base-warnings.patch
+++ /dev/null
@@ -1,141 +0,0 @@
-http://sourceware.org/ml/gdb-patches/2016-01/msg00137.html
-Subject: [testsuite patch] Fix gdb.multi/base.exp testsuite regression [Re: [ob/pushed] Stop using nowarnings in gdb/testsuite/gdb.multi/]
-
-
---fdj2RfSjLxBAspz7
-Content-Type: text/plain; charset=us-ascii
-Content-Disposition: inline
-
-On Thu, 10 Dec 2015 17:31:11 +0100, Pedro Alves wrote:
-> Several of the gdb.multi tests use the "nowarnings" option to suppress
-> warnings.
-
-commit 762f774785f4ef878ac4c831e1f4733dc957234d
-Author: Pedro Alves <palves@redhat.com>
-Date: Thu Dec 10 16:21:06 2015 +0000
- Stop using nowarnings in gdb/testsuite/gdb.multi/
-
-+gdb compile failed, gdb/testsuite/gdb.multi/hello.c: In function 'commonfun':
-+gdb/testsuite/gdb.multi/hello.c:24:19: warning: implicit declaration of function 'bar' [-Wimplicit-function-declaration]
-+ int commonfun() { bar(); } /* from hello */
-+ ^
-+gdb/testsuite/gdb.multi/hello.c: At top level:
-+gdb/testsuite/gdb.multi/hello.c:26:1: warning: return type defaults to 'int' [-Wimplicit-int]
-+ bar()
-+ ^
-+gdb/testsuite/gdb.multi/hello.c:32:1: warning: return type defaults to 'int' [-Wimplicit-int]
-+ hello(int x)
-+ ^
-+gdb/testsuite/gdb.multi/hello.c:38:1: warning: return type defaults to 'int' [-Wimplicit-int]
-+ main()
-+ ^
-+UNTESTED: gdb.multi/base.exp: base.exp
-
-
-OK for check-in?
-
-
-Jan
-
---fdj2RfSjLxBAspz7
-Content-Type: text/plain; charset=us-ascii
-Content-Disposition: inline; filename=1
-
-gdb/testsuite/ChangeLog
-2016-01-08 Jan Kratochvil <jan.kratochvil@redhat.com>
-
- * gdb.multi/goodbye.c: Fix compilation warnings by adding return types
- and reordering the functions.
- * gdb.multi/hangout.c: Likewise.
- * gdb.multi/hello.c: Likewise.
-
-diff --git a/gdb/testsuite/gdb.multi/goodbye.c b/gdb/testsuite/gdb.multi/goodbye.c
-index 701e504..bf7759a 100644
---- a/gdb/testsuite/gdb.multi/goodbye.c
-+++ b/gdb/testsuite/gdb.multi/goodbye.c
-@@ -39,24 +39,28 @@ int verylongfun()
- glob *= 9;
- }
-
--main() {
-- mailand();
-- foo(glob);
-- verylongfun();
-- goodbye();
--}
--
--foo(int x) {
-- return x + 92;
--}
--
-+void
- mailand()
- {
- glob = 46;
- }
-
--void commonfun() { mailand(); } /* from goodbye */
-+int
-+foo(int x) {
-+ return x + 92;
-+}
-
-+void
- goodbye() {
- ++glob;
- }
-+
-+int
-+main() {
-+ mailand();
-+ foo(glob);
-+ verylongfun();
-+ goodbye();
-+}
-+
-+void commonfun() { mailand(); } /* from goodbye */
-diff --git a/gdb/testsuite/gdb.multi/hangout.c b/gdb/testsuite/gdb.multi/hangout.c
-index e2c41b8..3701512 100644
---- a/gdb/testsuite/gdb.multi/hangout.c
-+++ b/gdb/testsuite/gdb.multi/hangout.c
-@@ -17,6 +17,7 @@
-
- #include <stdio.h>
-
-+int
- main(int argc, char *argv[])
- {
- int i;
-diff --git a/gdb/testsuite/gdb.multi/hello.c b/gdb/testsuite/gdb.multi/hello.c
-index efff59d..93d921f 100644
---- a/gdb/testsuite/gdb.multi/hello.c
-+++ b/gdb/testsuite/gdb.multi/hello.c
-@@ -21,20 +21,23 @@ short hglob = 1;
-
- short glob = 92;
-
--int commonfun() { bar(); } /* from hello */
--
-+void
- bar()
- {
- if (glob == 0)
- exit(1);
- }
-
-+int commonfun() { bar(); } /* from hello */
-+
-+int
- hello(int x)
- {
- x *= 2;
- return x + 45;
- }
-
-+int
- main()
- {
- int tmpx;
-
---fdj2RfSjLxBAspz7--
-
diff --git a/gdb.spec b/gdb.spec
index a5bfd25..1689269 100644
--- a/gdb.spec
+++ b/gdb.spec
@@ -19,7 +19,7 @@ Summary: A GNU source-level debugger for C, C++, Fortran, Go and other languages
Name: %{?scl_prefix}gdb
# Freeze it when GDB gets branched
-%global snapsrc 20160106
+%global snapsrc 20160121
# See timestamp of source gnulib installed into gdb/gnulib/ .
%global snapgnulib 20150822
%global tarname gdb-%{version}
@@ -27,7 +27,7 @@ Version: 7.10.50.%{snapsrc}
# The release always contains a leading reserved number, start it at 1.
# `upstream' is not a part of `name' to stay fully rpm dependencies compatible for the testing.
-Release: 44%{?dist}
+Release: 45%{?dist}
License: GPLv3+ and GPLv3+ with exceptions and GPLv2+ and GPLv2+ with exceptions and GPL+ and LGPLv2+ and BSD and Public Domain and GFDL
Group: Development/Debuggers
@@ -549,24 +549,12 @@ Patch1044: gdb-pahole-python2.patch
# Force libncursesw over libncurses to match the includes (RH BZ 1270534).
Patch1056: gdb-fedora-libncursesw.patch
-# Fix gdb.multi/base.exp testsuite regression.
-Patch1064: gdb-testsuite-multi-base-warnings.patch
-
-# Fix i386 regression for funcargs.exp.
-Patch1065: gdb-testsuite-funcargs-m32.patch
-
-# Regression for foll-vfork.exp.
-Patch1066: gdb-testsuite-foll-vfork.patch
-
-# Regression for gdb.threads/fork-plus-threads.exp - revert.
-Patch1067: gdb-fork-plus-threads-ascending-revert.patch
-
-# Fix false FAILs on too long base directory.
-Patch1070: gdb-testsuite-longdirname.patch
-
# Test clflushopt instruction decode (for RH BZ 1262471).
Patch1073: gdb-opcodes-clflushopt-test.patch
+# Fix testsuite regression with Guile.
+Patch1074: gdb-testsuite-guile.patch
+
%if 0%{!?rhel:1} || 0%{?rhel} > 6
# RL_STATE_FEDORA_GDB would not be found for:
# Patch642: gdb-readline62-ask-more-rh.patch
@@ -873,17 +861,13 @@ find -name "*.info*"|xargs rm -f
%patch927 -p1
%patch978 -p1
%patch1056 -p1
-%patch1064 -p1
-%patch1065 -p1
-%patch1066 -p1
-%patch1067 -p1
-%patch1070 -p1
%patch1073 -p1
%patch848 -p1
%patch833 -p1
%patch642 -p1
%patch337 -p1
%patch331 -p1
+%patch1074 -p1
%if 0%{?rhel:1} && 0%{?rhel} <= 7
%patch1044 -p1
@@ -1401,6 +1385,9 @@ then
fi
%changelog
+* Fri Jan 22 2016 Jan Kratochvil <jan.kratochvil@redhat.com> - 7.10.50.20160121-45.fc24
+- Rebase to FSF GDB 7.10.50.20160121 (trunk snapshot).
+
* Wed Jan 20 2016 Jan Kratochvil <jan.kratochvil@redhat.com> - 7.10.50.20160106-44.fc24
- Suppress librpm non-absolute filename warnings for /^remote:/ filenames.
diff --git a/sources b/sources
index 958badf..f3e603e 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
7ad32d3894aaf90d00a4343a735c3e1c gdb-libstdc++-v3-python-r225521.tar.xz
-74583201f34dacfa024845578c4760bf gdb-7.10.50.20160106.tar.xz
+aa8ae54df5543678a7ce6420342a4914 gdb-7.10.50.20160121.tar.xz
reply other threads:[~2026-06-27 23:57 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=178260464569.1.4394454663117011285.rpms-gdb-c16b44507f81@fedoraproject.org \
--to=jan.kratochvil@redhat.com \
--cc=git-commits@fedoraproject.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox