Backup of a draft Archer port - before importing
archer-keiths-expr-cumulative.
This commit is contained in:
parent
e241ec0a7b
commit
159237942c
@ -1 +1 @@
|
||||
gdb-6.8.50.20090210.tar.bz2
|
||||
gdb-6.8.50.20090228.tar.bz2
|
||||
|
@ -4,20 +4,20 @@
|
||||
to install and uninstall.
|
||||
* gstack.sh, gstack.1: New files.
|
||||
|
||||
Index: gdb-6.8.50.20081128/gdb/Makefile.in
|
||||
Index: gdb-6.8.50.20090226/gdb/Makefile.in
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20081128.orig/gdb/Makefile.in 2008-12-01 16:11:48.000000000 +0100
|
||||
+++ gdb-6.8.50.20081128/gdb/Makefile.in 2008-12-01 16:14:11.000000000 +0100
|
||||
@@ -902,7 +902,7 @@ gdb.z:gdb.1
|
||||
# time it takes for make to check that all is up to date.
|
||||
# install-only is intended to address that need.
|
||||
install: all install-only
|
||||
-install-only: $(CONFIG_INSTALL)
|
||||
+install-only: install-gstack $(CONFIG_INSTALL)
|
||||
--- gdb-6.8.50.20090226.orig/gdb/Makefile.in 2009-02-26 22:09:59.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/Makefile.in 2009-02-26 22:10:22.000000000 +0100
|
||||
@@ -973,7 +973,7 @@ install: all install-only
|
||||
|
||||
# The "install-only" target also installs the syscalls' XML files in
|
||||
# the system.
|
||||
-install-only: $(CONFIG_INSTALL) xml-syscall-install
|
||||
+install-only: install-gstack $(CONFIG_INSTALL) xml-syscall-install
|
||||
transformed_name=`t='$(program_transform_name)'; \
|
||||
echo gdb | sed -e "$$t"` ; \
|
||||
if test "x$$transformed_name" = x; then \
|
||||
@@ -934,9 +934,26 @@ install-tui:
|
||||
@@ -1005,9 +1005,26 @@ install-tui:
|
||||
$(DESTDIR)$(man1dir) ; \
|
||||
$(INSTALL_DATA) $(srcdir)/gdb.1 \
|
||||
$(DESTDIR)$(man1dir)/$$transformed_name.1
|
||||
@ -45,7 +45,7 @@ Index: gdb-6.8.50.20081128/gdb/Makefile.in
|
||||
transformed_name=`t='$(program_transform_name)'; \
|
||||
echo gdb | sed -e $$t` ; \
|
||||
if test "x$$transformed_name" = x; then \
|
||||
@@ -958,6 +975,17 @@ uninstall-tui:
|
||||
@@ -1029,6 +1046,17 @@ uninstall-tui:
|
||||
fi ; \
|
||||
rm -f $(DESTDIR)$(bindir)/$$transformed_name$(EXEEXT) \
|
||||
$(DESTDIR)$(man1dir)/$$transformed_name.1
|
||||
@ -63,10 +63,10 @@ Index: gdb-6.8.50.20081128/gdb/Makefile.in
|
||||
|
||||
# The C++ name parser can be built standalone for testing.
|
||||
test-cp-name-parser.o: cp-name-parser.c
|
||||
Index: gdb-6.8.50.20081128/gdb/gstack.sh
|
||||
Index: gdb-6.8.50.20090226/gdb/gstack.sh
|
||||
===================================================================
|
||||
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
||||
+++ gdb-6.8.50.20081128/gdb/gstack.sh 2008-12-01 16:13:16.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/gstack.sh 2009-02-26 22:10:05.000000000 +0100
|
||||
@@ -0,0 +1,45 @@
|
||||
+#!/bin/sh
|
||||
+
|
||||
|
@ -7,22 +7,11 @@
|
||||
(ia64_rse_skip_regs): Ditto.
|
||||
(ia64_linux_check_stack_region): New function.
|
||||
|
||||
Index: gdb-6.8.50.20081209/gdb/linux-nat.c
|
||||
Index: gdb-6.8.50.20090226/gdb/linux-nat.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20081209.orig/gdb/linux-nat.c 2008-12-10 01:25:43.000000000 +0100
|
||||
+++ gdb-6.8.50.20081209/gdb/linux-nat.c 2008-12-10 01:27:09.000000000 +0100
|
||||
@@ -3246,7 +3246,9 @@ linux_nat_xfer_partial (struct target_op
|
||||
do_cleanups (old_chain);
|
||||
return xfer;
|
||||
}
|
||||
-
|
||||
+#ifdef NATIVE_XFER_UNWIND_TABLE
|
||||
+extern int ia64_linux_check_stack_region(struct lwp_info *lwp, void *range);
|
||||
+#endif
|
||||
static int
|
||||
linux_nat_thread_alive (ptid_t ptid)
|
||||
{
|
||||
@@ -4148,15 +4150,34 @@ linux_xfer_partial (struct target_ops *o
|
||||
--- gdb-6.8.50.20090226.orig/gdb/linux-nat.c 2009-02-27 07:51:44.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/linux-nat.c 2009-02-28 07:19:05.000000000 +0100
|
||||
@@ -4386,15 +4386,38 @@ linux_xfer_partial (struct target_ops *o
|
||||
return linux_nat_xfer_osdata (ops, object, annex, readbuf, writebuf,
|
||||
offset, len);
|
||||
|
||||
@ -43,6 +32,10 @@ Index: gdb-6.8.50.20081209/gdb/linux-nat.c
|
||||
+ /* FIXME: For ia64, we cannot currently use
|
||||
+ linux_proc_xfer_partial for accessing rse register storage.
|
||||
+ Revert when Bugzilla 147436 is fixed. */
|
||||
+#ifdef NATIVE_XFER_UNWIND_TABLE
|
||||
+ extern int ia64_linux_check_stack_region (struct lwp_info *lwp,
|
||||
+ void *range);
|
||||
+#endif
|
||||
+ if (iterate_over_lwps (ia64_linux_check_stack_region, &range) != NULL)
|
||||
+ { /* This region contains ia64 rse registers, we have to re-read. */
|
||||
+ int xxfer;
|
||||
@ -62,11 +55,11 @@ Index: gdb-6.8.50.20081209/gdb/linux-nat.c
|
||||
|
||||
return super_xfer_partial (ops, object, annex, readbuf, writebuf,
|
||||
offset, len);
|
||||
Index: gdb-6.8.50.20081209/gdb/ia64-linux-nat.c
|
||||
Index: gdb-6.8.50.20090226/gdb/ia64-linux-nat.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20081209.orig/gdb/ia64-linux-nat.c 2008-08-15 10:08:27.000000000 +0200
|
||||
+++ gdb-6.8.50.20081209/gdb/ia64-linux-nat.c 2008-12-10 01:25:53.000000000 +0100
|
||||
@@ -807,6 +807,64 @@ ia64_linux_xfer_partial (struct target_o
|
||||
--- gdb-6.8.50.20090226.orig/gdb/ia64-linux-nat.c 2009-02-23 01:03:49.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/ia64-linux-nat.c 2009-02-28 07:18:10.000000000 +0100
|
||||
@@ -809,6 +809,64 @@ ia64_linux_xfer_partial (struct target_o
|
||||
|
||||
void _initialize_ia64_linux_nat (void);
|
||||
|
||||
|
@ -25,10 +25,10 @@
|
||||
|
||||
Port to GDB-6.7.
|
||||
|
||||
Index: gdb-6.8.50.20090209/gdb/symfile-mem.c
|
||||
Index: gdb-6.8.50.20090226/gdb/symfile-mem.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/symfile-mem.c 2009-01-03 06:57:53.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/symfile-mem.c 2009-02-09 15:49:25.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/symfile-mem.c 2009-02-21 17:14:49.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/symfile-mem.c 2009-02-28 07:22:09.000000000 +0100
|
||||
@@ -56,6 +56,14 @@
|
||||
#include "elf/common.h"
|
||||
|
||||
@ -53,10 +53,10 @@ Index: gdb-6.8.50.20090209/gdb/symfile-mem.c
|
||||
if (nbfd == NULL)
|
||||
error (_("Failed to read a valid object file image from memory."));
|
||||
|
||||
Index: gdb-6.8.50.20090209/gdb/target.c
|
||||
Index: gdb-6.8.50.20090226/gdb/target.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/target.c 2009-02-06 23:21:26.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/target.c 2009-02-09 15:50:39.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/target.c 2009-02-27 00:04:32.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/target.c 2009-02-28 07:22:09.000000000 +0100
|
||||
@@ -57,7 +57,7 @@ static int nosymbol (char *, CORE_ADDR *
|
||||
|
||||
static void tcomplain (void) ATTR_NORETURN;
|
||||
@ -66,7 +66,7 @@ Index: gdb-6.8.50.20090209/gdb/target.c
|
||||
|
||||
static int return_zero (void);
|
||||
|
||||
@@ -294,7 +294,7 @@ target_create_inferior (char *exec_file,
|
||||
@@ -286,7 +286,7 @@ target_create_inferior (char *exec_file,
|
||||
}
|
||||
|
||||
|
||||
@ -75,7 +75,7 @@ Index: gdb-6.8.50.20090209/gdb/target.c
|
||||
nomemory (CORE_ADDR memaddr, char *myaddr, int len, int write,
|
||||
struct target_ops *t)
|
||||
{
|
||||
@@ -522,7 +522,7 @@ update_current_target (void)
|
||||
@@ -507,7 +507,7 @@ update_current_target (void)
|
||||
(void (*) (struct regcache *))
|
||||
noprocess);
|
||||
de_fault (deprecated_xfer_memory,
|
||||
@ -84,7 +84,7 @@ Index: gdb-6.8.50.20090209/gdb/target.c
|
||||
nomemory);
|
||||
de_fault (to_files_info,
|
||||
(void (*) (struct target_ops *))
|
||||
@@ -1252,7 +1252,7 @@ target_xfer_partial (struct target_ops *
|
||||
@@ -1237,7 +1237,7 @@ target_xfer_partial (struct target_ops *
|
||||
it makes no progress, and then return how much was transferred). */
|
||||
|
||||
int
|
||||
@ -93,7 +93,7 @@ Index: gdb-6.8.50.20090209/gdb/target.c
|
||||
{
|
||||
if (target_read (¤t_target, TARGET_OBJECT_MEMORY, NULL,
|
||||
myaddr, memaddr, len) == len)
|
||||
@@ -1262,7 +1262,7 @@ target_read_memory (CORE_ADDR memaddr, g
|
||||
@@ -1247,7 +1247,7 @@ target_read_memory (CORE_ADDR memaddr, g
|
||||
}
|
||||
|
||||
int
|
||||
@ -102,7 +102,7 @@ Index: gdb-6.8.50.20090209/gdb/target.c
|
||||
{
|
||||
if (target_write (¤t_target, TARGET_OBJECT_MEMORY, NULL,
|
||||
myaddr, memaddr, len) == len)
|
||||
@@ -2723,8 +2723,8 @@ debug_to_prepare_to_store (struct regcac
|
||||
@@ -2777,8 +2777,8 @@ debug_to_prepare_to_store (struct regcac
|
||||
fprintf_unfiltered (gdb_stdlog, "target_prepare_to_store ()\n");
|
||||
}
|
||||
|
||||
@ -113,7 +113,7 @@ Index: gdb-6.8.50.20090209/gdb/target.c
|
||||
int write, struct mem_attrib *attrib,
|
||||
struct target_ops *target)
|
||||
{
|
||||
@@ -2734,8 +2734,8 @@ deprecated_debug_xfer_memory (CORE_ADDR
|
||||
@@ -2788,8 +2788,8 @@ deprecated_debug_xfer_memory (CORE_ADDR
|
||||
attrib, target);
|
||||
|
||||
fprintf_unfiltered (gdb_stdlog,
|
||||
@ -124,11 +124,11 @@ Index: gdb-6.8.50.20090209/gdb/target.c
|
||||
retval);
|
||||
|
||||
if (retval > 0)
|
||||
Index: gdb-6.8.50.20090209/gdb/target.h
|
||||
Index: gdb-6.8.50.20090226/gdb/target.h
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/target.h 2009-02-06 23:59:01.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/target.h 2009-02-09 15:49:25.000000000 +0100
|
||||
@@ -360,10 +360,10 @@ struct target_ops
|
||||
--- gdb-6.8.50.20090226.orig/gdb/target.h 2009-02-27 00:04:32.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/target.h 2009-02-28 07:22:09.000000000 +0100
|
||||
@@ -376,10 +376,10 @@ struct target_ops
|
||||
NOTE: cagney/2004-10-01: This has been entirely superseeded by
|
||||
to_xfer_partial and inferior inheritance. */
|
||||
|
||||
@ -143,7 +143,7 @@ Index: gdb-6.8.50.20090209/gdb/target.h
|
||||
|
||||
void (*to_files_info) (struct target_ops *);
|
||||
int (*to_insert_breakpoint) (struct bp_target_info *);
|
||||
@@ -663,13 +663,14 @@ extern DCACHE *target_dcache;
|
||||
@@ -679,13 +679,14 @@ extern DCACHE *target_dcache;
|
||||
|
||||
extern int target_read_string (CORE_ADDR, char **, int, int *);
|
||||
|
||||
@ -162,10 +162,10 @@ Index: gdb-6.8.50.20090209/gdb/target.h
|
||||
|
||||
/* Fetches the target's memory map. If one is found it is sorted
|
||||
and returned, after some consistency checking. Otherwise, NULL
|
||||
Index: gdb-6.8.50.20090209/gdb/dcache.c
|
||||
Index: gdb-6.8.50.20090226/gdb/dcache.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/dcache.c 2009-01-03 06:57:51.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/dcache.c 2009-02-09 15:49:25.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/dcache.c 2009-01-03 06:57:51.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/dcache.c 2009-02-28 07:22:09.000000000 +0100
|
||||
@@ -524,9 +524,9 @@ dcache_free (DCACHE *dcache)
|
||||
|
||||
This routine is indended to be called by remote_xfer_ functions. */
|
||||
@ -178,10 +178,10 @@ Index: gdb-6.8.50.20090209/gdb/dcache.c
|
||||
{
|
||||
int i;
|
||||
int (*xfunc) (DCACHE *dcache, CORE_ADDR addr, gdb_byte *ptr);
|
||||
Index: gdb-6.8.50.20090209/gdb/dcache.h
|
||||
Index: gdb-6.8.50.20090226/gdb/dcache.h
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/dcache.h 2009-01-03 06:57:51.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/dcache.h 2009-02-09 15:49:25.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/dcache.h 2009-01-03 06:57:51.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/dcache.h 2009-02-28 07:22:09.000000000 +0100
|
||||
@@ -35,7 +35,7 @@ void dcache_free (DCACHE *);
|
||||
|
||||
/* Simple to call from <remote>_xfer_memory */
|
||||
@ -192,11 +192,11 @@ Index: gdb-6.8.50.20090209/gdb/dcache.h
|
||||
+ LONGEST len, int should_write);
|
||||
|
||||
#endif /* DCACHE_H */
|
||||
Index: gdb-6.8.50.20090209/gdb/exec.c
|
||||
Index: gdb-6.8.50.20090226/gdb/exec.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/exec.c 2009-01-08 17:32:29.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/exec.c 2009-02-09 15:49:25.000000000 +0100
|
||||
@@ -466,8 +466,8 @@ map_vmap (bfd *abfd, bfd *arch)
|
||||
--- gdb-6.8.50.20090226.orig/gdb/exec.c 2009-02-22 20:35:47.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/exec.c 2009-02-28 07:22:09.000000000 +0100
|
||||
@@ -464,8 +464,8 @@ map_vmap (bfd *abfd, bfd *arch)
|
||||
The same routine is used to handle both core and exec files;
|
||||
we just tail-call it with more arguments to select between them. */
|
||||
|
||||
@ -207,12 +207,12 @@ Index: gdb-6.8.50.20090209/gdb/exec.c
|
||||
struct mem_attrib *attrib, struct target_ops *target)
|
||||
{
|
||||
int res;
|
||||
Index: gdb-6.8.50.20090209/gdb/linux-nat.c
|
||||
Index: gdb-6.8.50.20090226/gdb/linux-nat.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/linux-nat.c 2009-02-09 15:48:46.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/linux-nat.c 2009-02-09 15:49:25.000000000 +0100
|
||||
@@ -4283,7 +4283,7 @@ linux_xfer_partial (struct target_ops *o
|
||||
Revert when Bugzilla 147436 is fixed. */
|
||||
--- gdb-6.8.50.20090226.orig/gdb/linux-nat.c 2009-02-28 07:22:02.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/linux-nat.c 2009-02-28 07:22:32.000000000 +0100
|
||||
@@ -4407,7 +4407,7 @@ linux_xfer_partial (struct target_ops *o
|
||||
#endif
|
||||
if (iterate_over_lwps (ia64_linux_check_stack_region, &range) != NULL)
|
||||
{ /* This region contains ia64 rse registers, we have to re-read. */
|
||||
- int xxfer;
|
||||
@ -220,10 +220,10 @@ Index: gdb-6.8.50.20090209/gdb/linux-nat.c
|
||||
|
||||
/* Re-read register stack area. */
|
||||
xxfer = super_xfer_partial (ops, object, annex,
|
||||
Index: gdb-6.8.50.20090209/gdb/remote.c
|
||||
Index: gdb-6.8.50.20090226/gdb/remote.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/remote.c 2009-02-06 23:59:00.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/remote.c 2009-02-09 15:49:25.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/remote.c 2009-02-25 03:14:22.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/remote.c 2009-02-28 07:22:09.000000000 +0100
|
||||
@@ -25,6 +25,7 @@
|
||||
#include "gdb_string.h"
|
||||
#include <ctype.h>
|
||||
@ -232,7 +232,7 @@ Index: gdb-6.8.50.20090209/gdb/remote.c
|
||||
#include "inferior.h"
|
||||
#include "bfd.h"
|
||||
#include "symfile.h"
|
||||
@@ -5688,12 +5689,19 @@ handle_notification (char *buf, size_t l
|
||||
@@ -5683,12 +5684,19 @@ handle_notification (char *buf, size_t l
|
||||
if SHOULD_WRITE is nonzero. Returns length of data written or
|
||||
read; 0 for error. TARGET is unused. */
|
||||
|
||||
@ -254,7 +254,7 @@ Index: gdb-6.8.50.20090209/gdb/remote.c
|
||||
|
||||
set_general_thread (inferior_ptid);
|
||||
|
||||
@@ -5702,7 +5710,7 @@ remote_xfer_memory (CORE_ADDR mem_addr,
|
||||
@@ -5697,7 +5705,7 @@ remote_xfer_memory (CORE_ADDR mem_addr,
|
||||
else
|
||||
res = remote_read_bytes (mem_addr, buffer, mem_len);
|
||||
|
||||
@ -263,11 +263,11 @@ Index: gdb-6.8.50.20090209/gdb/remote.c
|
||||
}
|
||||
|
||||
/* Sends a packet with content determined by the printf format string
|
||||
Index: gdb-6.8.50.20090209/gdb/remote-sim.c
|
||||
Index: gdb-6.8.50.20090226/gdb/remote-sim.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/remote-sim.c 2009-02-06 23:21:26.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/remote-sim.c 2009-02-09 15:49:25.000000000 +0100
|
||||
@@ -757,11 +757,14 @@ gdbsim_prepare_to_store (struct regcache
|
||||
--- gdb-6.8.50.20090226.orig/gdb/remote-sim.c 2009-02-23 19:31:23.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/remote-sim.c 2009-02-28 07:22:09.000000000 +0100
|
||||
@@ -754,11 +754,14 @@ gdbsim_prepare_to_store (struct regcache
|
||||
|
||||
Returns the number of bytes transferred. */
|
||||
|
||||
@ -284,7 +284,7 @@ Index: gdb-6.8.50.20090209/gdb/remote-sim.c
|
||||
/* If no program is running yet, then ignore the simulator for
|
||||
memory. Pass the request down to the next target, hopefully
|
||||
an exec file. */
|
||||
@@ -777,22 +780,22 @@ gdbsim_xfer_inferior_memory (CORE_ADDR m
|
||||
@@ -774,22 +777,22 @@ gdbsim_xfer_inferior_memory (CORE_ADDR m
|
||||
printf_filtered ("gdbsim_xfer_inferior_memory: myaddr 0x");
|
||||
gdb_print_host_address (myaddr, gdb_stdout);
|
||||
printf_filtered (", memaddr 0x%s, len %d, write %d\n",
|
||||
|
@ -26,10 +26,10 @@
|
||||
|
||||
Fix scan_dyntag() for binaries provided by valgrind (BZ 460319).
|
||||
|
||||
Index: gdb-6.8.50.20090209/gdb/amd64-tdep.c
|
||||
Index: gdb-6.8.50.20090226/gdb/amd64-tdep.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/amd64-tdep.c 2009-02-09 16:02:28.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/amd64-tdep.c 2009-02-09 16:21:55.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/amd64-tdep.c 2009-02-28 07:31:48.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/amd64-tdep.c 2009-02-28 07:38:59.000000000 +0100
|
||||
@@ -36,6 +36,7 @@
|
||||
#include "regcache.h"
|
||||
#include "regset.h"
|
||||
@ -38,7 +38,7 @@ Index: gdb-6.8.50.20090209/gdb/amd64-tdep.c
|
||||
|
||||
#include "gdb_assert.h"
|
||||
|
||||
@@ -1597,16 +1598,28 @@ amd64_analyze_stack_align (CORE_ADDR pc,
|
||||
@@ -1586,16 +1587,28 @@ amd64_analyze_stack_align (CORE_ADDR pc,
|
||||
Any function that doesn't start with this sequence will be assumed
|
||||
to have no prologue and thus no valid frame pointer in %rbp. */
|
||||
|
||||
@ -71,7 +71,7 @@ Index: gdb-6.8.50.20090209/gdb/amd64-tdep.c
|
||||
|
||||
pc = amd64_analyze_stack_align (pc, current_pc, cache);
|
||||
|
||||
@@ -1621,18 +1634,57 @@ amd64_analyze_prologue (CORE_ADDR pc, CO
|
||||
@@ -1610,18 +1623,57 @@ amd64_analyze_prologue (CORE_ADDR pc, CO
|
||||
|
||||
/* If that's all, return now. */
|
||||
if (current_pc <= pc + 1)
|
||||
@ -132,13 +132,13 @@ Index: gdb-6.8.50.20090209/gdb/amd64-tdep.c
|
||||
return pc;
|
||||
}
|
||||
|
||||
Index: gdb-6.8.50.20090209/gdb/auxv.c
|
||||
Index: gdb-6.8.50.20090226/gdb/auxv.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/auxv.c 2009-01-03 06:57:50.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/auxv.c 2009-02-09 16:21:55.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/auxv.c 2009-02-27 00:04:32.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/auxv.c 2009-02-28 07:40:35.000000000 +0100
|
||||
@@ -81,7 +81,7 @@ procfs_xfer_auxv (struct target_ops *ops
|
||||
Return 1 if an entry was read into *TYPEP and *VALP. */
|
||||
int
|
||||
static int
|
||||
default_auxv_parse (struct target_ops *ops, gdb_byte **readptr,
|
||||
- gdb_byte *endptr, CORE_ADDR *typep, CORE_ADDR *valp)
|
||||
+ gdb_byte *endptr, ULONGEST *typep, CORE_ADDR *valp)
|
||||
@ -215,7 +215,7 @@ Index: gdb-6.8.50.20090209/gdb/auxv.c
|
||||
switch (flavor)
|
||||
{
|
||||
case dec:
|
||||
@@ -253,7 +255,7 @@ fprint_target_auxv (struct ui_file *file
|
||||
@@ -254,7 +256,7 @@ fprint_target_auxv (struct ui_file *file
|
||||
break;
|
||||
}
|
||||
++ents;
|
||||
@ -224,10 +224,10 @@ Index: gdb-6.8.50.20090209/gdb/auxv.c
|
||||
break;
|
||||
}
|
||||
|
||||
Index: gdb-6.8.50.20090209/gdb/auxv.h
|
||||
Index: gdb-6.8.50.20090226/gdb/auxv.h
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/auxv.h 2009-01-03 06:57:50.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/auxv.h 2009-02-09 16:21:55.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/auxv.h 2009-01-03 06:57:50.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/auxv.h 2009-02-28 07:38:59.000000000 +0100
|
||||
@@ -36,14 +36,14 @@ struct target_ops; /* Forward declarati
|
||||
Return 1 if an entry was read into *TYPEP and *VALP. */
|
||||
extern int target_auxv_parse (struct target_ops *ops,
|
||||
@ -245,11 +245,11 @@ Index: gdb-6.8.50.20090209/gdb/auxv.h
|
||||
|
||||
/* Print the contents of the target's AUXV on the specified file. */
|
||||
extern int fprint_target_auxv (struct ui_file *file, struct target_ops *ops);
|
||||
Index: gdb-6.8.50.20090209/gdb/breakpoint.c
|
||||
Index: gdb-6.8.50.20090226/gdb/breakpoint.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/breakpoint.c 2009-02-09 16:12:23.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/breakpoint.c 2009-02-09 16:21:55.000000000 +0100
|
||||
@@ -3894,7 +3894,8 @@ describe_other_breakpoints (CORE_ADDR pc
|
||||
--- gdb-6.8.50.20090226.orig/gdb/breakpoint.c 2009-02-28 07:38:47.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/breakpoint.c 2009-02-28 07:38:59.000000000 +0100
|
||||
@@ -3920,7 +3920,8 @@ describe_other_breakpoints (CORE_ADDR pc
|
||||
printf_filtered (" (thread %d)", b->thread);
|
||||
printf_filtered ("%s%s ",
|
||||
((b->enable_state == bp_disabled ||
|
||||
@ -259,7 +259,7 @@ Index: gdb-6.8.50.20090209/gdb/breakpoint.c
|
||||
? " (disabled)"
|
||||
: b->enable_state == bp_permanent
|
||||
? " (permanent)"
|
||||
@@ -4725,6 +4726,61 @@ create_catchpoint (int tempflag, char *c
|
||||
@@ -5008,6 +5009,61 @@ create_catchpoint (int tempflag, char *c
|
||||
return b;
|
||||
}
|
||||
|
||||
@ -321,11 +321,11 @@ Index: gdb-6.8.50.20090209/gdb/breakpoint.c
|
||||
static void
|
||||
create_fork_vfork_event_catchpoint (int tempflag, char *cond_string,
|
||||
struct breakpoint_ops *ops)
|
||||
Index: gdb-6.8.50.20090209/gdb/breakpoint.h
|
||||
Index: gdb-6.8.50.20090226/gdb/breakpoint.h
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/breakpoint.h 2009-01-30 19:28:00.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/breakpoint.h 2009-02-09 16:21:55.000000000 +0100
|
||||
@@ -126,6 +126,7 @@ enum enable_state
|
||||
--- gdb-6.8.50.20090226.orig/gdb/breakpoint.h 2009-02-27 00:04:32.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/breakpoint.h 2009-02-28 07:38:59.000000000 +0100
|
||||
@@ -127,6 +127,7 @@ enum enable_state
|
||||
automatically enabled and reset when the call
|
||||
"lands" (either completes, or stops at another
|
||||
eventpoint). */
|
||||
@ -333,7 +333,7 @@ Index: gdb-6.8.50.20090209/gdb/breakpoint.h
|
||||
bp_permanent /* There is a breakpoint instruction hard-wired into
|
||||
the target's code. Don't try to write another
|
||||
breakpoint instruction on top of it, or restore
|
||||
@@ -819,6 +820,10 @@ extern void remove_thread_event_breakpoi
|
||||
@@ -847,6 +848,10 @@ extern void remove_thread_event_breakpoi
|
||||
|
||||
extern void disable_breakpoints_in_shlibs (void);
|
||||
|
||||
@ -344,11 +344,11 @@ Index: gdb-6.8.50.20090209/gdb/breakpoint.h
|
||||
/* This function returns TRUE if ep is a catchpoint. */
|
||||
extern int ep_is_catchpoint (struct breakpoint *);
|
||||
|
||||
Index: gdb-6.8.50.20090209/gdb/dwarf2read.c
|
||||
Index: gdb-6.8.50.20090226/gdb/dwarf2read.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/dwarf2read.c 2009-02-09 16:12:23.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/dwarf2read.c 2009-02-09 16:21:55.000000000 +0100
|
||||
@@ -1296,7 +1296,7 @@ dwarf2_build_psymtabs (struct objfile *o
|
||||
--- gdb-6.8.50.20090226.orig/gdb/dwarf2read.c 2009-02-28 07:38:48.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/dwarf2read.c 2009-02-28 07:38:59.000000000 +0100
|
||||
@@ -1421,7 +1421,7 @@ dwarf2_build_psymtabs (struct objfile *o
|
||||
else
|
||||
dwarf2_per_objfile->loc_buffer = NULL;
|
||||
|
||||
@ -357,10 +357,10 @@ Index: gdb-6.8.50.20090209/gdb/dwarf2read.c
|
||||
|| (objfile->global_psymbols.size == 0
|
||||
&& objfile->static_psymbols.size == 0))
|
||||
{
|
||||
Index: gdb-6.8.50.20090209/gdb/elfread.c
|
||||
Index: gdb-6.8.50.20090226/gdb/elfread.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/elfread.c 2009-01-03 06:57:51.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/elfread.c 2009-02-09 16:21:55.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/elfread.c 2009-02-27 00:04:32.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/elfread.c 2009-02-28 07:38:59.000000000 +0100
|
||||
@@ -680,7 +680,7 @@ elf_symfile_read (struct objfile *objfil
|
||||
/* If we are reinitializing, or if we have never loaded syms yet,
|
||||
set table to empty. MAINLINE is cleared so that *_read_psymtab
|
||||
@ -370,11 +370,11 @@ Index: gdb-6.8.50.20090209/gdb/elfread.c
|
||||
{
|
||||
init_psymbol_list (objfile, 0);
|
||||
mainline = 0;
|
||||
Index: gdb-6.8.50.20090209/gdb/infrun.c
|
||||
Index: gdb-6.8.50.20090226/gdb/infrun.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/infrun.c 2009-02-09 16:12:23.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/infrun.c 2009-02-09 16:21:55.000000000 +0100
|
||||
@@ -3278,6 +3278,11 @@ infrun: BPSTAT_WHAT_SET_LONGJMP_RESUME (
|
||||
--- gdb-6.8.50.20090226.orig/gdb/infrun.c 2009-02-28 07:37:54.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/infrun.c 2009-02-28 07:38:59.000000000 +0100
|
||||
@@ -3328,6 +3328,11 @@ infrun: BPSTAT_WHAT_SET_LONGJMP_RESUME (
|
||||
#endif
|
||||
target_terminal_inferior ();
|
||||
|
||||
@ -386,10 +386,10 @@ Index: gdb-6.8.50.20090209/gdb/infrun.c
|
||||
/* If requested, stop when the dynamic linker notifies
|
||||
gdb of events. This allows the user to get control
|
||||
and place breakpoints in initializer routines for
|
||||
Index: gdb-6.8.50.20090209/gdb/objfiles.c
|
||||
Index: gdb-6.8.50.20090226/gdb/objfiles.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/objfiles.c 2009-01-15 17:35:22.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/objfiles.c 2009-02-09 16:21:55.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/objfiles.c 2009-02-27 00:04:32.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/objfiles.c 2009-02-28 07:38:59.000000000 +0100
|
||||
@@ -51,6 +51,9 @@
|
||||
#include "arch-utils.h"
|
||||
#include "exec.h"
|
||||
@ -421,7 +421,7 @@ Index: gdb-6.8.50.20090209/gdb/objfiles.c
|
||||
}
|
||||
|
||||
/* Create the terminating entry of OBJFILE's minimal symbol table.
|
||||
@@ -458,6 +458,9 @@ free_objfile (struct objfile *objfile)
|
||||
@@ -443,6 +458,9 @@ free_objfile (struct objfile *objfile)
|
||||
if (objfile == rt_common_objfile)
|
||||
rt_common_objfile = NULL;
|
||||
|
||||
@ -431,10 +431,10 @@ Index: gdb-6.8.50.20090209/gdb/objfiles.c
|
||||
/* Before the symbol table code was redone to make it easier to
|
||||
selectively load and remove information particular to a specific
|
||||
linkage unit, gdb used to do these things whenever the monolithic
|
||||
Index: gdb-6.8.50.20090209/gdb/solib-svr4.c
|
||||
Index: gdb-6.8.50.20090226/gdb/solib-svr4.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/solib-svr4.c 2009-02-09 16:02:35.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/solib-svr4.c 2009-02-09 16:21:55.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/solib-svr4.c 2009-02-28 07:31:58.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/solib-svr4.c 2009-02-28 07:38:59.000000000 +0100
|
||||
@@ -45,6 +45,7 @@
|
||||
#include "exec.h"
|
||||
#include "auxv.h"
|
||||
@ -1116,11 +1116,11 @@ Index: gdb-6.8.50.20090209/gdb/solib-svr4.c
|
||||
+ add_info ("linkmap", info_linkmap_command,
|
||||
+ "Display the inferior's linkmap.");
|
||||
}
|
||||
Index: gdb-6.8.50.20090209/gdb/solib.c
|
||||
Index: gdb-6.8.50.20090226/gdb/solib.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/solib.c 2009-01-15 17:35:22.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/solib.c 2009-02-09 16:26:02.000000000 +0100
|
||||
@@ -80,6 +80,8 @@ set_solib_ops (struct gdbarch *gdbarch,
|
||||
--- gdb-6.8.50.20090226.orig/gdb/solib.c 2009-02-21 17:14:49.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/solib.c 2009-02-28 07:38:59.000000000 +0100
|
||||
@@ -81,6 +81,8 @@ set_solib_ops (struct gdbarch *gdbarch,
|
||||
|
||||
/* external data declarations */
|
||||
|
||||
@ -1129,7 +1129,7 @@ Index: gdb-6.8.50.20090209/gdb/solib.c
|
||||
/* FIXME: gdbarch needs to control this variable, or else every
|
||||
configuration needs to call set_solib_ops. */
|
||||
struct target_so_ops *current_target_so_ops;
|
||||
@@ -103,6 +105,8 @@ The search path for loading non-absolute
|
||||
@@ -104,6 +106,8 @@ The search path for loading non-absolute
|
||||
value);
|
||||
}
|
||||
|
||||
@ -1138,7 +1138,7 @@ Index: gdb-6.8.50.20090209/gdb/solib.c
|
||||
/*
|
||||
|
||||
GLOBAL FUNCTION
|
||||
@@ -425,10 +429,23 @@ free_so (struct so_list *so)
|
||||
@@ -426,10 +430,23 @@ free_so (struct so_list *so)
|
||||
|
||||
if (so->abfd)
|
||||
{
|
||||
@ -1166,7 +1166,7 @@ Index: gdb-6.8.50.20090209/gdb/solib.c
|
||||
}
|
||||
|
||||
if (bfd_filename)
|
||||
@@ -459,15 +461,40 @@ symbol_add_stub (void *arg)
|
||||
@@ -460,15 +477,40 @@ symbol_add_stub (void *arg)
|
||||
/* Have we already loaded this shared object? */
|
||||
ALL_OBJFILES (so->objfile)
|
||||
{
|
||||
@ -1210,7 +1210,7 @@ Index: gdb-6.8.50.20090209/gdb/solib.c
|
||||
free_section_addr_info (sap);
|
||||
|
||||
return (1);
|
||||
@@ -599,6 +626,10 @@ update_solib_list (int from_tty, struct
|
||||
@@ -600,6 +642,10 @@ update_solib_list (int from_tty, struct
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -1221,7 +1221,7 @@ Index: gdb-6.8.50.20090209/gdb/solib.c
|
||||
if (! strcmp (gdb->so_original_name, i->so_original_name))
|
||||
break;
|
||||
}
|
||||
@@ -653,28 +684,7 @@ update_solib_list (int from_tty, struct
|
||||
@@ -654,28 +700,7 @@ update_solib_list (int from_tty, struct
|
||||
/* Fill in the rest of each of the `struct so_list' nodes. */
|
||||
for (i = inferior; i; i = i->next)
|
||||
{
|
||||
@ -1251,7 +1251,7 @@ Index: gdb-6.8.50.20090209/gdb/solib.c
|
||||
|
||||
/* Notify any observer that the shared object has been
|
||||
loaded now that we've added it to GDB's tables. */
|
||||
@@ -770,6 +780,41 @@ solib_add (char *pattern, int from_tty,
|
||||
@@ -771,6 +796,41 @@ solib_add (char *pattern, int from_tty,
|
||||
}
|
||||
}
|
||||
|
||||
@ -1293,7 +1293,7 @@ Index: gdb-6.8.50.20090209/gdb/solib.c
|
||||
|
||||
/*
|
||||
|
||||
@@ -1087,4 +1132,12 @@ This takes precedence over the environme
|
||||
@@ -1089,4 +1149,12 @@ This takes precedence over the environme
|
||||
reload_shared_libraries,
|
||||
show_solib_search_path,
|
||||
&setlist, &showlist);
|
||||
@ -1306,10 +1306,10 @@ Index: gdb-6.8.50.20090209/gdb/solib.c
|
||||
+ NULL, NULL,
|
||||
+ &setdebuglist, &showdebuglist);
|
||||
}
|
||||
Index: gdb-6.8.50.20090209/gdb/solist.h
|
||||
Index: gdb-6.8.50.20090226/gdb/solist.h
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/solist.h 2009-02-04 09:42:11.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/solist.h 2009-02-09 16:21:55.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/solist.h 2009-02-04 09:42:11.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/solist.h 2009-02-28 07:38:59.000000000 +0100
|
||||
@@ -61,6 +61,8 @@ struct so_list
|
||||
bfd *abfd;
|
||||
char symbols_loaded; /* flag: symbols read in yet? */
|
||||
@ -1330,10 +1330,10 @@ Index: gdb-6.8.50.20090209/gdb/solist.h
|
||||
+extern int debug_solib;
|
||||
+
|
||||
#endif
|
||||
Index: gdb-6.8.50.20090209/gdb/symfile-mem.c
|
||||
Index: gdb-6.8.50.20090226/gdb/symfile-mem.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/symfile-mem.c 2009-02-09 15:49:25.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/symfile-mem.c 2009-02-09 16:21:55.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/symfile-mem.c 2009-02-28 07:22:09.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/symfile-mem.c 2009-02-28 07:38:59.000000000 +0100
|
||||
@@ -116,7 +116,7 @@ symbol_file_add_from_memory (struct bfd
|
||||
}
|
||||
|
||||
@ -1343,10 +1343,10 @@ Index: gdb-6.8.50.20090209/gdb/symfile-mem.c
|
||||
|
||||
/* This might change our ideas about frames already looked at. */
|
||||
reinit_frame_cache ();
|
||||
Index: gdb-6.8.50.20090209/gdb/symfile.c
|
||||
Index: gdb-6.8.50.20090226/gdb/symfile.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/symfile.c 2009-02-09 16:03:45.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/symfile.c 2009-02-09 16:21:55.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/symfile.c 2009-02-28 07:31:58.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/symfile.c 2009-02-28 07:39:59.000000000 +0100
|
||||
@@ -47,6 +47,7 @@
|
||||
#include "readline/readline.h"
|
||||
#include "gdb_assert.h"
|
||||
@ -1397,16 +1397,16 @@ Index: gdb-6.8.50.20090209/gdb/symfile.c
|
||||
|
||||
/* We're done reading the symbol file; finish off complaints. */
|
||||
clear_complaints (&symfile_complaints, 0, verbo);
|
||||
@@ -970,7 +975,7 @@ symbol_file_add_with_addrs_or_offsets (b
|
||||
@@ -980,7 +985,7 @@ symbol_file_add_with_addrs_or_offsets (b
|
||||
/* Give user a chance to burp if we'd be
|
||||
interactively wiping out any existing symbols. */
|
||||
|
||||
if ((have_full_symbols () || have_partial_symbols ())
|
||||
- && mainline
|
||||
+ && (mainline == 1)
|
||||
- if (mainline
|
||||
+ if (mainline == 1
|
||||
&& from_tty
|
||||
&& !query ("Load new symbol table from \"%s\"? ", name))
|
||||
error (_("Not confirmed."));
|
||||
@@ -1161,6 +1166,10 @@ symbol_file_clear (int from_tty)
|
||||
&& (have_full_symbols () || have_partial_symbols ())
|
||||
&& !query (_("Load new symbol table from \"%s\"? "), name))
|
||||
@@ -1175,6 +1180,10 @@ symbol_file_clear (int from_tty)
|
||||
symfile_objfile->name)
|
||||
: !query (_("Discard symbol table? "))))
|
||||
error (_("Not confirmed."));
|
||||
@ -1417,7 +1417,7 @@ Index: gdb-6.8.50.20090209/gdb/symfile.c
|
||||
free_all_objfiles ();
|
||||
|
||||
/* solib descriptors may have handles to objfiles. Since their
|
||||
@@ -3260,6 +3269,8 @@ reread_symbols (void)
|
||||
@@ -3275,6 +3284,8 @@ reread_symbols (void)
|
||||
/* Discard cleanups as symbol reading was successful. */
|
||||
discard_cleanups (old_cleanups);
|
||||
|
||||
@ -1426,7 +1426,7 @@ Index: gdb-6.8.50.20090209/gdb/symfile.c
|
||||
/* If the mtime has changed between the time we set new_modtime
|
||||
and now, we *want* this to be out of date, so don't call stat
|
||||
again now. */
|
||||
@@ -3629,6 +3640,7 @@ clear_symtab_users (void)
|
||||
@@ -3644,6 +3655,7 @@ clear_symtab_users (void)
|
||||
breakpoint_re_set ();
|
||||
set_default_breakpoint (0, 0, 0, 0);
|
||||
clear_pc_function_cache ();
|
||||
@ -1434,12 +1434,12 @@ Index: gdb-6.8.50.20090209/gdb/symfile.c
|
||||
observer_notify_new_objfile (NULL);
|
||||
|
||||
/* Clear globals which might have pointed into a removed objfile.
|
||||
Index: gdb-6.8.50.20090209/gdb/varobj.c
|
||||
Index: gdb-6.8.50.20090226/gdb/varobj.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/varobj.c 2009-02-05 18:28:21.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/varobj.c 2009-02-09 16:21:55.000000000 +0100
|
||||
@@ -1123,6 +1123,62 @@ install_new_value (struct varobj *var, s
|
||||
return changed;
|
||||
--- gdb-6.8.50.20090226.orig/gdb/varobj.c 2009-02-27 00:04:32.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/varobj.c 2009-02-28 07:41:30.000000000 +0100
|
||||
@@ -1505,6 +1505,61 @@ varobj_set_visualizer (struct varobj *va
|
||||
#endif
|
||||
}
|
||||
|
||||
+void
|
||||
@ -1496,27 +1496,26 @@ Index: gdb-6.8.50.20090209/gdb/varobj.c
|
||||
+ ("varobj_refresh: assertion failed - wrong tally of root vars (%d:%d)",
|
||||
+ rootcount, mycount);
|
||||
+}
|
||||
+
|
||||
+
|
||||
/* Update the values for a variable and its children. This is a
|
||||
two-pronged attack. First, re-parse the value for the root's
|
||||
expression to see if it's changed. Then go all the way
|
||||
Index: gdb-6.8.50.20090209/gdb/varobj.h
|
||||
Index: gdb-6.8.50.20090226/gdb/varobj.h
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/varobj.h 2009-01-03 06:57:54.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/varobj.h 2009-02-09 16:21:55.000000000 +0100
|
||||
@@ -141,4 +141,6 @@ extern int varobj_editable_p (struct var
|
||||
|
||||
extern int varobj_floating_p (struct varobj *var);
|
||||
--- gdb-6.8.50.20090226.orig/gdb/varobj.h 2009-02-27 00:04:32.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/varobj.h 2009-02-28 07:39:19.000000000 +0100
|
||||
@@ -163,4 +163,6 @@ varobj_clear_type_visualizers ();
|
||||
extern void
|
||||
varobj_set_visualizer (struct varobj *var, const char *visualizer);
|
||||
|
||||
+extern void varobj_refresh(void);
|
||||
+
|
||||
#endif /* VAROBJ_H */
|
||||
Index: gdb-6.8.50.20090209/gdb/target.h
|
||||
Index: gdb-6.8.50.20090226/gdb/target.h
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/target.h 2009-02-09 16:02:42.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/target.h 2009-02-09 16:21:55.000000000 +0100
|
||||
@@ -524,7 +524,7 @@ struct target_ops
|
||||
--- gdb-6.8.50.20090226.orig/gdb/target.h 2009-02-28 07:32:32.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/target.h 2009-02-28 07:38:59.000000000 +0100
|
||||
@@ -542,7 +542,7 @@ struct target_ops
|
||||
Return -1 if there is insufficient buffer for a whole entry.
|
||||
Return 1 if an entry was read into *TYPEP and *VALP. */
|
||||
int (*to_auxv_parse) (struct target_ops *ops, gdb_byte **readptr,
|
||||
|
@ -11,11 +11,11 @@
|
||||
|
||||
* gdb.texinfo (File Options): Document --readnever.
|
||||
|
||||
Index: gdb-6.8.50.20081128/gdb/doc/gdb.texinfo
|
||||
Index: gdb-6.8.50.20090226/gdb/doc/gdb.texinfo
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20081128.orig/gdb/doc/gdb.texinfo 2008-11-27 10:23:01.000000000 +0100
|
||||
+++ gdb-6.8.50.20081128/gdb/doc/gdb.texinfo 2008-12-02 19:07:35.000000000 +0100
|
||||
@@ -994,6 +994,12 @@ Read each symbol file's entire symbol ta
|
||||
--- gdb-6.8.50.20090226.orig/gdb/doc/gdb.texinfo 2009-02-27 00:04:32.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/doc/gdb.texinfo 2009-02-28 07:19:50.000000000 +0100
|
||||
@@ -988,6 +988,12 @@ Read each symbol file's entire symbol ta
|
||||
the default, which is to read it incrementally as it is needed.
|
||||
This makes startup slower, but makes future operations faster.
|
||||
|
||||
@ -28,11 +28,11 @@ Index: gdb-6.8.50.20081128/gdb/doc/gdb.texinfo
|
||||
@end table
|
||||
|
||||
@node Mode Options
|
||||
Index: gdb-6.8.50.20081128/gdb/main.c
|
||||
Index: gdb-6.8.50.20090226/gdb/main.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20081128.orig/gdb/main.c 2008-12-02 18:07:21.000000000 +0100
|
||||
+++ gdb-6.8.50.20081128/gdb/main.c 2008-12-02 19:07:35.000000000 +0100
|
||||
@@ -295,6 +295,7 @@ captured_main (void *data)
|
||||
--- gdb-6.8.50.20090226.orig/gdb/main.c 2009-02-28 07:15:57.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/main.c 2009-02-28 07:20:20.000000000 +0100
|
||||
@@ -427,6 +427,7 @@ captured_main (void *data)
|
||||
{"xdb", no_argument, &xdb_commands, 1},
|
||||
{"dbx", no_argument, &dbx_commands, 1},
|
||||
{"readnow", no_argument, &readnow_symbol_files, 1},
|
||||
@ -40,18 +40,18 @@ Index: gdb-6.8.50.20081128/gdb/main.c
|
||||
{"r", no_argument, &readnow_symbol_files, 1},
|
||||
{"quiet", no_argument, &quiet, 1},
|
||||
{"q", no_argument, &quiet, 1},
|
||||
@@ -895,6 +896,7 @@ Options:\n\n\
|
||||
fputs_unfiltered (_(" file.\n\
|
||||
@@ -1070,6 +1071,7 @@ Options:\n\n\
|
||||
fputs_unfiltered (_("\
|
||||
--quiet Do not print version number on startup.\n\
|
||||
--readnow Fully read symbol files on first access.\n\
|
||||
+ --readnever Do not read symbol files.\n\
|
||||
"), stream);
|
||||
fputs_unfiltered (_("\
|
||||
--se=FILE Use FILE as symbol file and executable file.\n\
|
||||
Index: gdb-6.8.50.20081128/gdb/symfile.c
|
||||
Index: gdb-6.8.50.20090226/gdb/symfile.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20081128.orig/gdb/symfile.c 2008-12-01 16:34:36.000000000 +0100
|
||||
+++ gdb-6.8.50.20081128/gdb/symfile.c 2008-12-02 19:07:35.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/symfile.c 2009-02-27 07:51:56.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/symfile.c 2009-02-28 07:19:50.000000000 +0100
|
||||
@@ -77,6 +77,7 @@ static void clear_symtab_users_cleanup (
|
||||
|
||||
/* Global variables owned by this file */
|
||||
@ -60,32 +60,32 @@ Index: gdb-6.8.50.20081128/gdb/symfile.c
|
||||
|
||||
/* External variables and functions referenced. */
|
||||
|
||||
Index: gdb-6.8.50.20081128/gdb/dwarf2read.c
|
||||
Index: gdb-6.8.50.20090226/gdb/dwarf2read.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20081128.orig/gdb/dwarf2read.c 2008-11-15 19:49:50.000000000 +0100
|
||||
+++ gdb-6.8.50.20081128/gdb/dwarf2read.c 2008-12-02 19:08:53.000000000 +0100
|
||||
@@ -46,6 +46,7 @@
|
||||
#include "command.h"
|
||||
--- gdb-6.8.50.20090226.orig/gdb/dwarf2read.c 2009-02-27 00:04:32.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/dwarf2read.c 2009-02-28 07:21:27.000000000 +0100
|
||||
@@ -48,6 +48,7 @@
|
||||
#include "gdbcmd.h"
|
||||
#include "addrmap.h"
|
||||
#include "f-lang.h"
|
||||
+#include "top.h"
|
||||
|
||||
#include <fcntl.h>
|
||||
#include "gdb_string.h"
|
||||
@@ -1122,7 +1123,8 @@ dwarf2_has_info (struct objfile *objfile
|
||||
dwarf_loc_section = 0;
|
||||
@@ -1169,7 +1170,8 @@ dwarf2_has_info (struct objfile *objfile
|
||||
dwarf_aranges_section = 0;
|
||||
|
||||
bfd_map_over_sections (objfile->obfd, dwarf2_locate_sections, NULL);
|
||||
bfd_map_over_sections (objfile->obfd, dwarf2_locate_sections, &update_sizes);
|
||||
- return (dwarf_info_section != NULL && dwarf_abbrev_section != NULL);
|
||||
+ return !readnever_symbol_files
|
||||
+ && dwarf_info_section != NULL && dwarf_abbrev_section != NULL;
|
||||
}
|
||||
|
||||
/* When loading sections, we can either look for ".<name>", or for
|
||||
Index: gdb-6.8.50.20081128/gdb/top.h
|
||||
Index: gdb-6.8.50.20090226/gdb/top.h
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20081128.orig/gdb/top.h 2008-01-01 23:53:13.000000000 +0100
|
||||
+++ gdb-6.8.50.20081128/gdb/top.h 2008-12-02 19:07:35.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/top.h 2009-01-03 06:57:53.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/top.h 2009-02-28 07:19:50.000000000 +0100
|
||||
@@ -59,6 +59,7 @@ extern void set_prompt (char *);
|
||||
|
||||
/* From random places. */
|
||||
|
@ -19,10 +19,10 @@ Proposed upstream but never committed upstream.
|
||||
(source_command): Update documentation. Check permissions if
|
||||
FROM_TTY is -1.
|
||||
|
||||
Index: gdb-6.8.50.20090209/gdb/cli/cli-cmds.c
|
||||
Index: gdb-6.8.50.20090226/gdb/cli/cli-cmds.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/cli/cli-cmds.c 2009-01-14 21:40:07.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/cli/cli-cmds.c 2009-02-09 15:45:39.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/cli/cli-cmds.c 2009-02-27 00:04:32.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/cli/cli-cmds.c 2009-02-28 07:17:49.000000000 +0100
|
||||
@@ -36,6 +36,7 @@
|
||||
#include "objfiles.h"
|
||||
#include "source.h"
|
||||
@ -31,7 +31,7 @@ Index: gdb-6.8.50.20090209/gdb/cli/cli-cmds.c
|
||||
|
||||
#include "ui-out.h"
|
||||
|
||||
@@ -462,7 +463,7 @@ source_script (char *file, int from_tty)
|
||||
@@ -466,7 +467,7 @@ source_script (char *file, int from_tty)
|
||||
|
||||
if (fd == -1)
|
||||
{
|
||||
@ -40,7 +40,7 @@ Index: gdb-6.8.50.20090209/gdb/cli/cli-cmds.c
|
||||
perror_with_name (file);
|
||||
else
|
||||
{
|
||||
@@ -471,9 +472,33 @@ source_script (char *file, int from_tty)
|
||||
@@ -475,6 +476,29 @@ source_script (char *file, int from_tty)
|
||||
}
|
||||
}
|
||||
|
||||
@ -67,17 +67,21 @@ Index: gdb-6.8.50.20090209/gdb/cli/cli-cmds.c
|
||||
+ }
|
||||
+#endif
|
||||
+
|
||||
stream = fdopen (fd, FOPEN_RT);
|
||||
script_from_file (stream, file);
|
||||
is_python = source_python;
|
||||
if (strlen (file) > 3 && !strcmp (&file[strlen (file) - 3], ".py"))
|
||||
is_python = 1;
|
||||
@@ -486,6 +510,7 @@ source_script (char *file, int from_tty)
|
||||
else
|
||||
script_from_file (stream, file);
|
||||
|
||||
+ /* FILE gets freed by do_cleanups (old_cleanups). */
|
||||
do_cleanups (old_cleanups);
|
||||
}
|
||||
|
||||
Index: gdb-6.8.50.20090209/gdb/testsuite/gdb.base/gdbinit.exp
|
||||
Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.base/gdbinit.exp
|
||||
===================================================================
|
||||
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
||||
+++ gdb-6.8.50.20090209/gdb/testsuite/gdb.base/gdbinit.exp 2009-02-09 15:45:39.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/testsuite/gdb.base/gdbinit.exp 2009-02-28 07:15:57.000000000 +0100
|
||||
@@ -0,0 +1,98 @@
|
||||
+# Copyright 2005
|
||||
+# Free Software Foundation, Inc.
|
||||
@ -177,17 +181,17 @@ Index: gdb-6.8.50.20090209/gdb/testsuite/gdb.base/gdbinit.exp
|
||||
+}
|
||||
+
|
||||
+remote_exec build "rm .gdbinit"
|
||||
Index: gdb-6.8.50.20090209/gdb/testsuite/gdb.base/gdbinit.sample
|
||||
Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.base/gdbinit.sample
|
||||
===================================================================
|
||||
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
||||
+++ gdb-6.8.50.20090209/gdb/testsuite/gdb.base/gdbinit.sample 2009-02-09 15:45:39.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/testsuite/gdb.base/gdbinit.sample 2009-02-28 07:15:57.000000000 +0100
|
||||
@@ -0,0 +1 @@
|
||||
+echo "\nin gdbinit"
|
||||
Index: gdb-6.8.50.20090209/gdb/main.c
|
||||
Index: gdb-6.8.50.20090226/gdb/main.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/main.c 2009-01-28 16:01:00.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/main.c 2009-02-09 15:46:33.000000000 +0100
|
||||
@@ -783,7 +783,7 @@ Excess command line arguments ignored. (
|
||||
--- gdb-6.8.50.20090226.orig/gdb/main.c 2009-02-27 00:04:32.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/main.c 2009-02-28 07:15:57.000000000 +0100
|
||||
@@ -855,7 +855,7 @@ Excess command line arguments ignored. (
|
||||
debugging or what directory you are in. */
|
||||
|
||||
if (home_gdbinit && !inhibit_gdbinit)
|
||||
@ -196,7 +200,7 @@ Index: gdb-6.8.50.20090209/gdb/main.c
|
||||
|
||||
/* Now perform all the actions indicated by the arguments. */
|
||||
if (cdarg != NULL)
|
||||
@@ -852,7 +852,7 @@ Can't attach to process and specify a co
|
||||
@@ -924,7 +924,7 @@ Can't attach to process and specify a co
|
||||
/* Read the .gdbinit file in the current directory, *if* it isn't
|
||||
the same as the $HOME/.gdbinit file (it should exist, also). */
|
||||
if (local_gdbinit && !inhibit_gdbinit)
|
||||
|
@ -6,9 +6,11 @@
|
||||
* gdb.gdb/xfullpath.exp: Ditto.
|
||||
* gdb.gdb/observer.exp: Ditto.
|
||||
|
||||
--- gdb-6.3/gdb/testsuite/gdb.gdb/complaints.exp.fix Mon Jan 10 19:21:20 2005
|
||||
+++ gdb-6.3/gdb/testsuite/gdb.gdb/complaints.exp Mon Jan 10 19:24:38 2005
|
||||
@@ -304,13 +304,13 @@ proc find_gdb { arg } {
|
||||
Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.gdb/complaints.exp
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090226.orig/gdb/testsuite/gdb.gdb/complaints.exp 2009-01-03 06:58:04.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/testsuite/gdb.gdb/complaints.exp 2009-02-26 22:10:48.000000000 +0100
|
||||
@@ -302,13 +302,13 @@ proc find_gdb { arg } {
|
||||
set GDB_FULLPATH [find_gdb $GDB]
|
||||
|
||||
# Remove any old copy lying around.
|
||||
@ -25,15 +27,17 @@
|
||||
if {$setup_result <0} then {
|
||||
return -1
|
||||
}
|
||||
@@ -321,4 +321,4 @@ test_short_complaints
|
||||
@@ -319,4 +319,4 @@ test_short_complaints
|
||||
test_empty_complaints
|
||||
|
||||
gdb_exit;
|
||||
-catch "remote_file host delete $file";
|
||||
+#catch "remote_file host delete $file";
|
||||
--- gdb-6.3/gdb/testsuite/gdb.gdb/observer.exp.fix Mon Jan 10 19:21:27 2005
|
||||
+++ gdb-6.3/gdb/testsuite/gdb.gdb/observer.exp Mon Jan 10 19:24:38 2005
|
||||
@@ -259,13 +259,13 @@ proc find_gdb { arg } {
|
||||
Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.gdb/observer.exp
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090226.orig/gdb/testsuite/gdb.gdb/observer.exp 2009-02-17 20:52:27.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/testsuite/gdb.gdb/observer.exp 2009-02-26 22:11:40.000000000 +0100
|
||||
@@ -258,13 +258,13 @@ proc find_gdb { arg } {
|
||||
set GDB_FULLPATH [find_gdb $GDB]
|
||||
|
||||
# Remove any old copy lying around.
|
||||
@ -42,18 +46,20 @@
|
||||
|
||||
gdb_start
|
||||
-set file [remote_download host $GDB_FULLPATH x$tool]
|
||||
-set result [test_observer_normal_stop $file];
|
||||
-set result [test_observer $file];
|
||||
+#set file [remote_download host $GDB_FULLPATH x$tool]
|
||||
+set result [test_observer_normal_stop $GDB_FULLPATH];
|
||||
+set result [test_observer $GDB_FULLPATH];
|
||||
gdb_exit;
|
||||
-catch "remote_file host delete $file";
|
||||
+#catch "remote_file host delete $file";
|
||||
|
||||
if {$result <0} then {
|
||||
warning "Couldn't test self"
|
||||
--- gdb-6.3/gdb/testsuite/gdb.gdb/selftest.exp.fix Mon Jan 10 19:21:33 2005
|
||||
+++ gdb-6.3/gdb/testsuite/gdb.gdb/selftest.exp Mon Jan 10 19:24:38 2005
|
||||
@@ -512,13 +512,13 @@ proc find_gdb { arg } {
|
||||
Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.gdb/selftest.exp
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090226.orig/gdb/testsuite/gdb.gdb/selftest.exp 2009-02-26 22:09:59.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/testsuite/gdb.gdb/selftest.exp 2009-02-26 22:10:48.000000000 +0100
|
||||
@@ -551,13 +551,13 @@ proc find_gdb { arg } {
|
||||
set GDB_FULLPATH [find_gdb $GDB]
|
||||
|
||||
# Remove any old copy lying around.
|
||||
@ -71,9 +77,11 @@
|
||||
|
||||
if {$result <0} then {
|
||||
warning "Couldn't test self"
|
||||
--- gdb-6.3/gdb/testsuite/gdb.gdb/xfullpath.exp.fix Mon Jan 10 19:21:40 2005
|
||||
+++ gdb-6.3/gdb/testsuite/gdb.gdb/xfullpath.exp Mon Jan 10 19:24:38 2005
|
||||
@@ -181,13 +181,13 @@ proc find_gdb { arg } {
|
||||
Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.gdb/xfullpath.exp
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090226.orig/gdb/testsuite/gdb.gdb/xfullpath.exp 2009-01-03 06:58:04.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/testsuite/gdb.gdb/xfullpath.exp 2009-02-26 22:10:48.000000000 +0100
|
||||
@@ -179,13 +179,13 @@ proc find_gdb { arg } {
|
||||
set GDB_FULLPATH [find_gdb $GDB]
|
||||
|
||||
# Remove any old copy lying around.
|
||||
|
@ -30,22 +30,20 @@ glibc-debuginfo-2.7-2.x86_64: /usr/lib/debug/lib64/libc.so.6.debug:
|
||||
<81a2> DW_AT_name : (indirect string, offset: 0x280e): __errno_location
|
||||
<81a8> DW_AT_MIPS_linkage_name: (indirect string, offset: 0x2808): *__GI___errno_location
|
||||
|
||||
Index: gdb-6.8.50.20090209/gdb/dwarf2read.c
|
||||
Index: gdb-6.8.50.20090226/gdb/dwarf2read.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/dwarf2read.c 2009-02-09 15:50:59.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/dwarf2read.c 2009-02-09 15:51:57.000000000 +0100
|
||||
@@ -6031,8 +6031,8 @@ read_partial_die (struct partial_die_inf
|
||||
--- gdb-6.8.50.20090226.orig/gdb/dwarf2read.c 2009-02-28 07:22:44.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/dwarf2read.c 2009-02-28 07:31:33.000000000 +0100
|
||||
@@ -6376,6 +6376,8 @@ read_partial_die (struct partial_die_inf
|
||||
switch (attr.name)
|
||||
{
|
||||
case DW_AT_name:
|
||||
|
||||
- /* Prefer DW_AT_MIPS_linkage_name over DW_AT_name. */
|
||||
- if (part_die->name == NULL)
|
||||
+ /* Prefer DW_AT_MIPS_linkage_name over DW_AT_name for non-C. */
|
||||
+ if (cu->language == language_c || part_die->name == NULL)
|
||||
part_die->name = DW_STRING (&attr);
|
||||
break;
|
||||
case DW_AT_comp_dir:
|
||||
@@ -6040,7 +6040,9 @@ read_partial_die (struct partial_die_inf
|
||||
+if (cu->language == language_c || part_die->name == NULL)
|
||||
switch (part_die->tag)
|
||||
{
|
||||
case DW_TAG_compile_unit:
|
||||
@@ -6399,7 +6401,9 @@ read_partial_die (struct partial_die_inf
|
||||
part_die->dirname = DW_STRING (&attr);
|
||||
break;
|
||||
case DW_AT_MIPS_linkage_name:
|
||||
@ -56,7 +54,7 @@ Index: gdb-6.8.50.20090209/gdb/dwarf2read.c
|
||||
break;
|
||||
case DW_AT_low_pc:
|
||||
has_low_pc_attr = 1;
|
||||
@@ -8278,9 +8280,13 @@ dwarf2_linkage_name (struct die_info *di
|
||||
@@ -8650,9 +8654,13 @@ dwarf2_linkage_name (struct die_info *di
|
||||
{
|
||||
struct attribute *attr;
|
||||
|
||||
@ -70,13 +68,13 @@ Index: gdb-6.8.50.20090209/gdb/dwarf2read.c
|
||||
+ if (attr && DW_STRING (attr))
|
||||
+ return DW_STRING (attr);
|
||||
+ }
|
||||
attr = dwarf2_attr (die, DW_AT_name, cu);
|
||||
if (attr && DW_STRING (attr))
|
||||
return DW_STRING (attr);
|
||||
Index: gdb-6.8.50.20090209/gdb/gdbtypes.c
|
||||
return dwarf2_name (die, cu);
|
||||
}
|
||||
|
||||
Index: gdb-6.8.50.20090226/gdb/gdbtypes.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/gdbtypes.c 2009-02-09 15:38:54.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/gdbtypes.c 2009-02-09 15:56:14.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/gdbtypes.c 2009-02-27 00:04:32.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/gdbtypes.c 2009-02-28 07:22:55.000000000 +0100
|
||||
@@ -3643,6 +3643,8 @@ gdbtypes_post_init (struct gdbarch *gdba
|
||||
init_type (TYPE_CODE_INT,
|
||||
gdbarch_int_bit (gdbarch) / TARGET_CHAR_BIT,
|
||||
@ -99,11 +97,11 @@ Index: gdb-6.8.50.20090209/gdb/gdbtypes.c
|
||||
builtin_type->nodebug_data_symbol =
|
||||
init_type (TYPE_CODE_INT,
|
||||
gdbarch_int_bit (gdbarch) / HOST_CHAR_BIT, 0,
|
||||
Index: gdb-6.8.50.20090209/gdb/gdbtypes.h
|
||||
Index: gdb-6.8.50.20090226/gdb/gdbtypes.h
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/gdbtypes.h 2009-02-09 15:38:54.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/gdbtypes.h 2009-02-09 15:51:57.000000000 +0100
|
||||
@@ -1050,6 +1050,7 @@ struct builtin_type
|
||||
--- gdb-6.8.50.20090226.orig/gdb/gdbtypes.h 2009-02-27 00:04:32.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/gdbtypes.h 2009-02-28 07:22:55.000000000 +0100
|
||||
@@ -1053,6 +1053,7 @@ struct builtin_type
|
||||
|
||||
/* Types used for symbols with no debug information. */
|
||||
struct type *nodebug_text_symbol;
|
||||
@ -111,7 +109,7 @@ Index: gdb-6.8.50.20090209/gdb/gdbtypes.h
|
||||
struct type *nodebug_data_symbol;
|
||||
struct type *nodebug_unknown_symbol;
|
||||
struct type *nodebug_tls_symbol;
|
||||
@@ -1062,6 +1063,7 @@ struct builtin_type
|
||||
@@ -1065,6 +1066,7 @@ struct builtin_type
|
||||
struct type *builtin_char;
|
||||
struct type *builtin_short;
|
||||
struct type *builtin_int;
|
||||
@ -119,11 +117,11 @@ Index: gdb-6.8.50.20090209/gdb/gdbtypes.h
|
||||
struct type *builtin_long;
|
||||
struct type *builtin_signed_char;
|
||||
struct type *builtin_unsigned_char;
|
||||
Index: gdb-6.8.50.20090209/gdb/parse.c
|
||||
Index: gdb-6.8.50.20090226/gdb/parse.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/parse.c 2009-01-03 06:57:52.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/parse.c 2009-02-09 15:51:57.000000000 +0100
|
||||
@@ -449,7 +449,12 @@ write_exp_msymbol (struct minimal_symbol
|
||||
--- gdb-6.8.50.20090226.orig/gdb/parse.c 2009-02-27 00:04:32.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/parse.c 2009-02-28 07:22:55.000000000 +0100
|
||||
@@ -508,7 +508,12 @@ write_exp_msymbol (struct minimal_symbol
|
||||
case mst_text:
|
||||
case mst_file_text:
|
||||
case mst_solib_trampoline:
|
||||
@ -137,11 +135,11 @@ Index: gdb-6.8.50.20090209/gdb/parse.c
|
||||
break;
|
||||
|
||||
case mst_data:
|
||||
Index: gdb-6.8.50.20090209/gdb/target.c
|
||||
Index: gdb-6.8.50.20090226/gdb/target.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/target.c 2009-02-09 15:50:39.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/target.c 2009-02-09 15:51:57.000000000 +0100
|
||||
@@ -842,6 +842,25 @@ pop_all_targets (int quitting)
|
||||
--- gdb-6.8.50.20090226.orig/gdb/target.c 2009-02-28 07:22:09.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/target.c 2009-02-28 07:22:55.000000000 +0100
|
||||
@@ -827,6 +827,25 @@ pop_all_targets (int quitting)
|
||||
pop_all_targets_above (dummy_stratum, quitting);
|
||||
}
|
||||
|
||||
@ -167,7 +165,7 @@ Index: gdb-6.8.50.20090209/gdb/target.c
|
||||
/* Using the objfile specified in OBJFILE, find the address for the
|
||||
current thread's thread-local storage with offset OFFSET. */
|
||||
CORE_ADDR
|
||||
@@ -932,7 +951,28 @@ target_translate_tls_address (struct obj
|
||||
@@ -917,7 +936,28 @@ target_translate_tls_address (struct obj
|
||||
/* It wouldn't be wrong here to try a gdbarch method, too; finding
|
||||
TLS is an ABI-specific thing. But we don't do that yet. */
|
||||
else
|
||||
@ -197,10 +195,10 @@ Index: gdb-6.8.50.20090209/gdb/target.c
|
||||
|
||||
return addr;
|
||||
}
|
||||
Index: gdb-6.8.50.20090209/gdb/testsuite/gdb.dwarf2/dw2-errno.c
|
||||
Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.dwarf2/dw2-errno.c
|
||||
===================================================================
|
||||
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
||||
+++ gdb-6.8.50.20090209/gdb/testsuite/gdb.dwarf2/dw2-errno.c 2009-02-09 15:51:57.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/testsuite/gdb.dwarf2/dw2-errno.c 2009-02-28 07:22:55.000000000 +0100
|
||||
@@ -0,0 +1,28 @@
|
||||
+/* This testcase is part of GDB, the GNU debugger.
|
||||
+
|
||||
@ -230,10 +228,10 @@ Index: gdb-6.8.50.20090209/gdb/testsuite/gdb.dwarf2/dw2-errno.c
|
||||
+
|
||||
+ return 0; /* breakpoint */
|
||||
+}
|
||||
Index: gdb-6.8.50.20090209/gdb/testsuite/gdb.dwarf2/dw2-errno.exp
|
||||
Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.dwarf2/dw2-errno.exp
|
||||
===================================================================
|
||||
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
||||
+++ gdb-6.8.50.20090209/gdb/testsuite/gdb.dwarf2/dw2-errno.exp 2009-02-09 15:51:57.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/testsuite/gdb.dwarf2/dw2-errno.exp 2009-02-28 07:22:55.000000000 +0100
|
||||
@@ -0,0 +1,67 @@
|
||||
+# Copyright 2007 Free Software Foundation, Inc.
|
||||
+
|
||||
|
@ -47,11 +47,11 @@
|
||||
Fix found by Denys Vlasenko <dvlasenk@redhat.com>.
|
||||
Fixes Red Hat Bug 459414.
|
||||
|
||||
Index: gdb-6.8.50.20081128/gdb/Makefile.in
|
||||
Index: gdb-6.8.50.20090226/gdb/Makefile.in
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20081128.orig/gdb/Makefile.in 2008-12-04 10:33:25.000000000 +0100
|
||||
+++ gdb-6.8.50.20081128/gdb/Makefile.in 2008-12-04 10:34:31.000000000 +0100
|
||||
@@ -363,7 +363,7 @@ CONFIG_UNINSTALL = @CONFIG_UNINSTALL@
|
||||
--- gdb-6.8.50.20090226.orig/gdb/Makefile.in 2009-02-28 07:31:50.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/Makefile.in 2009-02-28 07:31:58.000000000 +0100
|
||||
@@ -392,7 +392,7 @@ CONFIG_UNINSTALL = @CONFIG_UNINSTALL@
|
||||
# your system doesn't have fcntl.h in /usr/include (which is where it
|
||||
# should be according to Posix).
|
||||
DEFS = @DEFS@
|
||||
@ -60,7 +60,7 @@ Index: gdb-6.8.50.20081128/gdb/Makefile.in
|
||||
|
||||
# MH_CFLAGS, if defined, has host-dependent CFLAGS from the config directory.
|
||||
GLOBAL_CFLAGS = $(MH_CFLAGS)
|
||||
@@ -415,7 +415,7 @@ INSTALLED_LIBS=-lbfd -lreadline -lopcode
|
||||
@@ -445,7 +445,7 @@ INSTALLED_LIBS=-lbfd -lreadline -lopcode
|
||||
CLIBS = $(SIM) $(READLINE) $(OPCODES) $(BFD) $(INTL) $(LIBIBERTY) $(LIBDECNUMBER) \
|
||||
$(XM_CLIBS) $(NAT_CLIBS) $(GDBTKLIBS) @LIBS@ \
|
||||
$(LIBICONV) $(LIBEXPAT) \
|
||||
@ -69,10 +69,10 @@ Index: gdb-6.8.50.20081128/gdb/Makefile.in
|
||||
CDEPS = $(XM_CDEPS) $(NAT_CDEPS) $(SIM) $(BFD) $(READLINE_DEPS) \
|
||||
$(OPCODES) $(INTL_DEPS) $(LIBIBERTY) $(CONFIG_DEPS) $(LIBGNU)
|
||||
|
||||
Index: gdb-6.8.50.20081128/gdb/corelow.c
|
||||
Index: gdb-6.8.50.20090226/gdb/corelow.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20081128.orig/gdb/corelow.c 2008-11-09 12:27:17.000000000 +0100
|
||||
+++ gdb-6.8.50.20081128/gdb/corelow.c 2008-12-04 10:34:31.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/corelow.c 2009-02-23 01:03:48.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/corelow.c 2009-02-28 07:32:23.000000000 +0100
|
||||
@@ -45,6 +45,10 @@
|
||||
#include "exceptions.h"
|
||||
#include "solib.h"
|
||||
@ -84,7 +84,7 @@ Index: gdb-6.8.50.20081128/gdb/corelow.c
|
||||
|
||||
|
||||
#ifndef O_LARGEFILE
|
||||
@@ -262,6 +266,56 @@ add_to_thread_list (bfd *abfd, asection
|
||||
@@ -267,6 +271,56 @@ add_to_thread_list (bfd *abfd, asection
|
||||
inferior_ptid = ptid; /* Yes, make it current */
|
||||
}
|
||||
|
||||
@ -141,7 +141,7 @@ Index: gdb-6.8.50.20081128/gdb/corelow.c
|
||||
/* This routine opens and sets up the core file bfd. */
|
||||
|
||||
static void
|
||||
@@ -358,6 +412,12 @@ core_open (char *filename, int from_tty)
|
||||
@@ -363,6 +417,12 @@ core_open (char *filename, int from_tty)
|
||||
push_target (&core_ops);
|
||||
discard_cleanups (old_chain);
|
||||
|
||||
@ -154,10 +154,10 @@ Index: gdb-6.8.50.20081128/gdb/corelow.c
|
||||
add_inferior_silent (corelow_pid);
|
||||
|
||||
/* Do this before acknowledging the inferior, so if
|
||||
@@ -737,4 +797,11 @@ _initialize_corelow (void)
|
||||
@@ -751,4 +811,11 @@ _initialize_corelow (void)
|
||||
init_core_ops ();
|
||||
|
||||
if (!coreops_suppress_target)
|
||||
add_target (&core_ops);
|
||||
add_target (&core_ops);
|
||||
+
|
||||
+ add_setshow_boolean_cmd ("build-id-core-loads", class_files,
|
||||
+ &build_id_core_loads, _("\
|
||||
@ -166,11 +166,11 @@ Index: gdb-6.8.50.20081128/gdb/corelow.c
|
||||
+ NULL, NULL, NULL,
|
||||
+ &setlist, &showlist);
|
||||
}
|
||||
Index: gdb-6.8.50.20081128/gdb/doc/gdb.texinfo
|
||||
Index: gdb-6.8.50.20090226/gdb/doc/gdb.texinfo
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20081128.orig/gdb/doc/gdb.texinfo 2008-12-04 10:34:04.000000000 +0100
|
||||
+++ gdb-6.8.50.20081128/gdb/doc/gdb.texinfo 2008-12-04 10:34:31.000000000 +0100
|
||||
@@ -13138,6 +13138,27 @@ information files.
|
||||
--- gdb-6.8.50.20090226.orig/gdb/doc/gdb.texinfo 2009-02-28 07:31:50.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/doc/gdb.texinfo 2009-02-28 07:31:58.000000000 +0100
|
||||
@@ -13294,6 +13294,27 @@ information files.
|
||||
|
||||
@end table
|
||||
|
||||
@ -198,10 +198,10 @@ Index: gdb-6.8.50.20081128/gdb/doc/gdb.texinfo
|
||||
@cindex @code{.gnu_debuglink} sections
|
||||
@cindex debug link sections
|
||||
A debug link is a special section of the executable file named
|
||||
Index: gdb-6.8.50.20081128/gdb/event-top.c
|
||||
Index: gdb-6.8.50.20090226/gdb/event-top.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20081128.orig/gdb/event-top.c 2008-09-08 23:46:21.000000000 +0200
|
||||
+++ gdb-6.8.50.20081128/gdb/event-top.c 2008-12-04 10:34:31.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/event-top.c 2009-01-09 12:00:00.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/event-top.c 2009-02-28 07:31:58.000000000 +0100
|
||||
@@ -33,6 +33,7 @@
|
||||
#include "cli/cli-script.h" /* for reset_command_nest_depth */
|
||||
#include "main.h"
|
||||
@ -228,11 +228,11 @@ Index: gdb-6.8.50.20081128/gdb/event-top.c
|
||||
/* Each interpreter has its own rules on displaying the command
|
||||
prompt. */
|
||||
if (!current_interp_display_prompt_p ())
|
||||
Index: gdb-6.8.50.20081128/gdb/solib-svr4.c
|
||||
Index: gdb-6.8.50.20090226/gdb/solib-svr4.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20081128.orig/gdb/solib-svr4.c 2008-12-04 01:34:17.000000000 +0100
|
||||
+++ gdb-6.8.50.20081128/gdb/solib-svr4.c 2008-12-04 10:34:31.000000000 +0100
|
||||
@@ -999,9 +999,33 @@ svr4_current_sos (void)
|
||||
--- gdb-6.8.50.20090226.orig/gdb/solib-svr4.c 2009-02-27 00:04:34.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/solib-svr4.c 2009-02-28 07:31:58.000000000 +0100
|
||||
@@ -1000,9 +1000,33 @@ svr4_current_sos (void)
|
||||
safe_strerror (errcode));
|
||||
else
|
||||
{
|
||||
@ -269,10 +269,10 @@ Index: gdb-6.8.50.20081128/gdb/solib-svr4.c
|
||||
}
|
||||
xfree (buffer);
|
||||
|
||||
Index: gdb-6.8.50.20081128/gdb/symfile.c
|
||||
Index: gdb-6.8.50.20090226/gdb/symfile.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20081128.orig/gdb/symfile.c 2008-12-04 10:26:12.000000000 +0100
|
||||
+++ gdb-6.8.50.20081128/gdb/symfile.c 2008-12-04 10:36:18.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/symfile.c 2009-02-28 07:22:43.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/symfile.c 2009-02-28 07:31:58.000000000 +0100
|
||||
@@ -54,6 +54,8 @@
|
||||
#include "elf-bfd.h"
|
||||
#include "solib.h"
|
||||
@ -290,7 +290,7 @@ Index: gdb-6.8.50.20081128/gdb/symfile.c
|
||||
|
||||
|
||||
int (*deprecated_ui_load_progress_hook) (const char *section, unsigned long num);
|
||||
@@ -1168,16 +1171,65 @@ symbol_file_clear (int from_tty)
|
||||
@@ -1185,16 +1188,65 @@ symbol_file_clear (int from_tty)
|
||||
printf_unfiltered (_("No symbol file now.\n"));
|
||||
}
|
||||
|
||||
@ -358,7 +358,7 @@ Index: gdb-6.8.50.20081128/gdb/symfile.c
|
||||
{
|
||||
struct build_id *retval;
|
||||
|
||||
@@ -1193,6 +1245,348 @@ build_id_bfd_get (bfd *abfd)
|
||||
@@ -1210,6 +1262,348 @@ build_id_bfd_get (bfd *abfd)
|
||||
return retval;
|
||||
}
|
||||
|
||||
@ -707,7 +707,7 @@ Index: gdb-6.8.50.20081128/gdb/symfile.c
|
||||
/* Return if FILENAME has NT_GNU_BUILD_ID matching the CHECK value. */
|
||||
|
||||
static int
|
||||
@@ -1210,7 +1604,7 @@ build_id_verify (const char *filename, s
|
||||
@@ -1227,7 +1621,7 @@ build_id_verify (const char *filename, s
|
||||
if (abfd == NULL)
|
||||
return 0;
|
||||
|
||||
@ -716,7 +716,7 @@ Index: gdb-6.8.50.20081128/gdb/symfile.c
|
||||
|
||||
if (found == NULL)
|
||||
warning (_("File \"%s\" has no build-id, file skipped"), filename);
|
||||
@@ -1229,8 +1623,9 @@ build_id_verify (const char *filename, s
|
||||
@@ -1246,8 +1640,9 @@ build_id_verify (const char *filename, s
|
||||
return retval;
|
||||
}
|
||||
|
||||
@ -728,7 +728,7 @@ Index: gdb-6.8.50.20081128/gdb/symfile.c
|
||||
{
|
||||
char *link, *s, *retval = NULL;
|
||||
gdb_byte *data = build_id->data;
|
||||
@@ -1238,7 +1633,9 @@ build_id_to_debug_filename (struct build
|
||||
@@ -1255,7 +1650,9 @@ build_id_to_debug_filename (struct build
|
||||
|
||||
/* DEBUG_FILE_DIRECTORY/.build-id/ab/cdef */
|
||||
link = xmalloc (strlen (debug_file_directory) + (sizeof "/.build-id/" - 1) + 1
|
||||
@ -739,7 +739,7 @@ Index: gdb-6.8.50.20081128/gdb/symfile.c
|
||||
s = link + sprintf (link, "%s/.build-id/", debug_file_directory);
|
||||
if (size > 0)
|
||||
{
|
||||
@@ -1249,12 +1646,14 @@ build_id_to_debug_filename (struct build
|
||||
@@ -1266,12 +1663,14 @@ build_id_to_debug_filename (struct build
|
||||
*s++ = '/';
|
||||
while (size-- > 0)
|
||||
s += sprintf (s, "%02x", (unsigned) *data++);
|
||||
@ -756,7 +756,7 @@ Index: gdb-6.8.50.20081128/gdb/symfile.c
|
||||
|
||||
if (retval != NULL && !build_id_verify (retval, build_id))
|
||||
{
|
||||
@@ -1262,9 +1661,424 @@ build_id_to_debug_filename (struct build
|
||||
@@ -1279,9 +1678,424 @@ build_id_to_debug_filename (struct build
|
||||
retval = NULL;
|
||||
}
|
||||
|
||||
@ -1181,7 +1181,7 @@ Index: gdb-6.8.50.20081128/gdb/symfile.c
|
||||
static char *
|
||||
get_debug_link_info (struct objfile *objfile, unsigned long *crc32_out)
|
||||
{
|
||||
@@ -1347,32 +2161,36 @@ static char *
|
||||
@@ -1364,32 +2178,36 @@ static char *
|
||||
find_separate_debug_file (struct objfile *objfile)
|
||||
{
|
||||
asection *sect;
|
||||
@ -1226,7 +1226,7 @@ Index: gdb-6.8.50.20081128/gdb/symfile.c
|
||||
}
|
||||
|
||||
basename = get_debug_link_info (objfile, &crc32);
|
||||
@@ -1380,7 +2198,7 @@ find_separate_debug_file (struct objfile
|
||||
@@ -1397,7 +2215,7 @@ find_separate_debug_file (struct objfile
|
||||
if (basename == NULL)
|
||||
/* There's no separate debug info, hence there's no way we could
|
||||
load it => no warning. */
|
||||
@ -1235,7 +1235,7 @@ Index: gdb-6.8.50.20081128/gdb/symfile.c
|
||||
|
||||
dir = xstrdup (objfile->name);
|
||||
|
||||
@@ -1396,23 +2214,19 @@ find_separate_debug_file (struct objfile
|
||||
@@ -1413,23 +2231,19 @@ find_separate_debug_file (struct objfile
|
||||
gdb_assert (i >= 0 && IS_DIR_SEPARATOR (dir[i]));
|
||||
dir[i+1] = '\0';
|
||||
|
||||
@ -1266,7 +1266,7 @@ Index: gdb-6.8.50.20081128/gdb/symfile.c
|
||||
|
||||
/* Then try in the subdirectory named DEBUG_SUBDIRECTORY. */
|
||||
strcpy (debugfile, dir);
|
||||
@@ -1421,11 +2235,7 @@ find_separate_debug_file (struct objfile
|
||||
@@ -1438,11 +2252,7 @@ find_separate_debug_file (struct objfile
|
||||
strcat (debugfile, basename);
|
||||
|
||||
if (separate_debug_file_exists (debugfile, crc32, objfile->name))
|
||||
@ -1279,7 +1279,7 @@ Index: gdb-6.8.50.20081128/gdb/symfile.c
|
||||
|
||||
/* Then try in the global debugfile directory. */
|
||||
strcpy (debugfile, debug_file_directory);
|
||||
@@ -1434,11 +2244,7 @@ find_separate_debug_file (struct objfile
|
||||
@@ -1451,11 +2261,7 @@ find_separate_debug_file (struct objfile
|
||||
strcat (debugfile, basename);
|
||||
|
||||
if (separate_debug_file_exists (debugfile, crc32, objfile->name))
|
||||
@ -1292,7 +1292,7 @@ Index: gdb-6.8.50.20081128/gdb/symfile.c
|
||||
|
||||
/* If the file is in the sysroot, try using its base path in the
|
||||
global debugfile directory. */
|
||||
@@ -1453,20 +2259,18 @@ find_separate_debug_file (struct objfile
|
||||
@@ -1470,20 +2276,18 @@ find_separate_debug_file (struct objfile
|
||||
strcat (debugfile, basename);
|
||||
|
||||
if (separate_debug_file_exists (debugfile, crc32, objfile->name))
|
||||
@ -1321,7 +1321,7 @@ Index: gdb-6.8.50.20081128/gdb/symfile.c
|
||||
}
|
||||
|
||||
|
||||
@@ -4196,4 +5000,16 @@ Show printing of symbol loading messages
|
||||
@@ -4215,4 +5019,16 @@ Show printing of symbol loading messages
|
||||
NULL,
|
||||
NULL,
|
||||
&setprintlist, &showprintlist);
|
||||
@ -1338,11 +1338,11 @@ Index: gdb-6.8.50.20081128/gdb/symfile.c
|
||||
+
|
||||
+ observer_attach_executable_changed (debug_print_executable_changed);
|
||||
}
|
||||
Index: gdb-6.8.50.20081128/gdb/symfile.h
|
||||
Index: gdb-6.8.50.20090226/gdb/symfile.h
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20081128.orig/gdb/symfile.h 2008-09-05 13:37:17.000000000 +0200
|
||||
+++ gdb-6.8.50.20081128/gdb/symfile.h 2008-12-04 10:34:31.000000000 +0100
|
||||
@@ -365,6 +365,14 @@ extern int symfile_map_offsets_to_segmen
|
||||
--- gdb-6.8.50.20090226.orig/gdb/symfile.h 2009-02-27 00:04:32.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/symfile.h 2009-02-28 07:31:58.000000000 +0100
|
||||
@@ -372,6 +372,14 @@ extern int symfile_map_offsets_to_segmen
|
||||
struct symfile_segment_data *get_symfile_segment_data (bfd *abfd);
|
||||
void free_symfile_segment_data (struct symfile_segment_data *data);
|
||||
|
||||
@ -1357,11 +1357,11 @@ Index: gdb-6.8.50.20081128/gdb/symfile.h
|
||||
/* From dwarf2read.c */
|
||||
|
||||
extern int dwarf2_has_info (struct objfile *);
|
||||
Index: gdb-6.8.50.20081128/gdb/testsuite/lib/gdb.exp
|
||||
Index: gdb-6.8.50.20090226/gdb/testsuite/lib/gdb.exp
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20081128.orig/gdb/testsuite/lib/gdb.exp 2008-12-04 01:33:56.000000000 +0100
|
||||
+++ gdb-6.8.50.20081128/gdb/testsuite/lib/gdb.exp 2008-12-04 10:34:31.000000000 +0100
|
||||
@@ -1227,6 +1227,16 @@ proc default_gdb_start { } {
|
||||
--- gdb-6.8.50.20090226.orig/gdb/testsuite/lib/gdb.exp 2009-02-27 00:04:34.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/testsuite/lib/gdb.exp 2009-02-28 07:31:58.000000000 +0100
|
||||
@@ -1230,6 +1230,16 @@ proc default_gdb_start { } {
|
||||
warning "Couldn't set the width to 0."
|
||||
}
|
||||
}
|
||||
@ -1378,10 +1378,10 @@ Index: gdb-6.8.50.20081128/gdb/testsuite/lib/gdb.exp
|
||||
return 0;
|
||||
}
|
||||
|
||||
Index: gdb-6.8.50.20081128/gdb/tui/tui-interp.c
|
||||
Index: gdb-6.8.50.20090226/gdb/tui/tui-interp.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20081128.orig/gdb/tui/tui-interp.c 2008-03-14 20:55:51.000000000 +0100
|
||||
+++ gdb-6.8.50.20081128/gdb/tui/tui-interp.c 2008-12-04 10:34:31.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/tui/tui-interp.c 2009-02-21 17:14:50.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/tui/tui-interp.c 2009-02-28 07:31:58.000000000 +0100
|
||||
@@ -30,6 +30,7 @@
|
||||
#include "tui/tui.h"
|
||||
#include "tui/tui-io.h"
|
||||
|
@ -1,41 +0,0 @@
|
||||
2008-01-22 Jan Kratochvil <jan.kratochvil@redhat.com>
|
||||
|
||||
Suppress messages `(no debugging symbols found)' on the commandline
|
||||
option -readnever.
|
||||
|
||||
Index: gdb-6.8.50.20081128/gdb/symfile.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20081128.orig/gdb/symfile.c 2008-12-02 23:39:09.000000000 +0100
|
||||
+++ gdb-6.8.50.20081128/gdb/symfile.c 2008-12-02 23:52:23.000000000 +0100
|
||||
@@ -1028,8 +1028,10 @@ symbol_file_add_with_addrs_or_offsets (b
|
||||
|
||||
/* If the file has its own symbol tables it has no separate debug info.
|
||||
`.dynsym'/`.symtab' go to MSYMBOLS, `.debug_info' goes to SYMTABS/PSYMTABS.
|
||||
- `.gnu_debuglink' may no longer be present with `.note.gnu.build-id'. */
|
||||
- if (objfile->psymtabs == NULL)
|
||||
+ `.gnu_debuglink' may no longer be present with `.note.gnu.build-id'.
|
||||
+ READNEVER_SYMBOL_FILES implies zero PSYMTABS and it makes no sense to be
|
||||
+ finding any debug files. */
|
||||
+ if (objfile->psymtabs == NULL && !readnever_symbol_files)
|
||||
debugfile = find_separate_debug_file (objfile);
|
||||
if (debugfile)
|
||||
{
|
||||
@@ -1054,7 +1056,7 @@ symbol_file_add_with_addrs_or_offsets (b
|
||||
}
|
||||
|
||||
if (!have_partial_symbols () && !have_full_symbols ()
|
||||
- && print_symbol_loading)
|
||||
+ && print_symbol_loading && !readnever_symbol_files)
|
||||
{
|
||||
wrap_here ("");
|
||||
printf_unfiltered (_("(no debugging symbols found)"));
|
||||
@@ -3239,7 +3241,8 @@ reread_symbols (void)
|
||||
zero is OK since dbxread.c also does what it needs to do if
|
||||
objfile->global_psymbols.size is 0. */
|
||||
(*objfile->sf->sym_read) (objfile, 0);
|
||||
- if (!have_partial_symbols () && !have_full_symbols ())
|
||||
+ if (!readnever_symbol_files && !have_partial_symbols ()
|
||||
+ && !have_full_symbols ())
|
||||
{
|
||||
wrap_here ("");
|
||||
printf_unfiltered (_("(no debugging symbols found)\n"));
|
@ -1,13 +1,13 @@
|
||||
Index: gdb-6.8.50.20081128/gdb/linux-nat.c
|
||||
Index: gdb-6.8.50.20090226/gdb/linux-nat.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20081128.orig/gdb/linux-nat.c 2008-12-04 01:44:26.000000000 +0100
|
||||
+++ gdb-6.8.50.20081128/gdb/linux-nat.c 2008-12-04 10:21:32.000000000 +0100
|
||||
@@ -1661,15 +1661,17 @@ resume_set_callback (struct lwp_info *lp
|
||||
}
|
||||
--- gdb-6.8.50.20090226.orig/gdb/linux-nat.c 2009-02-27 00:04:35.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/linux-nat.c 2009-02-27 07:51:44.000000000 +0100
|
||||
@@ -1790,15 +1790,17 @@ resume_set_callback (struct lwp_info *lp
|
||||
|
||||
static void
|
||||
-linux_nat_resume (ptid_t ptid, int step, enum target_signal signo)
|
||||
+linux_nat_resume (ptid_t ptid, int step_int, enum target_signal signo)
|
||||
linux_nat_resume (struct target_ops *ops,
|
||||
- ptid_t ptid, int step, enum target_signal signo)
|
||||
+ ptid_t ptid, int step_int, enum target_signal signo)
|
||||
{
|
||||
struct lwp_info *lp;
|
||||
int resume_all;
|
||||
@ -22,7 +22,7 @@ Index: gdb-6.8.50.20081128/gdb/linux-nat.c
|
||||
target_pid_to_str (ptid),
|
||||
signo ? strsignal (signo) : "0",
|
||||
target_pid_to_str (inferior_ptid));
|
||||
@@ -2586,6 +2588,9 @@ linux_nat_filter_event (int lwpid, int s
|
||||
@@ -2740,6 +2742,9 @@ linux_nat_filter_event (int lwpid, int s
|
||||
/* Check if the thread has exited. */
|
||||
if ((WIFEXITED (status) || WIFSIGNALED (status)) && num_lwps > 1)
|
||||
{
|
||||
@ -32,7 +32,7 @@ Index: gdb-6.8.50.20081128/gdb/linux-nat.c
|
||||
/* If this is the main thread, we must stop all threads and
|
||||
verify if they are still alive. This is because in the nptl
|
||||
thread model, there is no signal issued for exiting LWPs
|
||||
@@ -2609,6 +2614,26 @@ linux_nat_filter_event (int lwpid, int s
|
||||
@@ -2763,6 +2768,26 @@ linux_nat_filter_event (int lwpid, int s
|
||||
|
||||
exit_lwp (lp);
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -5,10 +5,10 @@ causing: FAIL: gdb.base/unwindonsignal.exp: unwindonsignal, stack unwound
|
||||
resume() -> target_resume() move of clear_inline_frame_state() is for:
|
||||
gdb.mi/mi-nsmoribund.exp
|
||||
|
||||
Index: gdb-6.8.50.20081214/gdb/testsuite/gdb.opt/inline-bt.c
|
||||
Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-bt.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20081214.orig/gdb/testsuite/gdb.opt/inline-bt.c 2009-02-09 13:28:48.000000000 +0100
|
||||
+++ gdb-6.8.50.20081214/gdb/testsuite/gdb.opt/inline-bt.c 2009-02-09 13:28:49.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/testsuite/gdb.opt/inline-bt.c 2009-02-28 07:34:09.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-bt.c 2009-02-28 07:37:54.000000000 +0100
|
||||
@@ -13,10 +13,16 @@
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>. */
|
||||
@ -28,10 +28,10 @@ Index: gdb-6.8.50.20081214/gdb/testsuite/gdb.opt/inline-bt.c
|
||||
|
||||
inline int func1(void)
|
||||
{
|
||||
Index: gdb-6.8.50.20081214/gdb/testsuite/gdb.opt/inline-bt.exp
|
||||
Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-bt.exp
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20081214.orig/gdb/testsuite/gdb.opt/inline-bt.exp 2009-02-09 13:28:48.000000000 +0100
|
||||
+++ gdb-6.8.50.20081214/gdb/testsuite/gdb.opt/inline-bt.exp 2009-02-09 13:28:49.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/testsuite/gdb.opt/inline-bt.exp 2009-02-28 07:34:09.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-bt.exp 2009-02-28 07:37:54.000000000 +0100
|
||||
@@ -41,18 +41,19 @@ if { [skip_inline_frame_tests] } {
|
||||
return
|
||||
}
|
||||
@ -60,10 +60,10 @@ Index: gdb-6.8.50.20081214/gdb/testsuite/gdb.opt/inline-bt.exp
|
||||
|
||||
gdb_test "continue" ".*set breakpoint 1 here.*" "continue to bar (3)"
|
||||
gdb_test "backtrace" "#0 bar.*#1 .*func1.*#2 .*func2.*#3 .*main.*" \
|
||||
Index: gdb-6.8.50.20081214/gdb/testsuite/gdb.opt/inline-cmds.c
|
||||
Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-cmds.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20081214.orig/gdb/testsuite/gdb.opt/inline-cmds.c 2009-02-09 13:28:48.000000000 +0100
|
||||
+++ gdb-6.8.50.20081214/gdb/testsuite/gdb.opt/inline-cmds.c 2009-02-09 13:28:49.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/testsuite/gdb.opt/inline-cmds.c 2009-02-28 07:34:09.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-cmds.c 2009-02-28 07:37:54.000000000 +0100
|
||||
@@ -13,13 +13,19 @@
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>. */
|
||||
@ -86,10 +86,10 @@ Index: gdb-6.8.50.20081214/gdb/testsuite/gdb.opt/inline-cmds.c
|
||||
inline int func1(void)
|
||||
{
|
||||
bar ();
|
||||
Index: gdb-6.8.50.20081214/gdb/testsuite/gdb.opt/inline-cmds.exp
|
||||
Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-cmds.exp
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20081214.orig/gdb/testsuite/gdb.opt/inline-cmds.exp 2009-02-09 13:28:48.000000000 +0100
|
||||
+++ gdb-6.8.50.20081214/gdb/testsuite/gdb.opt/inline-cmds.exp 2009-02-09 13:30:16.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/testsuite/gdb.opt/inline-cmds.exp 2009-02-28 07:34:09.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-cmds.exp 2009-02-28 07:37:54.000000000 +0100
|
||||
@@ -45,28 +45,28 @@ if { [skip_inline_frame_tests] } {
|
||||
|
||||
# First, check that the things we expected to be inlined really were,
|
||||
@ -180,10 +180,10 @@ Index: gdb-6.8.50.20081214/gdb/testsuite/gdb.opt/inline-cmds.exp
|
||||
+gdb_test "info frame" "inlined into frame.*" "outer_inline2 inlined"
|
||||
+gdb_test "fini" "" "up from outer_inline2"
|
||||
+gdb_test "info frame" " in main \[^\n\]*\n source language.*" "main not inlined"
|
||||
Index: gdb-6.8.50.20081214/gdb/testsuite/gdb.opt/inline-locals.c
|
||||
Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-locals.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20081214.orig/gdb/testsuite/gdb.opt/inline-locals.c 2009-02-09 13:28:48.000000000 +0100
|
||||
+++ gdb-6.8.50.20081214/gdb/testsuite/gdb.opt/inline-locals.c 2009-02-09 13:28:49.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/testsuite/gdb.opt/inline-locals.c 2009-02-28 07:34:09.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-locals.c 2009-02-28 07:37:54.000000000 +0100
|
||||
@@ -13,11 +13,16 @@
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>. */
|
||||
@ -203,10 +203,10 @@ Index: gdb-6.8.50.20081214/gdb/testsuite/gdb.opt/inline-locals.c
|
||||
|
||||
inline int func1(int arg1)
|
||||
{
|
||||
Index: gdb-6.8.50.20081214/gdb/testsuite/gdb.opt/inline-locals.exp
|
||||
Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-locals.exp
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20081214.orig/gdb/testsuite/gdb.opt/inline-locals.exp 2009-02-09 13:28:48.000000000 +0100
|
||||
+++ gdb-6.8.50.20081214/gdb/testsuite/gdb.opt/inline-locals.exp 2009-02-09 13:28:49.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/testsuite/gdb.opt/inline-locals.exp 2009-02-28 07:34:09.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-locals.exp 2009-02-28 07:37:54.000000000 +0100
|
||||
@@ -43,8 +43,8 @@ if { [skip_inline_var_tests] } {
|
||||
|
||||
set no_frames [skip_inline_frame_tests]
|
||||
@ -236,10 +236,10 @@ Index: gdb-6.8.50.20081214/gdb/testsuite/gdb.opt/inline-locals.exp
|
||||
+ setup_kfail *-*-* "gcc/debug.optimization"
|
||||
+}
|
||||
gdb_test "print array\[0\]" "\\\$$decimal = 184" "print local (3)"
|
||||
Index: gdb-6.8.50.20081214/gdb/frame.c
|
||||
Index: gdb-6.8.50.20090226/gdb/frame.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20081214.orig/gdb/frame.c 2009-02-09 13:28:48.000000000 +0100
|
||||
+++ gdb-6.8.50.20081214/gdb/frame.c 2009-02-09 13:30:16.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/frame.c 2009-02-28 07:34:09.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/frame.c 2009-02-28 07:37:54.000000000 +0100
|
||||
@@ -269,7 +269,7 @@ fprint_frame (struct ui_file *file, stru
|
||||
static struct frame_info *
|
||||
skip_inlined_frames (struct frame_info *frame)
|
||||
@ -249,7 +249,7 @@ Index: gdb-6.8.50.20081214/gdb/frame.c
|
||||
frame = get_prev_frame (frame);
|
||||
|
||||
return frame;
|
||||
@@ -1697,6 +1697,7 @@ get_frame_address_in_block (struct frame
|
||||
@@ -1670,6 +1670,7 @@ get_frame_address_in_block (struct frame
|
||||
{
|
||||
/* A draft address. */
|
||||
CORE_ADDR pc = get_frame_pc (this_frame);
|
||||
@ -257,7 +257,7 @@ Index: gdb-6.8.50.20081214/gdb/frame.c
|
||||
|
||||
struct frame_info *next_frame = this_frame->next;
|
||||
|
||||
@@ -1739,6 +1740,9 @@ get_frame_address_in_block (struct frame
|
||||
@@ -1712,6 +1713,9 @@ get_frame_address_in_block (struct frame
|
||||
while in an inlined function, then the code address of the
|
||||
"calling" normal function should not be adjusted either. */
|
||||
|
||||
@ -267,7 +267,7 @@ Index: gdb-6.8.50.20081214/gdb/frame.c
|
||||
while (get_frame_type (next_frame) == INLINE_FRAME)
|
||||
next_frame = next_frame->next;
|
||||
|
||||
@@ -1770,7 +1774,7 @@ find_frame_sal (struct frame_info *frame
|
||||
@@ -1743,7 +1747,7 @@ find_frame_sal (struct frame_info *frame
|
||||
sym = inline_skipped_symbol (inferior_ptid);
|
||||
|
||||
init_sal (sal);
|
||||
@ -276,10 +276,10 @@ Index: gdb-6.8.50.20081214/gdb/frame.c
|
||||
{
|
||||
sal->symtab = SYMBOL_SYMTAB (sym);
|
||||
sal->line = SYMBOL_LINE (sym);
|
||||
Index: gdb-6.8.50.20081214/gdb/breakpoint.c
|
||||
Index: gdb-6.8.50.20090226/gdb/breakpoint.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20081214.orig/gdb/breakpoint.c 2009-02-09 13:28:48.000000000 +0100
|
||||
+++ gdb-6.8.50.20081214/gdb/breakpoint.c 2009-02-09 13:30:16.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/breakpoint.c 2009-02-28 07:34:09.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/breakpoint.c 2009-02-28 07:37:54.000000000 +0100
|
||||
@@ -57,6 +57,7 @@
|
||||
#include "top.h"
|
||||
#include "wrapper.h"
|
||||
@ -288,7 +288,7 @@ Index: gdb-6.8.50.20081214/gdb/breakpoint.c
|
||||
|
||||
#include "mi/mi-common.h"
|
||||
|
||||
@@ -2833,10 +2834,24 @@ bpstat_check_breakpoint_conditions (bpst
|
||||
@@ -2902,10 +2903,24 @@ bpstat_check_breakpoint_conditions (bpst
|
||||
const struct bp_location *bl = bs->breakpoint_at;
|
||||
struct breakpoint *b = bl->owner;
|
||||
|
||||
@ -317,7 +317,7 @@ Index: gdb-6.8.50.20081214/gdb/breakpoint.c
|
||||
{
|
||||
int value_is_zero = 0;
|
||||
|
||||
@@ -2975,6 +2990,12 @@ bpstat_stop_status (CORE_ADDR bp_addr, p
|
||||
@@ -3044,6 +3059,12 @@ bpstat_stop_status (CORE_ADDR bp_addr, p
|
||||
bs->print = 0;
|
||||
}
|
||||
bs->commands = copy_command_lines (bs->commands);
|
||||
@ -330,7 +330,7 @@ Index: gdb-6.8.50.20081214/gdb/breakpoint.c
|
||||
}
|
||||
|
||||
/* Print nothing for this entry if we dont stop or if we dont print. */
|
||||
@@ -4826,9 +4847,9 @@ set_momentary_breakpoint (struct symtab_
|
||||
@@ -5168,9 +5189,9 @@ set_momentary_breakpoint (struct symtab_
|
||||
{
|
||||
struct breakpoint *b;
|
||||
|
||||
@ -343,10 +343,10 @@ Index: gdb-6.8.50.20081214/gdb/breakpoint.c
|
||||
|
||||
b = set_raw_breakpoint (sal, type);
|
||||
b->enable_state = bp_enabled;
|
||||
Index: gdb-6.8.50.20081214/gdb/inline-frame.c
|
||||
Index: gdb-6.8.50.20090226/gdb/inline-frame.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20081214.orig/gdb/inline-frame.c 2009-02-09 13:28:48.000000000 +0100
|
||||
+++ gdb-6.8.50.20081214/gdb/inline-frame.c 2009-02-09 13:30:16.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/inline-frame.c 2009-02-28 07:34:09.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/inline-frame.c 2009-02-28 07:37:54.000000000 +0100
|
||||
@@ -183,6 +183,12 @@ inline_frame_sniffer (const struct frame
|
||||
if (frame_block == NULL)
|
||||
return 0;
|
||||
@ -423,10 +423,10 @@ Index: gdb-6.8.50.20081214/gdb/inline-frame.c
|
||||
/* Return the number of hidden functions inlined into the current
|
||||
frame. */
|
||||
|
||||
Index: gdb-6.8.50.20081214/gdb/testsuite/gdb.opt/inline-markers.c
|
||||
Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-markers.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20081214.orig/gdb/testsuite/gdb.opt/inline-markers.c 2009-02-09 13:28:48.000000000 +0100
|
||||
+++ gdb-6.8.50.20081214/gdb/testsuite/gdb.opt/inline-markers.c 2009-02-09 13:28:49.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/testsuite/gdb.opt/inline-markers.c 2009-02-28 07:34:09.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-markers.c 2009-02-28 07:37:54.000000000 +0100
|
||||
@@ -15,11 +15,6 @@
|
||||
|
||||
extern int x, y;
|
||||
@ -439,10 +439,10 @@ Index: gdb-6.8.50.20081214/gdb/testsuite/gdb.opt/inline-markers.c
|
||||
void marker(void)
|
||||
{
|
||||
x += y; /* set breakpoint 2 here */
|
||||
Index: gdb-6.8.50.20081214/gdb/gdbthread.h
|
||||
Index: gdb-6.8.50.20090226/gdb/gdbthread.h
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20081214.orig/gdb/gdbthread.h 2009-02-09 13:28:48.000000000 +0100
|
||||
+++ gdb-6.8.50.20081214/gdb/gdbthread.h 2009-02-09 13:30:16.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/gdbthread.h 2009-02-28 07:34:09.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/gdbthread.h 2009-02-28 07:37:54.000000000 +0100
|
||||
@@ -180,6 +180,12 @@ struct thread_info
|
||||
|
||||
/* Private data used by the target vector implementation. */
|
||||
@ -456,11 +456,11 @@ Index: gdb-6.8.50.20081214/gdb/gdbthread.h
|
||||
};
|
||||
|
||||
/* Create an empty thread list, or empty the existing one. */
|
||||
Index: gdb-6.8.50.20081214/gdb/infcmd.c
|
||||
Index: gdb-6.8.50.20090226/gdb/infcmd.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20081214.orig/gdb/infcmd.c 2009-02-09 13:28:48.000000000 +0100
|
||||
+++ gdb-6.8.50.20081214/gdb/infcmd.c 2009-02-09 13:30:16.000000000 +0100
|
||||
@@ -1373,11 +1373,11 @@ finish_command_continuation (void *arg)
|
||||
--- gdb-6.8.50.20090226.orig/gdb/infcmd.c 2009-02-28 07:34:09.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/infcmd.c 2009-02-28 07:37:54.000000000 +0100
|
||||
@@ -1391,11 +1391,11 @@ finish_command_continuation (void *arg)
|
||||
struct type *value_type;
|
||||
|
||||
value_type = TYPE_TARGET_TYPE (SYMBOL_TYPE (a->function));
|
||||
@ -474,7 +474,7 @@ Index: gdb-6.8.50.20081214/gdb/infcmd.c
|
||||
print_return_value (SYMBOL_TYPE (a->function), value_type);
|
||||
}
|
||||
|
||||
@@ -1481,6 +1481,16 @@ finish_forward (struct symbol *function,
|
||||
@@ -1499,6 +1499,16 @@ finish_forward (struct symbol *function,
|
||||
|
||||
old_chain = make_cleanup_delete_breakpoint (breakpoint);
|
||||
|
||||
@ -491,7 +491,7 @@ Index: gdb-6.8.50.20081214/gdb/infcmd.c
|
||||
tp->proceed_to_finish = 1; /* We want stop_registers, please... */
|
||||
make_cleanup_restore_integer (&suppress_stop_observer);
|
||||
suppress_stop_observer = 1;
|
||||
@@ -1504,7 +1514,9 @@ finish_forward (struct symbol *function,
|
||||
@@ -1522,7 +1532,9 @@ finish_forward (struct symbol *function,
|
||||
static void
|
||||
finish_command (char *arg, int from_tty)
|
||||
{
|
||||
@ -502,7 +502,7 @@ Index: gdb-6.8.50.20081214/gdb/infcmd.c
|
||||
struct symbol *function;
|
||||
|
||||
int async_exec = 0;
|
||||
@@ -1535,46 +1547,63 @@ finish_command (char *arg, int from_tty)
|
||||
@@ -1553,46 +1565,63 @@ finish_command (char *arg, int from_tty)
|
||||
if (!target_has_execution)
|
||||
error (_("The program is not running."));
|
||||
|
||||
@ -584,7 +584,7 @@ Index: gdb-6.8.50.20081214/gdb/infcmd.c
|
||||
|
||||
/* Print info on the selected frame, including level number but not
|
||||
source. */
|
||||
@@ -1588,10 +1617,14 @@ finish_command (char *arg, int from_tty)
|
||||
@@ -1606,10 +1635,14 @@ finish_command (char *arg, int from_tty)
|
||||
print_stack_frame (get_selected_frame (NULL), 1, LOCATION);
|
||||
}
|
||||
|
||||
@ -600,11 +600,11 @@ Index: gdb-6.8.50.20081214/gdb/infcmd.c
|
||||
}
|
||||
|
||||
|
||||
Index: gdb-6.8.50.20081214/gdb/infrun.c
|
||||
Index: gdb-6.8.50.20090226/gdb/infrun.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20081214.orig/gdb/infrun.c 2009-02-09 13:29:51.000000000 +0100
|
||||
+++ gdb-6.8.50.20081214/gdb/infrun.c 2009-02-09 13:30:16.000000000 +0100
|
||||
@@ -1147,8 +1150,6 @@ a command like `return' or `jump' to con
|
||||
--- gdb-6.8.50.20090226.orig/gdb/infrun.c 2009-02-28 07:37:36.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/infrun.c 2009-02-28 07:37:54.000000000 +0100
|
||||
@@ -1152,8 +1152,6 @@ a command like `return' or `jump' to con
|
||||
step = 0;
|
||||
}
|
||||
|
||||
@ -613,7 +613,7 @@ Index: gdb-6.8.50.20081214/gdb/infrun.c
|
||||
if (debug_displaced
|
||||
&& use_displaced_stepping (gdbarch)
|
||||
&& tp->trap_expected)
|
||||
@@ -1201,6 +1201,8 @@ clear_proceed_status_thread (struct thre
|
||||
@@ -1205,6 +1203,8 @@ clear_proceed_status_thread (struct thre
|
||||
|
||||
/* Discard any remaining commands or status from previous stop. */
|
||||
bpstat_clear (&tp->stop_bpstat);
|
||||
@ -622,8 +622,10 @@ Index: gdb-6.8.50.20081214/gdb/infrun.c
|
||||
}
|
||||
|
||||
static int
|
||||
--- ./gdb/target.c 2009-02-10 23:45:59.000000000 +0100
|
||||
+++ ./gdb/target.c 2009-02-10 23:43:29.000000000 +0100
|
||||
Index: gdb-6.8.50.20090226/gdb/target.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090226.orig/gdb/target.c 2009-02-28 07:31:48.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/target.c 2009-02-28 07:38:36.000000000 +0100
|
||||
@@ -41,6 +41,7 @@
|
||||
#include "target-descriptions.h"
|
||||
#include "gdbthread.h"
|
||||
@ -632,18 +634,18 @@ Index: gdb-6.8.50.20081214/gdb/infrun.c
|
||||
|
||||
static void target_info (char *, int);
|
||||
|
||||
@@ -1938,6 +1939,7 @@ target_pid_to_str (ptid_t ptid)
|
||||
void
|
||||
target_resume (ptid_t ptid, int step, enum target_signal signal)
|
||||
@@ -1925,6 +1926,7 @@ target_resume (ptid_t ptid, int step, en
|
||||
{
|
||||
struct target_ops *t;
|
||||
|
||||
+ clear_inline_frame_state (ptid);
|
||||
dcache_invalidate (target_dcache);
|
||||
(*current_target.to_resume) (ptid, step, signal);
|
||||
set_executing (ptid, 1);
|
||||
Index: gdb-6.8.50.20081214/gdb/inline-frame.h
|
||||
|
||||
for (t = current_target.beneath; t != NULL; t = t->beneath)
|
||||
Index: gdb-6.8.50.20090226/gdb/inline-frame.h
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20081214.orig/gdb/inline-frame.h 2009-02-09 13:28:48.000000000 +0100
|
||||
+++ gdb-6.8.50.20081214/gdb/inline-frame.h 2009-02-09 13:30:16.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/inline-frame.h 2009-02-28 07:34:09.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/inline-frame.h 2009-02-28 07:37:54.000000000 +0100
|
||||
@@ -43,6 +43,10 @@ void clear_inline_frame_state (ptid_t pt
|
||||
|
||||
void step_into_inline_frame (ptid_t ptid);
|
||||
@ -655,9 +657,11 @@ Index: gdb-6.8.50.20081214/gdb/inline-frame.h
|
||||
/* Return the number of hidden functions inlined into the current
|
||||
frame. */
|
||||
|
||||
--- gdb-6.8.50.20090209/gdb/infcall.c 2009-02-10 00:16:10.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/infcall.c-removed 2009-02-10 00:15:58.000000000 +0100
|
||||
@@ -841,8 +841,15 @@ When the function is done executing, GDB
|
||||
Index: gdb-6.8.50.20090226/gdb/infcall.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090226.orig/gdb/infcall.c 2009-02-28 07:34:09.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/infcall.c 2009-02-28 07:37:54.000000000 +0100
|
||||
@@ -898,8 +898,15 @@ The program being debugged exited while
|
||||
|
||||
if (unwind_on_signal_p)
|
||||
{
|
||||
|
@ -5,10 +5,10 @@ http://sourceware.org/ml/gdb-patches/2008-07/msg00317.html
|
||||
|
||||
Removed dwarf_expr_frame_base NULL check duplicity with *-vla.patch.
|
||||
|
||||
Index: gdb-6.8.50.20090209/gdb/NEWS
|
||||
Index: gdb-6.8.50.20090226/gdb/NEWS
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/NEWS 2009-02-07 16:00:57.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/NEWS 2009-02-09 16:06:54.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/NEWS 2009-02-27 00:04:32.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/NEWS 2009-02-28 07:34:29.000000000 +0100
|
||||
@@ -1,6 +1,11 @@
|
||||
What has changed in GDB?
|
||||
(Organized release by release)
|
||||
@ -20,11 +20,11 @@ Index: gdb-6.8.50.20090209/gdb/NEWS
|
||||
+
|
||||
*** Changes since GDB 6.8
|
||||
|
||||
* GDB now supports automatic retrieval of shared library files from
|
||||
Index: gdb-6.8.50.20090209/gdb/block.c
|
||||
* GDB now has support for multi-byte and wide character sets on the
|
||||
Index: gdb-6.8.50.20090226/gdb/block.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/block.c 2009-01-03 06:57:50.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/block.c 2009-02-09 16:06:00.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/block.c 2009-01-03 06:57:50.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/block.c 2009-02-28 07:34:09.000000000 +0100
|
||||
@@ -47,8 +47,16 @@ contained_in (const struct block *a, con
|
||||
{
|
||||
if (!a || !b)
|
||||
@ -67,10 +67,10 @@ Index: gdb-6.8.50.20090209/gdb/block.c
|
||||
/* Return the blockvector immediately containing the innermost lexical
|
||||
block containing the specified pc value and section, or 0 if there
|
||||
is none. PBLOCK is a pointer to the block. If PBLOCK is NULL, we
|
||||
Index: gdb-6.8.50.20090209/gdb/block.h
|
||||
Index: gdb-6.8.50.20090226/gdb/block.h
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/block.h 2009-01-03 06:57:50.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/block.h 2009-02-09 16:06:00.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/block.h 2009-01-03 06:57:50.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/block.h 2009-02-28 07:34:09.000000000 +0100
|
||||
@@ -65,7 +65,7 @@ struct block
|
||||
CORE_ADDR endaddr;
|
||||
|
||||
@ -89,10 +89,10 @@ Index: gdb-6.8.50.20090209/gdb/block.h
|
||||
extern int contained_in (const struct block *, const struct block *);
|
||||
|
||||
extern struct blockvector *blockvector_for_pc (CORE_ADDR, struct block **);
|
||||
Index: gdb-6.8.50.20090209/gdb/blockframe.c
|
||||
Index: gdb-6.8.50.20090226/gdb/blockframe.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/blockframe.c 2009-01-03 06:57:50.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/blockframe.c 2009-02-09 16:06:00.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/blockframe.c 2009-01-03 06:57:50.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/blockframe.c 2009-02-28 07:34:09.000000000 +0100
|
||||
@@ -36,6 +36,7 @@
|
||||
#include "command.h"
|
||||
#include "gdbcmd.h"
|
||||
@ -161,11 +161,11 @@ Index: gdb-6.8.50.20090209/gdb/blockframe.c
|
||||
return frame;
|
||||
|
||||
frame = get_prev_frame (frame);
|
||||
Index: gdb-6.8.50.20090209/gdb/breakpoint.c
|
||||
Index: gdb-6.8.50.20090226/gdb/breakpoint.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/breakpoint.c 2009-02-09 16:04:10.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/breakpoint.c 2009-02-09 16:06:00.000000000 +0100
|
||||
@@ -2615,19 +2615,21 @@ watchpoint_check (void *p)
|
||||
--- gdb-6.8.50.20090226.orig/gdb/breakpoint.c 2009-02-28 07:33:47.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/breakpoint.c 2009-02-28 07:34:09.000000000 +0100
|
||||
@@ -2641,19 +2641,21 @@ watchpoint_check (void *p)
|
||||
within_current_scope = 1;
|
||||
else
|
||||
{
|
||||
@ -195,7 +195,7 @@ Index: gdb-6.8.50.20090209/gdb/breakpoint.c
|
||||
|
||||
/* in_function_epilogue_p() returns a non-zero value if we're still
|
||||
in the function but the stack frame has already been invalidated.
|
||||
@@ -2639,10 +2641,9 @@ watchpoint_check (void *p)
|
||||
@@ -2665,10 +2667,9 @@ watchpoint_check (void *p)
|
||||
that the watchpoint frame couldn't be found by frame_find_by_id()
|
||||
because the current PC is currently in an epilogue. Calling
|
||||
gdbarch_in_function_epilogue_p() also when fr == NULL fixes that. */
|
||||
@ -208,7 +208,7 @@ Index: gdb-6.8.50.20090209/gdb/breakpoint.c
|
||||
/* If we end up stopping, the current frame will get selected
|
||||
in normal_stop. So this call to select_frame won't affect
|
||||
the user. */
|
||||
@@ -2876,7 +2877,7 @@ bpstat_check_breakpoint_conditions (bpst
|
||||
@@ -2902,7 +2903,7 @@ bpstat_check_breakpoint_conditions (bpst
|
||||
struct breakpoint *b = bl->owner;
|
||||
|
||||
if (frame_id_p (b->frame_id)
|
||||
@ -217,7 +217,7 @@ Index: gdb-6.8.50.20090209/gdb/breakpoint.c
|
||||
bs->stop = 0;
|
||||
else if (bs->stop)
|
||||
{
|
||||
@@ -2891,8 +2892,12 @@ bpstat_check_breakpoint_conditions (bpst
|
||||
@@ -2917,8 +2918,12 @@ bpstat_check_breakpoint_conditions (bpst
|
||||
|
||||
if (bl->cond && bl->owner->disposition != disp_del_at_next_stop)
|
||||
{
|
||||
@ -232,7 +232,7 @@ Index: gdb-6.8.50.20090209/gdb/breakpoint.c
|
||||
select_frame (get_current_frame ());
|
||||
value_is_zero
|
||||
= catch_errors (breakpoint_cond_eval, (bl->cond),
|
||||
@@ -4862,6 +4867,11 @@ set_momentary_breakpoint (struct symtab_
|
||||
@@ -5162,6 +5167,11 @@ set_momentary_breakpoint (struct symtab_
|
||||
enum bptype type)
|
||||
{
|
||||
struct breakpoint *b;
|
||||
@ -244,7 +244,7 @@ Index: gdb-6.8.50.20090209/gdb/breakpoint.c
|
||||
b = set_raw_breakpoint (sal, type);
|
||||
b->enable_state = bp_enabled;
|
||||
b->disposition = disp_donttouch;
|
||||
@@ -5872,7 +5882,6 @@ watch_command_1 (char *arg, int accessfl
|
||||
@@ -6175,7 +6185,6 @@ watch_command_1 (char *arg, int accessfl
|
||||
struct block *exp_valid_block;
|
||||
struct value *val, *mark, *val_chain;
|
||||
struct frame_info *frame;
|
||||
@ -252,7 +252,7 @@ Index: gdb-6.8.50.20090209/gdb/breakpoint.c
|
||||
char *exp_start = NULL;
|
||||
char *exp_end = NULL;
|
||||
char *tok, *id_tok_start, *end_tok;
|
||||
@@ -6033,34 +6042,34 @@ watch_command_1 (char *arg, int accessfl
|
||||
@@ -6336,34 +6345,34 @@ watch_command_1 (char *arg, int accessfl
|
||||
bp_type = bp_watchpoint;
|
||||
|
||||
frame = block_innermost_frame (exp_valid_block);
|
||||
@ -305,7 +305,7 @@ Index: gdb-6.8.50.20090209/gdb/breakpoint.c
|
||||
}
|
||||
|
||||
/* Now set up the breakpoint. */
|
||||
@@ -6241,7 +6250,6 @@ until_break_command (char *arg, int from
|
||||
@@ -6544,7 +6553,6 @@ until_break_command (char *arg, int from
|
||||
struct symtabs_and_lines sals;
|
||||
struct symtab_and_line sal;
|
||||
struct frame_info *frame = get_selected_frame (NULL);
|
||||
@ -313,7 +313,7 @@ Index: gdb-6.8.50.20090209/gdb/breakpoint.c
|
||||
struct breakpoint *breakpoint;
|
||||
struct breakpoint *breakpoint2 = NULL;
|
||||
struct cleanup *old_chain;
|
||||
@@ -6274,20 +6282,22 @@ until_break_command (char *arg, int from
|
||||
@@ -6577,20 +6585,22 @@ until_break_command (char *arg, int from
|
||||
we don't specify a frame at which we need to stop. */
|
||||
breakpoint = set_momentary_breakpoint (sal, null_frame_id, bp_until);
|
||||
else
|
||||
@ -342,10 +342,10 @@ Index: gdb-6.8.50.20090209/gdb/breakpoint.c
|
||||
bp_until);
|
||||
make_cleanup_delete_breakpoint (breakpoint2);
|
||||
}
|
||||
Index: gdb-6.8.50.20090209/gdb/buildsym.c
|
||||
Index: gdb-6.8.50.20090226/gdb/buildsym.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/buildsym.c 2009-01-03 06:57:50.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/buildsym.c 2009-02-09 16:06:00.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/buildsym.c 2009-01-03 06:57:50.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/buildsym.c 2009-02-28 07:34:09.000000000 +0100
|
||||
@@ -1159,6 +1159,12 @@ end_symtab (CORE_ADDR end_addr, struct o
|
||||
struct symbol *sym;
|
||||
struct dict_iterator iter;
|
||||
@ -359,10 +359,10 @@ Index: gdb-6.8.50.20090209/gdb/buildsym.c
|
||||
for (sym = dict_iterator_first (BLOCK_DICT (block), &iter);
|
||||
sym != NULL;
|
||||
sym = dict_iterator_next (&iter))
|
||||
Index: gdb-6.8.50.20090209/gdb/doc/gdb.texinfo
|
||||
Index: gdb-6.8.50.20090226/gdb/doc/gdb.texinfo
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/doc/gdb.texinfo 2009-02-09 16:04:10.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/doc/gdb.texinfo 2009-02-09 16:06:00.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/doc/gdb.texinfo 2009-02-28 07:33:47.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/doc/gdb.texinfo 2009-02-28 07:34:09.000000000 +0100
|
||||
@@ -137,6 +137,7 @@ software in general. We will miss him.
|
||||
* Stack:: Examining the stack
|
||||
* Source:: Examining source files
|
||||
@ -371,7 +371,7 @@ Index: gdb-6.8.50.20090209/gdb/doc/gdb.texinfo
|
||||
* Macros:: Preprocessor Macros
|
||||
* Tracepoints:: Debugging remote targets non-intrusively
|
||||
* Overlays:: Debugging programs that use overlays
|
||||
@@ -1812,7 +1813,7 @@ To request debugging information, specif
|
||||
@@ -1824,7 +1825,7 @@ To request debugging information, specif
|
||||
the compiler.
|
||||
|
||||
Programs that are to be shipped to your customers are compiled with
|
||||
@ -380,7 +380,7 @@ Index: gdb-6.8.50.20090209/gdb/doc/gdb.texinfo
|
||||
compilers are unable to handle the @samp{-g} and @samp{-O} options
|
||||
together. Using those compilers, you cannot generate optimized
|
||||
executables containing debugging information.
|
||||
@@ -1821,22 +1822,7 @@ executables containing debugging informa
|
||||
@@ -1833,22 +1834,7 @@ executables containing debugging informa
|
||||
without @samp{-O}, making it possible to debug optimized code. We
|
||||
recommend that you @emph{always} use @samp{-g} whenever you compile a
|
||||
program. You may think your program is correct, but there is no sense
|
||||
@ -404,7 +404,7 @@ Index: gdb-6.8.50.20090209/gdb/doc/gdb.texinfo
|
||||
|
||||
Older versions of the @sc{gnu} C compiler permitted a variant option
|
||||
@w{@samp{-gg}} for debugging information. @value{GDBN} no longer supports this
|
||||
@@ -8297,6 +8283,107 @@ $1 = 1
|
||||
@@ -8393,6 +8379,107 @@ $1 = 1
|
||||
$2 = (void *) 0x8049560
|
||||
@end smallexample
|
||||
|
||||
@ -512,10 +512,10 @@ Index: gdb-6.8.50.20090209/gdb/doc/gdb.texinfo
|
||||
@node Macros
|
||||
@chapter C Preprocessor Macros
|
||||
|
||||
Index: gdb-6.8.50.20090209/gdb/dwarf2loc.c
|
||||
Index: gdb-6.8.50.20090226/gdb/dwarf2loc.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/dwarf2loc.c 2009-02-09 15:38:54.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/dwarf2loc.c 2009-02-09 16:06:00.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/dwarf2loc.c 2009-02-27 00:04:32.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/dwarf2loc.c 2009-02-28 07:34:09.000000000 +0100
|
||||
@@ -31,6 +31,7 @@
|
||||
#include "regcache.h"
|
||||
#include "objfiles.h"
|
||||
@ -536,19 +536,19 @@ Index: gdb-6.8.50.20090209/gdb/dwarf2loc.c
|
||||
|
||||
/* If we found a frame-relative symbol then it was certainly within
|
||||
some function associated with a frame. If we can't find the frame,
|
||||
Index: gdb-6.8.50.20090209/gdb/dwarf2read.c
|
||||
Index: gdb-6.8.50.20090226/gdb/dwarf2read.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/dwarf2read.c 2009-02-09 16:03:46.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/dwarf2read.c 2009-02-09 16:06:00.000000000 +0100
|
||||
@@ -46,6 +46,7 @@
|
||||
#include "hashtab.h"
|
||||
#include "command.h"
|
||||
#include "gdbcmd.h"
|
||||
+#include "block.h"
|
||||
--- gdb-6.8.50.20090226.orig/gdb/dwarf2read.c 2009-02-28 07:33:47.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/dwarf2read.c 2009-02-28 07:36:45.000000000 +0100
|
||||
@@ -49,6 +49,7 @@
|
||||
#include "addrmap.h"
|
||||
#include "f-lang.h"
|
||||
#include "top.h"
|
||||
+#include "block.h"
|
||||
|
||||
@@ -2788,12 +2789,8 @@ process_die (struct die_info *die, struc
|
||||
#include <fcntl.h>
|
||||
#include "gdb_string.h"
|
||||
@@ -2947,12 +2948,8 @@ process_die (struct die_info *die, struc
|
||||
read_file_scope (die, cu);
|
||||
break;
|
||||
case DW_TAG_subprogram:
|
||||
@ -562,15 +562,11 @@ Index: gdb-6.8.50.20090209/gdb/dwarf2read.c
|
||||
break;
|
||||
case DW_TAG_lexical_block:
|
||||
case DW_TAG_try_block:
|
||||
@@ -3056,10 +3053,25 @@ read_func_scope (struct die_info *die, s
|
||||
CORE_ADDR lowpc;
|
||||
CORE_ADDR highpc;
|
||||
struct die_info *child_die;
|
||||
- struct attribute *attr;
|
||||
+ struct attribute *attr, *call_line, *call_file;
|
||||
char *name;
|
||||
@@ -3233,6 +3230,22 @@ read_func_scope (struct die_info *die, s
|
||||
CORE_ADDR baseaddr;
|
||||
struct block *block;
|
||||
unsigned die_children;
|
||||
+ struct attribute *call_line, *call_file;
|
||||
+ int inlined_func = (die->tag == DW_TAG_inlined_subroutine);
|
||||
+
|
||||
+ if (inlined_func)
|
||||
@ -589,7 +585,7 @@ Index: gdb-6.8.50.20090209/gdb/dwarf2read.c
|
||||
|
||||
baseaddr = ANOFFSET (objfile->section_offsets, SECT_OFF_TEXT (objfile));
|
||||
|
||||
@@ -6949,6 +6961,9 @@ die_specification (struct die_info *die,
|
||||
@@ -7310,6 +7323,9 @@ die_specification (struct die_info *die,
|
||||
*spec_cu);
|
||||
|
||||
if (spec_attr == NULL)
|
||||
@ -599,7 +595,7 @@ Index: gdb-6.8.50.20090209/gdb/dwarf2read.c
|
||||
return NULL;
|
||||
else
|
||||
return follow_die_ref (die, spec_attr, spec_cu);
|
||||
@@ -7632,6 +7647,7 @@ new_symbol (struct die_info *die, struct
|
||||
@@ -7993,6 +8009,7 @@ new_symbol (struct die_info *die, struct
|
||||
struct attribute *attr = NULL;
|
||||
struct attribute *attr2 = NULL;
|
||||
CORE_ADDR baseaddr;
|
||||
@ -607,7 +603,7 @@ Index: gdb-6.8.50.20090209/gdb/dwarf2read.c
|
||||
|
||||
baseaddr = ANOFFSET (objfile->section_offsets, SECT_OFF_TEXT (objfile));
|
||||
|
||||
@@ -7661,13 +7677,17 @@ new_symbol (struct die_info *die, struct
|
||||
@@ -8022,13 +8039,17 @@ new_symbol (struct die_info *die, struct
|
||||
SYMBOL_TYPE (sym) = type;
|
||||
else
|
||||
SYMBOL_TYPE (sym) = die_type (die, cu);
|
||||
@ -627,7 +623,7 @@ Index: gdb-6.8.50.20090209/gdb/dwarf2read.c
|
||||
if (attr)
|
||||
{
|
||||
int file_index = DW_UNSND (attr);
|
||||
@@ -7714,6 +7734,14 @@ new_symbol (struct die_info *die, struct
|
||||
@@ -8075,6 +8096,14 @@ new_symbol (struct die_info *die, struct
|
||||
add_symbol_to_list (sym, cu->list_in_scope);
|
||||
}
|
||||
break;
|
||||
@ -642,7 +638,7 @@ Index: gdb-6.8.50.20090209/gdb/dwarf2read.c
|
||||
case DW_TAG_variable:
|
||||
/* Compilation with minimal debug info may result in variables
|
||||
with missing type entries. Change the misleading `void' type
|
||||
@@ -7761,7 +7789,14 @@ new_symbol (struct die_info *die, struct
|
||||
@@ -8130,7 +8159,14 @@ new_symbol (struct die_info *die, struct
|
||||
}
|
||||
break;
|
||||
case DW_TAG_formal_parameter:
|
||||
@ -658,10 +654,10 @@ Index: gdb-6.8.50.20090209/gdb/dwarf2read.c
|
||||
attr = dwarf2_attr (die, DW_AT_location, cu);
|
||||
if (attr)
|
||||
{
|
||||
Index: gdb-6.8.50.20090209/gdb/frame-unwind.c
|
||||
Index: gdb-6.8.50.20090226/gdb/frame-unwind.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/frame-unwind.c 2009-01-03 06:57:51.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/frame-unwind.c 2009-02-09 16:06:00.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/frame-unwind.c 2009-01-03 06:57:51.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/frame-unwind.c 2009-02-28 07:34:09.000000000 +0100
|
||||
@@ -21,6 +21,7 @@
|
||||
#include "frame.h"
|
||||
#include "frame-unwind.h"
|
||||
@ -682,10 +678,10 @@ Index: gdb-6.8.50.20090209/gdb/frame-unwind.c
|
||||
return table;
|
||||
}
|
||||
|
||||
Index: gdb-6.8.50.20090209/gdb/frame.c
|
||||
Index: gdb-6.8.50.20090226/gdb/frame.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/frame.c 2009-02-09 15:48:46.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/frame.c 2009-02-09 16:06:00.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/frame.c 2009-02-28 07:22:02.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/frame.c 2009-02-28 07:34:09.000000000 +0100
|
||||
@@ -41,8 +41,14 @@
|
||||
#include "objfiles.h"
|
||||
#include "exceptions.h"
|
||||
@ -1042,10 +1038,10 @@ Index: gdb-6.8.50.20090209/gdb/frame.c
|
||||
}
|
||||
|
||||
/* Per "frame.h", return the ``address'' of the frame. Code should
|
||||
Index: gdb-6.8.50.20090209/gdb/frame.h
|
||||
Index: gdb-6.8.50.20090226/gdb/frame.h
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/frame.h 2009-02-05 18:28:20.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/frame.h 2009-02-09 16:06:00.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/frame.h 2009-02-05 18:28:20.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/frame.h 2009-02-28 07:34:09.000000000 +0100
|
||||
@@ -34,6 +34,9 @@
|
||||
frame_unwind_WHAT...(): Unwind THIS frame's WHAT from the NEXT
|
||||
frame.
|
||||
@ -1107,10 +1103,10 @@ Index: gdb-6.8.50.20090209/gdb/frame.h
|
||||
extern struct frame_id frame_unwind_id (struct frame_info *next_frame);
|
||||
|
||||
/* Assuming that a frame is `normal', return its base-address, or 0 if
|
||||
Index: gdb-6.8.50.20090209/gdb/gdbthread.h
|
||||
Index: gdb-6.8.50.20090226/gdb/gdbthread.h
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/gdbthread.h 2009-01-18 18:42:16.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/gdbthread.h 2009-02-09 16:06:00.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/gdbthread.h 2009-02-27 00:04:32.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/gdbthread.h 2009-02-28 07:34:09.000000000 +0100
|
||||
@@ -83,6 +83,13 @@ struct thread_info
|
||||
This is how we know when we step into a subroutine call, and how
|
||||
to set the frame for the breakpoint used to step out. */
|
||||
@ -1125,11 +1121,11 @@ Index: gdb-6.8.50.20090209/gdb/gdbthread.h
|
||||
int current_line;
|
||||
struct symtab *current_symtab;
|
||||
|
||||
Index: gdb-6.8.50.20090209/gdb/infcall.c
|
||||
Index: gdb-6.8.50.20090226/gdb/infcall.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/infcall.c 2009-01-19 20:05:00.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/infcall.c 2009-02-09 16:08:45.000000000 +0100
|
||||
@@ -841,15 +841,8 @@ When the function is done executing, GDB
|
||||
--- gdb-6.8.50.20090226.orig/gdb/infcall.c 2009-02-27 00:04:32.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/infcall.c 2009-02-28 07:34:09.000000000 +0100
|
||||
@@ -898,15 +898,8 @@ The program being debugged exited while
|
||||
|
||||
if (unwind_on_signal_p)
|
||||
{
|
||||
@ -1147,10 +1143,10 @@ Index: gdb-6.8.50.20090209/gdb/infcall.c
|
||||
|
||||
/* FIXME: Insert a bunch of wrap_here; name can be very
|
||||
long if it's a C++ name with arguments and stuff. */
|
||||
Index: gdb-6.8.50.20090209/gdb/infcmd.c
|
||||
Index: gdb-6.8.50.20090226/gdb/infcmd.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/infcmd.c 2009-01-26 00:35:51.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/infcmd.c 2009-02-09 16:06:00.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/infcmd.c 2009-02-27 00:04:32.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/infcmd.c 2009-02-28 07:34:09.000000000 +0100
|
||||
@@ -52,6 +52,7 @@
|
||||
#include "cli/cli-decode.h"
|
||||
#include "gdbthread.h"
|
||||
@ -1159,7 +1155,7 @@ Index: gdb-6.8.50.20090209/gdb/infcmd.c
|
||||
|
||||
/* Functions exported for general use, in inferior.h: */
|
||||
|
||||
@@ -739,6 +740,17 @@ Can't resume all threads and specify pro
|
||||
@@ -744,6 +745,17 @@ Can't resume all threads and specify pro
|
||||
continue_1 (all_threads);
|
||||
}
|
||||
|
||||
@ -1177,7 +1173,7 @@ Index: gdb-6.8.50.20090209/gdb/infcmd.c
|
||||
/* Step until outside of current statement. */
|
||||
|
||||
static void
|
||||
@@ -916,6 +928,20 @@ step_once (int skip_subroutines, int sin
|
||||
@@ -921,6 +933,20 @@ step_once (int skip_subroutines, int sin
|
||||
THREAD is set. */
|
||||
struct thread_info *tp = inferior_thread ();
|
||||
clear_proceed_status ();
|
||||
@ -1198,7 +1194,7 @@ Index: gdb-6.8.50.20090209/gdb/infcmd.c
|
||||
|
||||
frame = get_current_frame ();
|
||||
tp->step_frame_id = get_frame_id (frame);
|
||||
@@ -1168,6 +1194,7 @@ until_next_command (int from_tty)
|
||||
@@ -1173,6 +1199,7 @@ until_next_command (int from_tty)
|
||||
clear_proceed_status ();
|
||||
|
||||
frame = get_current_frame ();
|
||||
@ -1206,7 +1202,7 @@ Index: gdb-6.8.50.20090209/gdb/infcmd.c
|
||||
|
||||
/* Step until either exited from this function or greater
|
||||
than the current line (if in symbolic section) or pc (if
|
||||
@@ -1195,7 +1222,6 @@ until_next_command (int from_tty)
|
||||
@@ -1200,7 +1227,6 @@ until_next_command (int from_tty)
|
||||
}
|
||||
|
||||
tp->step_over_calls = STEP_OVER_ALL;
|
||||
@ -1214,7 +1210,7 @@ Index: gdb-6.8.50.20090209/gdb/infcmd.c
|
||||
|
||||
tp->step_multi = 0; /* Only one call to proceed */
|
||||
|
||||
@@ -1528,6 +1554,37 @@ finish_command (char *arg, int from_tty)
|
||||
@@ -1533,6 +1559,37 @@ finish_command (char *arg, int from_tty)
|
||||
|
||||
clear_proceed_status ();
|
||||
|
||||
@ -1252,10 +1248,10 @@ Index: gdb-6.8.50.20090209/gdb/infcmd.c
|
||||
/* Find the function we will return from. */
|
||||
|
||||
function = find_pc_function (get_frame_pc (get_selected_frame (NULL)));
|
||||
Index: gdb-6.8.50.20090209/gdb/inferior.h
|
||||
Index: gdb-6.8.50.20090226/gdb/inferior.h
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/inferior.h 2009-02-09 15:39:01.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/inferior.h 2009-02-09 16:06:00.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/inferior.h 2009-02-27 00:04:34.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/inferior.h 2009-02-28 07:34:09.000000000 +0100
|
||||
@@ -259,6 +259,9 @@ extern void error_is_running (void);
|
||||
/* Calls error_is_running if the current thread is running. */
|
||||
extern void ensure_not_running (void);
|
||||
@ -1266,10 +1262,10 @@ Index: gdb-6.8.50.20090209/gdb/inferior.h
|
||||
/* From infcmd.c */
|
||||
|
||||
extern void tty_command (char *, int);
|
||||
Index: gdb-6.8.50.20090209/gdb/infrun.c
|
||||
Index: gdb-6.8.50.20090226/gdb/infrun.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/infrun.c 2009-02-09 16:02:31.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/infrun.c 2009-02-09 16:09:19.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/infrun.c 2009-02-28 07:31:50.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/infrun.c 2009-02-28 07:37:36.000000000 +0100
|
||||
@@ -48,6 +48,7 @@
|
||||
#include "gdb_assert.h"
|
||||
#include "mi/mi-common.h"
|
||||
@ -1287,7 +1283,7 @@ Index: gdb-6.8.50.20090209/gdb/infrun.c
|
||||
|
||||
/* Command list pointer for the "stop" placeholder. */
|
||||
|
||||
@@ -1146,6 +1147,8 @@ a command like `return' or `jump' to con
|
||||
@@ -1151,6 +1152,8 @@ a command like `return' or `jump' to con
|
||||
step = 0;
|
||||
}
|
||||
|
||||
@ -1296,7 +1292,7 @@ Index: gdb-6.8.50.20090209/gdb/infrun.c
|
||||
if (debug_displaced
|
||||
&& use_displaced_stepping (gdbarch)
|
||||
&& tp->trap_expected)
|
||||
@@ -1187,6 +1190,7 @@ clear_proceed_status_thread (struct thre
|
||||
@@ -1192,6 +1195,7 @@ clear_proceed_status_thread (struct thre
|
||||
tp->step_range_start = 0;
|
||||
tp->step_range_end = 0;
|
||||
tp->step_frame_id = null_frame_id;
|
||||
@ -1304,7 +1300,7 @@ Index: gdb-6.8.50.20090209/gdb/infrun.c
|
||||
tp->step_over_calls = STEP_OVER_UNDEBUGGABLE;
|
||||
tp->stop_requested = 0;
|
||||
|
||||
@@ -1531,6 +1535,9 @@ init_wait_for_inferior (void)
|
||||
@@ -1536,6 +1540,9 @@ init_wait_for_inferior (void)
|
||||
init_infwait_state ();
|
||||
|
||||
displaced_step_clear ();
|
||||
@ -1314,7 +1310,7 @@ Index: gdb-6.8.50.20090209/gdb/infrun.c
|
||||
}
|
||||
|
||||
|
||||
@@ -1586,7 +1593,7 @@ struct execution_control_state
|
||||
@@ -1591,7 +1598,7 @@ struct execution_control_state
|
||||
int wait_some_more;
|
||||
};
|
||||
|
||||
@ -1323,7 +1319,7 @@ Index: gdb-6.8.50.20090209/gdb/infrun.c
|
||||
|
||||
void handle_inferior_event (struct execution_control_state *ecs);
|
||||
|
||||
@@ -1944,10 +1951,21 @@ fetch_inferior_event (void *client_data)
|
||||
@@ -1949,10 +1956,21 @@ fetch_inferior_event (void *client_data)
|
||||
display_gdb_prompt (0);
|
||||
}
|
||||
|
||||
@ -1346,7 +1342,7 @@ Index: gdb-6.8.50.20090209/gdb/infrun.c
|
||||
init_execution_control_state (struct execution_control_state *ecs)
|
||||
{
|
||||
ecs->random_signal = 0;
|
||||
@@ -1958,16 +1976,10 @@ init_execution_control_state (struct exe
|
||||
@@ -1963,16 +1981,10 @@ init_execution_control_state (struct exe
|
||||
void
|
||||
init_thread_stepping_state (struct thread_info *tss)
|
||||
{
|
||||
@ -1363,8 +1359,8 @@ Index: gdb-6.8.50.20090209/gdb/infrun.c
|
||||
}
|
||||
|
||||
/* Return the cached copy of the last pid/waitstatus returned by
|
||||
@@ -2137,6 +2149,22 @@ ensure_not_running (void)
|
||||
error_is_running ();
|
||||
@@ -2186,6 +2198,22 @@ deal_with_syscall_event (struct executio
|
||||
}
|
||||
}
|
||||
|
||||
+static int
|
||||
@ -1386,7 +1382,7 @@ Index: gdb-6.8.50.20090209/gdb/infrun.c
|
||||
/* Given an execution control state that has been freshly filled in
|
||||
by an event from the inferior, figure out what it means and take
|
||||
appropriate action. */
|
||||
@@ -2828,6 +2856,12 @@ targets should add new threads to the th
|
||||
@@ -2880,6 +2908,12 @@ targets should add new threads to the th
|
||||
ecs->random_signal = 0;
|
||||
stopped_by_random_signal = 0;
|
||||
|
||||
@ -1399,7 +1395,7 @@ Index: gdb-6.8.50.20090209/gdb/infrun.c
|
||||
if (ecs->event_thread->stop_signal == TARGET_SIGNAL_TRAP
|
||||
&& ecs->event_thread->trap_expected
|
||||
&& gdbarch_single_step_through_delay_p (current_gdbarch)
|
||||
@@ -3060,8 +3094,8 @@ process_event_stop_test:
|
||||
@@ -3112,8 +3146,8 @@ process_event_stop_test:
|
||||
&& ecs->event_thread->stop_signal != TARGET_SIGNAL_0
|
||||
&& (ecs->event_thread->step_range_start <= stop_pc
|
||||
&& stop_pc < ecs->event_thread->step_range_end)
|
||||
@ -1410,7 +1406,7 @@ Index: gdb-6.8.50.20090209/gdb/infrun.c
|
||||
&& ecs->event_thread->step_resume_breakpoint == NULL)
|
||||
{
|
||||
/* The inferior is about to take a signal that will take it
|
||||
@@ -3447,10 +3481,10 @@ infrun: BPSTAT_WHAT_SET_LONGJMP_RESUME (
|
||||
@@ -3499,10 +3533,10 @@ infrun: BPSTAT_WHAT_SET_LONGJMP_RESUME (
|
||||
NOTE: frame_id_eq will never report two invalid frame IDs as
|
||||
being equal, so to get into this block, both the current and
|
||||
previous frame must have valid frame IDs. */
|
||||
@ -1424,7 +1420,7 @@ Index: gdb-6.8.50.20090209/gdb/infrun.c
|
||||
|| execution_direction == EXEC_REVERSE))
|
||||
{
|
||||
CORE_ADDR real_stop_pc;
|
||||
@@ -3693,6 +3727,82 @@ infrun: BPSTAT_WHAT_SET_LONGJMP_RESUME (
|
||||
@@ -3745,6 +3779,82 @@ infrun: BPSTAT_WHAT_SET_LONGJMP_RESUME (
|
||||
return;
|
||||
}
|
||||
|
||||
@ -1507,7 +1503,7 @@ Index: gdb-6.8.50.20090209/gdb/infrun.c
|
||||
if ((stop_pc == stop_pc_sal.pc)
|
||||
&& (ecs->event_thread->current_line != stop_pc_sal.line
|
||||
|| ecs->event_thread->current_symtab != stop_pc_sal.symtab))
|
||||
@@ -3718,9 +3828,7 @@ infrun: BPSTAT_WHAT_SET_LONGJMP_RESUME (
|
||||
@@ -3770,9 +3880,7 @@ infrun: BPSTAT_WHAT_SET_LONGJMP_RESUME (
|
||||
|
||||
ecs->event_thread->step_range_start = stop_pc_sal.pc;
|
||||
ecs->event_thread->step_range_end = stop_pc_sal.end;
|
||||
@ -1518,7 +1514,7 @@ Index: gdb-6.8.50.20090209/gdb/infrun.c
|
||||
|
||||
if (debug_infrun)
|
||||
fprintf_unfiltered (gdb_stdlog, "infrun: keep going\n");
|
||||
@@ -4987,6 +5095,7 @@ struct inferior_status
|
||||
@@ -5024,6 +5132,7 @@ struct inferior_status
|
||||
CORE_ADDR step_range_start;
|
||||
CORE_ADDR step_range_end;
|
||||
struct frame_id step_frame_id;
|
||||
@ -1526,7 +1522,7 @@ Index: gdb-6.8.50.20090209/gdb/infrun.c
|
||||
enum step_over_calls_kind step_over_calls;
|
||||
CORE_ADDR step_resume_break_address;
|
||||
int stop_after_trap;
|
||||
@@ -5016,6 +5125,7 @@ save_inferior_status (void)
|
||||
@@ -5053,6 +5162,7 @@ save_inferior_status (void)
|
||||
inf_status->step_range_start = tp->step_range_start;
|
||||
inf_status->step_range_end = tp->step_range_end;
|
||||
inf_status->step_frame_id = tp->step_frame_id;
|
||||
@ -1534,7 +1530,7 @@ Index: gdb-6.8.50.20090209/gdb/infrun.c
|
||||
inf_status->step_over_calls = tp->step_over_calls;
|
||||
inf_status->stop_after_trap = stop_after_trap;
|
||||
inf_status->stop_soon = inf->stop_soon;
|
||||
@@ -5069,6 +5179,7 @@ restore_inferior_status (struct inferior
|
||||
@@ -5106,6 +5216,7 @@ restore_inferior_status (struct inferior
|
||||
tp->step_range_start = inf_status->step_range_start;
|
||||
tp->step_range_end = inf_status->step_range_end;
|
||||
tp->step_frame_id = inf_status->step_frame_id;
|
||||
@ -1542,10 +1538,10 @@ Index: gdb-6.8.50.20090209/gdb/infrun.c
|
||||
tp->step_over_calls = inf_status->step_over_calls;
|
||||
stop_after_trap = inf_status->stop_after_trap;
|
||||
inf->stop_soon = inf_status->stop_soon;
|
||||
Index: gdb-6.8.50.20090209/gdb/inline-frame.c
|
||||
Index: gdb-6.8.50.20090226/gdb/inline-frame.c
|
||||
===================================================================
|
||||
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
||||
+++ gdb-6.8.50.20090209/gdb/inline-frame.c 2009-02-09 16:06:00.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/inline-frame.c 2009-02-28 07:34:09.000000000 +0100
|
||||
@@ -0,0 +1,382 @@
|
||||
+/* Inline frame unwinder for GDB.
|
||||
+
|
||||
@ -1929,10 +1925,10 @@ Index: gdb-6.8.50.20090209/gdb/inline-frame.c
|
||||
+
|
||||
+ return inline_count;
|
||||
+}
|
||||
Index: gdb-6.8.50.20090209/gdb/inline-frame.h
|
||||
Index: gdb-6.8.50.20090226/gdb/inline-frame.h
|
||||
===================================================================
|
||||
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
||||
+++ gdb-6.8.50.20090209/gdb/inline-frame.h 2009-02-09 16:06:00.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/inline-frame.h 2009-02-28 07:34:09.000000000 +0100
|
||||
@@ -0,0 +1,62 @@
|
||||
+/* Definitions for inline frame support.
|
||||
+
|
||||
@ -1996,10 +1992,10 @@ Index: gdb-6.8.50.20090209/gdb/inline-frame.h
|
||||
+int frame_inlined_callees (struct frame_info *this_frame);
|
||||
+
|
||||
+#endif /* !defined (INLINE_FRAME_H) */
|
||||
Index: gdb-6.8.50.20090209/gdb/minsyms.c
|
||||
Index: gdb-6.8.50.20090226/gdb/minsyms.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/minsyms.c 2009-02-09 16:02:28.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/minsyms.c 2009-02-09 16:06:00.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/minsyms.c 2009-02-28 07:31:49.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/minsyms.c 2009-02-28 07:34:09.000000000 +0100
|
||||
@@ -767,7 +767,7 @@ prim_record_minimal_symbol_and_info (con
|
||||
|
||||
if (msym_bunch_index == BUNCH_SIZE)
|
||||
@ -2009,10 +2005,10 @@ Index: gdb-6.8.50.20090209/gdb/minsyms.c
|
||||
msym_bunch_index = 0;
|
||||
new->next = msym_bunch;
|
||||
msym_bunch = new;
|
||||
Index: gdb-6.8.50.20090209/gdb/s390-tdep.c
|
||||
Index: gdb-6.8.50.20090226/gdb/s390-tdep.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/s390-tdep.c 2009-01-03 06:57:53.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/s390-tdep.c 2009-02-09 16:06:00.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/s390-tdep.c 2009-02-22 02:02:19.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/s390-tdep.c 2009-02-28 07:34:09.000000000 +0100
|
||||
@@ -1182,6 +1182,7 @@ s390_prologue_frame_unwind_cache (struct
|
||||
CORE_ADDR prev_sp;
|
||||
int frame_pointer;
|
||||
@ -2046,10 +2042,10 @@ Index: gdb-6.8.50.20090209/gdb/s390-tdep.c
|
||||
|| get_frame_type (get_next_frame (this_frame)) != NORMAL_FRAME))
|
||||
{
|
||||
/* See the comment in s390_in_function_epilogue_p on why this is
|
||||
Index: gdb-6.8.50.20090209/gdb/stack.c
|
||||
Index: gdb-6.8.50.20090226/gdb/stack.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/stack.c 2009-01-26 20:09:58.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/stack.c 2009-02-09 16:06:00.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/stack.c 2009-02-27 00:04:32.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/stack.c 2009-02-28 07:35:20.000000000 +0100
|
||||
@@ -45,6 +45,7 @@
|
||||
#include "valprint.h"
|
||||
#include "gdbthread.h"
|
||||
@ -2089,7 +2085,7 @@ Index: gdb-6.8.50.20090209/gdb/stack.c
|
||||
/* Show or print a stack frame FRAME briefly. The output is format
|
||||
according to PRINT_LEVEL and PRINT_WHAT printing the frame's
|
||||
relative level, function name, argument list, and file name and
|
||||
@@ -537,7 +562,7 @@ print_frame_info (struct frame_info *fra
|
||||
@@ -538,7 +563,7 @@ print_frame_info (struct frame_info *fra
|
||||
{
|
||||
int done = 0;
|
||||
int mid_statement = ((print_what == SRC_LINE)
|
||||
@ -2098,16 +2094,16 @@ Index: gdb-6.8.50.20090209/gdb/stack.c
|
||||
|
||||
if (annotation_level)
|
||||
done = identify_source_line (sal.symtab, sal.line, mid_statement,
|
||||
@@ -594,7 +619,7 @@ print_frame (struct frame_info *frame, i
|
||||
stb = ui_out_stream_new (uiout);
|
||||
old_chain = make_cleanup_ui_out_stream_delete (stb);
|
||||
@@ -591,7 +616,7 @@ find_frame_funname (struct frame_info *f
|
||||
*funname = NULL;
|
||||
*funlang = language_unknown;
|
||||
|
||||
- func = find_pc_function (get_frame_address_in_block (frame));
|
||||
+ func = get_frame_function (frame);
|
||||
if (func)
|
||||
{
|
||||
/* In certain pathological cases, the symtabs give the wrong
|
||||
@@ -615,8 +640,13 @@ print_frame (struct frame_info *frame, i
|
||||
@@ -612,8 +637,13 @@ find_frame_funname (struct frame_info *f
|
||||
changed (and we'll create a find_pc_minimal_function or some
|
||||
such). */
|
||||
|
||||
@ -2123,7 +2119,7 @@ Index: gdb-6.8.50.20090209/gdb/stack.c
|
||||
|
||||
if (msymbol != NULL
|
||||
&& (SYMBOL_VALUE_ADDRESS (msymbol)
|
||||
@@ -673,7 +703,7 @@ print_frame (struct frame_info *frame, i
|
||||
@@ -687,7 +717,7 @@ print_frame (struct frame_info *frame, i
|
||||
}
|
||||
get_user_print_options (&opts);
|
||||
if (opts.addressprint)
|
||||
@ -2132,7 +2128,7 @@ Index: gdb-6.8.50.20090209/gdb/stack.c
|
||||
|| print_what == LOC_AND_ADDRESS)
|
||||
{
|
||||
annotate_frame_address ();
|
||||
@@ -853,8 +883,16 @@ parse_frame_specification_1 (const char
|
||||
@@ -867,8 +897,16 @@ parse_frame_specification_1 (const char
|
||||
{
|
||||
if (frame_id_eq (id, get_frame_id (fid)))
|
||||
{
|
||||
@ -2151,7 +2147,7 @@ Index: gdb-6.8.50.20090209/gdb/stack.c
|
||||
return fid;
|
||||
}
|
||||
}
|
||||
@@ -988,8 +1026,10 @@ frame_info (char *addr_exp, int from_tty
|
||||
@@ -1002,8 +1040,10 @@ frame_info (char *addr_exp, int from_tty
|
||||
printf_filtered (_(" Outermost frame: %s\n"),
|
||||
frame_stop_reason_string (reason));
|
||||
}
|
||||
@ -2164,7 +2160,7 @@ Index: gdb-6.8.50.20090209/gdb/stack.c
|
||||
{
|
||||
printf_filtered (" called by frame at ");
|
||||
fputs_filtered (paddress (get_frame_base (calling_frame_info)),
|
||||
@@ -1449,7 +1489,9 @@ print_frame_local_vars (struct frame_inf
|
||||
@@ -1465,7 +1505,9 @@ print_frame_local_vars (struct frame_inf
|
||||
if (print_block_frame_locals (block, frame, num_tabs, stream))
|
||||
values_printed = 1;
|
||||
/* After handling the function's top-level block, stop. Don't
|
||||
@ -2175,7 +2171,7 @@ Index: gdb-6.8.50.20090209/gdb/stack.c
|
||||
if (BLOCK_FUNCTION (block))
|
||||
break;
|
||||
block = BLOCK_SUPERBLOCK (block);
|
||||
@@ -1520,7 +1562,9 @@ print_frame_label_vars (struct frame_inf
|
||||
@@ -1536,7 +1578,9 @@ print_frame_label_vars (struct frame_inf
|
||||
return;
|
||||
|
||||
/* After handling the function's top-level block, stop. Don't
|
||||
@ -2186,7 +2182,7 @@ Index: gdb-6.8.50.20090209/gdb/stack.c
|
||||
if (BLOCK_FUNCTION (block))
|
||||
break;
|
||||
block = BLOCK_SUPERBLOCK (block);
|
||||
@@ -1790,6 +1834,9 @@ return_command (char *retval_exp, int fr
|
||||
@@ -1874,6 +1918,9 @@ return_command (char *retval_exp, int fr
|
||||
thisframe = get_selected_frame ("No selected frame.");
|
||||
thisfun = get_frame_function (thisframe);
|
||||
|
||||
@ -2196,11 +2192,11 @@ Index: gdb-6.8.50.20090209/gdb/stack.c
|
||||
/* Compute the return value. If the computation triggers an error,
|
||||
let it bail. If the return type can't be handled, set
|
||||
RETURN_VALUE to NULL, and QUERY_PREFIX to an informational
|
||||
Index: gdb-6.8.50.20090209/gdb/symtab.c
|
||||
Index: gdb-6.8.50.20090226/gdb/symtab.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/symtab.c 2009-02-09 16:02:29.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/symtab.c 2009-02-09 16:06:00.000000000 +0100
|
||||
@@ -1373,10 +1373,13 @@ lookup_symbol_aux_local (const char *nam
|
||||
--- gdb-6.8.50.20090226.orig/gdb/symtab.c 2009-02-28 07:31:49.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/symtab.c 2009-02-28 07:34:09.000000000 +0100
|
||||
@@ -1408,10 +1408,13 @@ lookup_symbol_aux_local (const char *nam
|
||||
sym = lookup_symbol_aux_block (name, linkage_name, block, domain);
|
||||
if (sym != NULL)
|
||||
return sym;
|
||||
@ -2215,7 +2211,7 @@ Index: gdb-6.8.50.20090209/gdb/symtab.c
|
||||
|
||||
return NULL;
|
||||
}
|
||||
@@ -2609,6 +2612,7 @@ find_function_start_sal (struct symbol *
|
||||
@@ -2668,6 +2671,7 @@ find_function_start_sal (struct symbol *
|
||||
|
||||
CORE_ADDR pc;
|
||||
struct symtab_and_line sal;
|
||||
@ -2223,7 +2219,7 @@ Index: gdb-6.8.50.20090209/gdb/symtab.c
|
||||
|
||||
pc = BLOCK_START (block);
|
||||
fixup_symbol_section (sym, objfile);
|
||||
@@ -2647,6 +2651,25 @@ find_function_start_sal (struct symbol *
|
||||
@@ -2706,6 +2710,25 @@ find_function_start_sal (struct symbol *
|
||||
|
||||
sal.pc = pc;
|
||||
|
||||
@ -2249,7 +2245,7 @@ Index: gdb-6.8.50.20090209/gdb/symtab.c
|
||||
return sal;
|
||||
}
|
||||
|
||||
@@ -3669,6 +3692,24 @@ add_macro_name (const char *name, const
|
||||
@@ -3728,6 +3751,24 @@ add_macro_name (const char *name, const
|
||||
datum->text, datum->word);
|
||||
}
|
||||
|
||||
@ -2274,7 +2270,7 @@ Index: gdb-6.8.50.20090209/gdb/symtab.c
|
||||
char **
|
||||
default_make_symbol_completion_list (char *text, char *word)
|
||||
{
|
||||
@@ -3681,9 +3722,9 @@ default_make_symbol_completion_list (cha
|
||||
@@ -3740,9 +3781,9 @@ default_make_symbol_completion_list (cha
|
||||
struct partial_symtab *ps;
|
||||
struct minimal_symbol *msymbol;
|
||||
struct objfile *objfile;
|
||||
@ -2286,7 +2282,7 @@ Index: gdb-6.8.50.20090209/gdb/symtab.c
|
||||
struct partial_symbol **psym;
|
||||
/* The symbol we are completing on. Points in same buffer as text. */
|
||||
char *sym_text;
|
||||
@@ -3793,41 +3834,43 @@ default_make_symbol_completion_list (cha
|
||||
@@ -3852,41 +3893,43 @@ default_make_symbol_completion_list (cha
|
||||
}
|
||||
|
||||
/* Search upwards from currently selected frame (so that we can
|
||||
@ -2361,7 +2357,7 @@ Index: gdb-6.8.50.20090209/gdb/symtab.c
|
||||
|
||||
/* Go through the symtabs and check the externs and statics for
|
||||
symbols which match. */
|
||||
@@ -3846,9 +3889,6 @@ default_make_symbol_completion_list (cha
|
||||
@@ -3905,9 +3948,6 @@ default_make_symbol_completion_list (cha
|
||||
{
|
||||
QUIT;
|
||||
b = BLOCKVECTOR_BLOCK (BLOCKVECTOR (s), STATIC_BLOCK);
|
||||
@ -2371,7 +2367,7 @@ Index: gdb-6.8.50.20090209/gdb/symtab.c
|
||||
ALL_BLOCK_SYMBOLS (b, iter, sym)
|
||||
{
|
||||
COMPLETION_LIST_ADD_SYMBOL (sym, sym_text, sym_text_len, text, word);
|
||||
@@ -4315,6 +4355,25 @@ skip_prologue_using_sal (CORE_ADDR func_
|
||||
@@ -4374,6 +4414,25 @@ skip_prologue_using_sal (CORE_ADDR func_
|
||||
line mark the prologue -> body transition. */
|
||||
if (sal.line >= prologue_sal.line)
|
||||
break;
|
||||
@ -2397,11 +2393,11 @@ Index: gdb-6.8.50.20090209/gdb/symtab.c
|
||||
/* The case in which compiler's optimizer/scheduler has
|
||||
moved instructions into the prologue. We look ahead in
|
||||
the function looking for address ranges whose
|
||||
Index: gdb-6.8.50.20090209/gdb/symtab.h
|
||||
Index: gdb-6.8.50.20090226/gdb/symtab.h
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/symtab.h 2009-02-06 22:33:58.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/symtab.h 2009-02-09 16:06:00.000000000 +0100
|
||||
@@ -556,9 +556,18 @@ struct symbol
|
||||
--- gdb-6.8.50.20090226.orig/gdb/symtab.h 2009-02-27 00:04:32.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/symtab.h 2009-02-28 07:34:09.000000000 +0100
|
||||
@@ -559,9 +559,18 @@ struct symbol
|
||||
|
||||
unsigned is_argument : 1;
|
||||
|
||||
@ -2423,7 +2419,7 @@ Index: gdb-6.8.50.20090209/gdb/symtab.h
|
||||
|
||||
unsigned short line;
|
||||
|
||||
@@ -589,6 +598,7 @@ struct symbol
|
||||
@@ -592,6 +601,7 @@ struct symbol
|
||||
#define SYMBOL_DOMAIN(symbol) (symbol)->domain
|
||||
#define SYMBOL_CLASS(symbol) (symbol)->aclass
|
||||
#define SYMBOL_IS_ARGUMENT(symbol) (symbol)->is_argument
|
||||
@ -2431,10 +2427,10 @@ Index: gdb-6.8.50.20090209/gdb/symtab.h
|
||||
#define SYMBOL_TYPE(symbol) (symbol)->type
|
||||
#define SYMBOL_LINE(symbol) (symbol)->line
|
||||
#define SYMBOL_SYMTAB(symbol) (symbol)->symtab
|
||||
Index: gdb-6.8.50.20090209/gdb/testsuite/gdb.base/break.exp
|
||||
Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.base/break.exp
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/testsuite/gdb.base/break.exp 2009-01-19 20:05:01.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/testsuite/gdb.base/break.exp 2009-02-09 16:06:00.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/testsuite/gdb.base/break.exp 2009-01-19 20:05:01.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/testsuite/gdb.base/break.exp 2009-02-28 07:34:09.000000000 +0100
|
||||
@@ -880,6 +880,13 @@ gdb_expect {
|
||||
# marker4() is defined at line 46 when compiled with -DPROTOTYPES
|
||||
pass "run until breakpoint set at small function, optimized file (line bp_location14)"
|
||||
@ -2449,10 +2445,10 @@ Index: gdb-6.8.50.20090209/gdb/testsuite/gdb.base/break.exp
|
||||
-re ".*$gdb_prompt " {
|
||||
fail "run until breakpoint set at small function, optimized file"
|
||||
}
|
||||
Index: gdb-6.8.50.20090209/gdb/testsuite/gdb.cp/annota2.exp
|
||||
Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.cp/annota2.exp
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/testsuite/gdb.cp/annota2.exp 2009-01-03 06:58:04.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/testsuite/gdb.cp/annota2.exp 2009-02-09 16:06:00.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/testsuite/gdb.cp/annota2.exp 2009-01-03 06:58:04.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/testsuite/gdb.cp/annota2.exp 2009-02-28 07:34:09.000000000 +0100
|
||||
@@ -119,10 +119,11 @@ gdb_expect {
|
||||
# continue until exit
|
||||
# this will test:
|
||||
@ -2466,10 +2462,10 @@ Index: gdb-6.8.50.20090209/gdb/testsuite/gdb.cp/annota2.exp
|
||||
{ pass "continue until exit" }
|
||||
-re ".*$gdb_prompt$" { fail "continue to exit" }
|
||||
timeout { fail "continue to exit (timeout)" }
|
||||
Index: gdb-6.8.50.20090209/gdb/testsuite/gdb.opt/inline-bt.c
|
||||
Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-bt.c
|
||||
===================================================================
|
||||
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
||||
+++ gdb-6.8.50.20090209/gdb/testsuite/gdb.opt/inline-bt.c 2009-02-09 16:06:00.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-bt.c 2009-02-28 07:34:09.000000000 +0100
|
||||
@@ -0,0 +1,47 @@
|
||||
+/* Copyright (C) 2008 Free Software Foundation, Inc.
|
||||
+
|
||||
@ -2518,10 +2514,10 @@ Index: gdb-6.8.50.20090209/gdb/testsuite/gdb.opt/inline-bt.c
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
Index: gdb-6.8.50.20090209/gdb/testsuite/gdb.opt/inline-bt.exp
|
||||
Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-bt.exp
|
||||
===================================================================
|
||||
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
||||
+++ gdb-6.8.50.20090209/gdb/testsuite/gdb.opt/inline-bt.exp 2009-02-09 16:06:00.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-bt.exp 2009-02-28 07:34:09.000000000 +0100
|
||||
@@ -0,0 +1,63 @@
|
||||
+# Copyright 2008 Free Software Foundation, Inc.
|
||||
+
|
||||
@ -2586,10 +2582,10 @@ Index: gdb-6.8.50.20090209/gdb/testsuite/gdb.opt/inline-bt.exp
|
||||
+gdb_test "info frame" ".*inlined into frame.*" "func1 inlined (3)"
|
||||
+gdb_test "up" "#2 .*func2.*" "up from func1 (3)"
|
||||
+gdb_test "info frame" ".*inlined into frame.*" "func2 inlined (3)"
|
||||
Index: gdb-6.8.50.20090209/gdb/testsuite/gdb.opt/inline-cmds.c
|
||||
Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-cmds.c
|
||||
===================================================================
|
||||
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
||||
+++ gdb-6.8.50.20090209/gdb/testsuite/gdb.opt/inline-cmds.c 2009-02-09 16:06:00.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-cmds.c 2009-02-28 07:34:09.000000000 +0100
|
||||
@@ -0,0 +1,85 @@
|
||||
+/* Copyright (C) 2008 Free Software Foundation, Inc.
|
||||
+
|
||||
@ -2676,10 +2672,10 @@ Index: gdb-6.8.50.20090209/gdb/testsuite/gdb.opt/inline-cmds.c
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
Index: gdb-6.8.50.20090209/gdb/testsuite/gdb.opt/inline-cmds.exp
|
||||
Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-cmds.exp
|
||||
===================================================================
|
||||
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
||||
+++ gdb-6.8.50.20090209/gdb/testsuite/gdb.opt/inline-cmds.exp 2009-02-09 16:06:00.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-cmds.exp 2009-02-28 07:34:09.000000000 +0100
|
||||
@@ -0,0 +1,279 @@
|
||||
+# Copyright 2008 Free Software Foundation, Inc.
|
||||
+
|
||||
@ -2960,10 +2956,10 @@ Index: gdb-6.8.50.20090209/gdb/testsuite/gdb.opt/inline-cmds.exp
|
||||
+gdb_test "info frame" ".*inlined into frame.*" "outer_inline2 inlined"
|
||||
+gdb_test "up" "#4 main.*" "up from outer_inline2"
|
||||
+gdb_test "info frame" ".*\n caller of frame.*" "main not inlined"
|
||||
Index: gdb-6.8.50.20090209/gdb/testsuite/gdb.opt/inline-locals.c
|
||||
Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-locals.c
|
||||
===================================================================
|
||||
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
||||
+++ gdb-6.8.50.20090209/gdb/testsuite/gdb.opt/inline-locals.c 2009-02-09 16:06:00.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-locals.c 2009-02-28 07:34:09.000000000 +0100
|
||||
@@ -0,0 +1,52 @@
|
||||
+/* Copyright (C) 2008 Free Software Foundation, Inc.
|
||||
+
|
||||
@ -3017,10 +3013,10 @@ Index: gdb-6.8.50.20090209/gdb/testsuite/gdb.opt/inline-locals.c
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
Index: gdb-6.8.50.20090209/gdb/testsuite/gdb.opt/inline-locals.exp
|
||||
Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-locals.exp
|
||||
===================================================================
|
||||
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
||||
+++ gdb-6.8.50.20090209/gdb/testsuite/gdb.opt/inline-locals.exp 2009-02-09 16:06:00.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-locals.exp 2009-02-28 07:34:09.000000000 +0100
|
||||
@@ -0,0 +1,118 @@
|
||||
+# Copyright 2008 Free Software Foundation, Inc.
|
||||
+
|
||||
@ -3140,10 +3136,10 @@ Index: gdb-6.8.50.20090209/gdb/testsuite/gdb.opt/inline-locals.exp
|
||||
+}
|
||||
+
|
||||
+gdb_test "print array\[0\]" "\\\$$decimal = 184" "print local (3)"
|
||||
Index: gdb-6.8.50.20090209/gdb/testsuite/gdb.opt/inline-markers.c
|
||||
Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-markers.c
|
||||
===================================================================
|
||||
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
||||
+++ gdb-6.8.50.20090209/gdb/testsuite/gdb.opt/inline-markers.c 2009-02-09 16:06:00.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-markers.c 2009-02-28 07:34:09.000000000 +0100
|
||||
@@ -0,0 +1,36 @@
|
||||
+/* Copyright (C) 2008 Free Software Foundation, Inc.
|
||||
+
|
||||
@ -3181,11 +3177,11 @@ Index: gdb-6.8.50.20090209/gdb/testsuite/gdb.opt/inline-markers.c
|
||||
+{
|
||||
+ inlined_fn (); /* inlined */
|
||||
+}
|
||||
Index: gdb-6.8.50.20090209/gdb/testsuite/lib/gdb.exp
|
||||
Index: gdb-6.8.50.20090226/gdb/testsuite/lib/gdb.exp
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/testsuite/lib/gdb.exp 2009-02-09 16:02:35.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/testsuite/lib/gdb.exp 2009-02-09 16:06:00.000000000 +0100
|
||||
@@ -1471,6 +1471,37 @@ proc skip_hp_tests {} {
|
||||
--- gdb-6.8.50.20090226.orig/gdb/testsuite/lib/gdb.exp 2009-02-28 07:31:58.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/testsuite/lib/gdb.exp 2009-02-28 07:34:09.000000000 +0100
|
||||
@@ -1474,6 +1474,37 @@ proc skip_hp_tests {} {
|
||||
return $skip_hp
|
||||
}
|
||||
|
||||
@ -3223,11 +3219,11 @@ Index: gdb-6.8.50.20090209/gdb/testsuite/lib/gdb.exp
|
||||
set compiler_info "unknown"
|
||||
set gcc_compiled 0
|
||||
set hp_cc_compiler 0
|
||||
Index: gdb-6.8.50.20090209/gdb/valops.c
|
||||
Index: gdb-6.8.50.20090226/gdb/valops.c
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/valops.c 2009-02-09 15:40:36.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/valops.c 2009-02-09 16:06:00.000000000 +0100
|
||||
@@ -1074,7 +1074,7 @@ value_of_variable (struct symbol *var, s
|
||||
--- gdb-6.8.50.20090226.orig/gdb/valops.c 2009-02-27 07:51:56.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/valops.c 2009-02-28 07:34:09.000000000 +0100
|
||||
@@ -1072,7 +1072,7 @@ value_of_variable (struct symbol *var, s
|
||||
frame = block_innermost_frame (b);
|
||||
if (!frame)
|
||||
{
|
||||
@ -3236,11 +3232,11 @@ Index: gdb-6.8.50.20090209/gdb/valops.c
|
||||
&& SYMBOL_PRINT_NAME (BLOCK_FUNCTION (b)))
|
||||
error (_("No frame is currently executing in block %s."),
|
||||
SYMBOL_PRINT_NAME (BLOCK_FUNCTION (b)));
|
||||
Index: gdb-6.8.50.20090209/gdb/Makefile.in
|
||||
Index: gdb-6.8.50.20090226/gdb/Makefile.in
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/Makefile.in 2009-02-09 16:02:35.000000000 +0100
|
||||
+++ gdb-6.8.50.20090209/gdb/Makefile.in 2009-02-09 16:06:00.000000000 +0100
|
||||
@@ -634,6 +634,7 @@ SFILES = ada-exp.y ada-lang.c ada-typepr
|
||||
--- gdb-6.8.50.20090226.orig/gdb/Makefile.in 2009-02-28 07:31:58.000000000 +0100
|
||||
+++ gdb-6.8.50.20090226/gdb/Makefile.in 2009-02-28 07:34:09.000000000 +0100
|
||||
@@ -663,6 +663,7 @@ SFILES = ada-exp.y ada-lang.c ada-typepr
|
||||
inf-loop.c \
|
||||
infcall.c \
|
||||
infcmd.c inflow.c infrun.c \
|
||||
@ -3248,7 +3244,7 @@ Index: gdb-6.8.50.20090209/gdb/Makefile.in
|
||||
interps.c \
|
||||
jv-exp.y jv-lang.c jv-valprint.c jv-typeprint.c \
|
||||
language.c linespec.c \
|
||||
@@ -804,6 +805,7 @@ COMMON_OBS = $(DEPFILES) $(CONFIG_OBS) $
|
||||
@@ -835,6 +836,7 @@ COMMON_OBS = $(DEPFILES) $(CONFIG_OBS) $
|
||||
user-regs.o \
|
||||
frame.o frame-unwind.o doublest.o \
|
||||
frame-base.o \
|
||||
@ -3256,10 +3252,10 @@ Index: gdb-6.8.50.20090209/gdb/Makefile.in
|
||||
gnu-v2-abi.o gnu-v3-abi.o cp-abi.o cp-support.o \
|
||||
cp-namespace.o \
|
||||
reggroups.o regset.o \
|
||||
Index: gdb-6.8.50.20090209/gdb/testsuite/gdb.opt/Makefile.in
|
||||
Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/Makefile.in
|
||||
===================================================================
|
||||
--- gdb-6.8.50.20090209.orig/gdb/testsuite/gdb.opt/Makefile.in 2008-04-18 01:06:54.000000000 +0200
|
||||
+++ gdb-6.8.50.20090209/gdb/testsuite/gdb.opt/Makefile.in 2009-02-09 16:06:00.000000000 +0100
|
||||
--- gdb-6.8.50.20090226.orig/gdb/testsuite/gdb.opt/Makefile.in 2008-04-18 01:06:54.000000000 +0200
|
||||
+++ gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/Makefile.in 2009-02-28 07:34:09.000000000 +0100
|
||||
@@ -1,7 +1,7 @@
|
||||
VPATH = @srcdir@
|
||||
srcdir = @srcdir@
|
||||
|
35579
gdb-archer.patch
Normal file
35579
gdb-archer.patch
Normal file
File diff suppressed because it is too large
Load Diff
35
gdb.spec
35
gdb.spec
@ -9,11 +9,11 @@ Name: gdb%{?_with_debug:-debug}
|
||||
# Set version to contents of gdb/version.in.
|
||||
# NOTE: the FSF gdb versions are numbered N.M for official releases, like 6.3
|
||||
# and, since January 2005, X.Y.Z.date for daily snapshots, like 6.3.50.20050112 # (daily snapshot from mailine), or 6.3.0.20040112 (head of the release branch).
|
||||
Version: 6.8.50.20090210
|
||||
Version: 6.8.50.20090228
|
||||
|
||||
# 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: 2%{?_with_upstream:.upstream}%{?dist}
|
||||
Release: 1%{?_with_upstream:.upstream}%{?dist}
|
||||
|
||||
License: GPLv3+
|
||||
Group: Development/Debuggers
|
||||
@ -305,16 +305,9 @@ Patch296: gdb-6.5-gcore-buffer-limit-test.patch
|
||||
# - It requires recent glibc to work in this case properly.
|
||||
Patch298: gdb-6.6-threads-static-test.patch
|
||||
|
||||
# Fix false `(no debugging symbols found)' on `-readnever' runs.
|
||||
Patch301: gdb-6.6-buildid-readnever-silent.patch
|
||||
|
||||
# Fix #include <asm/ptrace.h> on kernel-headers-2.6.25-0.40.rc1.git2.fc9.x86_64.
|
||||
Patch304: gdb-6.7-kernel-headers-compat.patch
|
||||
|
||||
# Fix/implement the Fortran dynamic arrays support (BZ 377541).
|
||||
# Fix the variable-length-arrays support (BZ 468266, feature BZ 377541).
|
||||
Patch305: gdb-6.8-bz377541-vla.patch
|
||||
|
||||
# Test GCORE for shmid 0 shared memory mappings.
|
||||
Patch309: gdb-6.3-mapping-zero-inode-test.patch
|
||||
|
||||
@ -374,11 +367,16 @@ Patch343: gdb-6.8-watchpoint-conditionals-test.patch
|
||||
# Fix resolving of variables at locations lists in prelinked libs (BZ 466901).
|
||||
Patch348: gdb-6.8-bz466901-backtrace-full-prelinked.patch
|
||||
|
||||
# The merged branch `archer' of: http://sourceware.org/gdb/wiki/ProjectArcher
|
||||
Patch349: gdb-archer.patch
|
||||
|
||||
BuildRequires: ncurses-devel texinfo gettext flex bison expat-devel
|
||||
Requires: readline
|
||||
BuildRequires: readline-devel
|
||||
Requires: rpm-libs
|
||||
BuildRequires: rpm-devel
|
||||
Requires: python-libs
|
||||
BuildRequires: python-devel
|
||||
|
||||
%if 0%{?_with_testsuite:1}
|
||||
BuildRequires: sharutils dejagnu
|
||||
@ -451,7 +449,7 @@ rm -f gdb/jv-exp.c gdb/m2-exp.c gdb/objc-exp.c gdb/p-exp.c
|
||||
%if 0%{!?_with_upstream:1}
|
||||
|
||||
###patch232 -p1
|
||||
%patch305 -p1
|
||||
%patch349 -p1
|
||||
%patch1 -p1
|
||||
%patch3 -p1
|
||||
%patch4 -p1
|
||||
@ -536,7 +534,6 @@ rm -f gdb/jv-exp.c gdb/m2-exp.c gdb/objc-exp.c gdb/p-exp.c
|
||||
%patch294 -p1
|
||||
%patch296 -p1
|
||||
%patch298 -p1
|
||||
%patch301 -p1
|
||||
%patch304 -p1
|
||||
%patch309 -p1
|
||||
%patch311 -p1
|
||||
@ -609,6 +606,7 @@ CFLAGS="$CFLAGS -O0 -ggdb2"
|
||||
--sysconfdir=%{_sysconfdir} \
|
||||
--mandir=%{_mandir} \
|
||||
--infodir=%{_infodir} \
|
||||
--with-gdb-datadir=%{_datadir}/%{name} \
|
||||
--enable-gdb-build-warnings=,-Wno-unused \
|
||||
%ifnarch %{ix86} alpha ia64 ppc s390 s390x x86_64 ppc64 sparcv9 sparc64
|
||||
--disable-werror \
|
||||
@ -625,6 +623,7 @@ CFLAGS="$CFLAGS -O0 -ggdb2"
|
||||
--with-system-readline \
|
||||
--with-expat \
|
||||
--enable-tui \
|
||||
--with-python \
|
||||
%ifarch ia64
|
||||
--with-libunwind \
|
||||
%else
|
||||
@ -807,6 +806,7 @@ fi
|
||||
%{_bindir}/pstack
|
||||
%{_mandir}/*/gstack.1*
|
||||
%{_mandir}/*/pstack.1*
|
||||
%{_datadir}/%{name}
|
||||
%endif # 0%{!?_with_upstream:1}
|
||||
%{_infodir}/annotate.info*
|
||||
%{_infodir}/gdb.info*
|
||||
@ -822,6 +822,19 @@ fi
|
||||
%endif
|
||||
|
||||
%changelog
|
||||
* Sat Feb 28 2009 Jan Kratochvil <jan.kratochvil@redhat.com> - 6.8.50.20090228-1
|
||||
- Include the Archer Project: http://sourceware.org/gdb/wiki/ProjectArcher
|
||||
* [python] Python scripting support: http://sourceware.org/gdb/wiki/PythonGdb
|
||||
* [catch-syscall] Trap and display syscalls.
|
||||
* [delayed-symfile] Improve startup performance by lazily read psymtabs.
|
||||
* [exception-rewind] Fix fatal C++ exceptions in an inferior function call.
|
||||
* [vla] C variable length arrays / DW_FORM_block / Fortran dynamic arrays.
|
||||
* [misc] Fix debuginfoless `return' (BZ 365111), fix command-line macros for
|
||||
expected GCC (BZ 479914), new testcase for valgrind (for BZ 483262),
|
||||
implement `info common' for Fortran, fix Fortran logical-kind=8 (BZ 465310),
|
||||
fix static variable in C++ constructors (BZ 445912)
|
||||
- Upgrade to the FSF GDB gdb-6.8.50 snapshot.
|
||||
|
||||
* Tue Feb 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 6.8.50.20090210-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user