Hello community,
here is the log from the commit of package gdb
checked in at Fri Jun 8 17:35:22 CEST 2007.
--------
--- gdb/gdb.changes 2007-05-11 15:22:48.000000000 +0200
+++ /mounts/work_src_done/STABLE/gdb/gdb.changes 2007-06-08 17:15:29.000000000 +0200
@@ -1,0 +2,5 @@
+Fri Jun 8 17:15:17 CEST 2007 - schwab@suse.de
+
+- Update to head of trunk.
+
+-------------------------------------------------------------------
Old:
----
gdb-6.6.50.20070511-cvs.tar.bz2
New:
----
gdb-6.6.50.20070608-cvs.tar.bz2
libunwind-frame.diff
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ gdb.spec ++++++
--- /var/tmp/diff_new_pack.Af4344/_old 2007-06-08 17:34:42.000000000 +0200
+++ /var/tmp/diff_new_pack.Af4344/_new 2007-06-08 17:34:42.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package gdb (Version 6.6.50.20070511)
+# spec file for package gdb (Version 6.6.50.20070608)
#
# Copyright (c) 2007 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
@@ -23,7 +23,7 @@
Group: Development/Tools/Debuggers
Autoreqprov: on
PreReq: %{install_info_prereq}
-Version: 6.6.50.20070511
+Version: 6.6.50.20070608
Release: 1
Summary: The GNU Debugger
Source: gdb-%{version}-cvs.tar.bz2
@@ -39,6 +39,7 @@
Patch10: ppc-long-double.diff
Patch11: elf-symtab-read.diff
Patch12: find-pc-sect-line.diff
+Patch13: libunwind-frame.diff
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
@@ -81,6 +82,7 @@
%patch10
%patch11
%patch12
+%patch13
%build
CFLAGS="$RPM_OPT_FLAGS" \
@@ -136,6 +138,8 @@
%endif
%changelog
+* Fri Jun 08 2007 - schwab@suse.de
+- Update to head of trunk.
* Fri May 11 2007 - schwab@suse.de
- Update to head of trunk.
* Fri Apr 13 2007 - schwab@suse.de
++++++ gdb-6.6.50.20070511-cvs.tar.bz2 -> gdb-6.6.50.20070608-cvs.tar.bz2 ++++++
gdb/gdb-6.6.50.20070511-cvs.tar.bz2 /mounts/work_src_done/STABLE/gdb/gdb-6.6.50.20070608-cvs.tar.bz2 differ: byte 11, line 1
++++++ libunwind-frame.diff ++++++
2007-06-08 Andreas Schwab
* frame-unwind.h (frame_dealloc_cache_ftype): Define.
(struct frame_unwind): Add dealloc_cache.
* frame.c (reinit_frame_cache): Call dealloc_cache on all caches.
* libunwind-frame.h (libunwind_frame_dealloc_cache): Declare.
* libunwind-frame.c (libunwind_frame_dealloc_cache): Define.
(libunwind_frame_unwind): Set dealloc_cache.
* ia64-tdep.c (ia64_libunwind_frame_unwind): Set dealloc_cache.
Index: gdb/frame-unwind.h
===================================================================
RCS file: /cvs/src/src/gdb/frame-unwind.h,v
retrieving revision 1.16
diff -u -a -p -r1.16 gdb/frame-unwind.h
--- gdb/frame-unwind.h 9 Jan 2007 17:58:50 -0000 1.16
+++ gdb/frame-unwind.h 8 Jun 2007 14:25:33 -0000
@@ -125,6 +125,10 @@ typedef void (frame_prev_register_ftype)
typedef CORE_ADDR (frame_prev_pc_ftype) (struct frame_info *next_frame,
void **this_prologue_cache);
+/* Deallocate extra memory associated with the frame cache if any. */
+
+typedef void (frame_dealloc_cache_ftype) (struct frame_info *self,
+ void *this_cache);
struct frame_unwind
{
@@ -138,6 +142,7 @@ struct frame_unwind
const struct frame_data *unwind_data;
frame_sniffer_ftype *sniffer;
frame_prev_pc_ftype *prev_pc;
+ frame_dealloc_cache_ftype *dealloc_cache;
};
/* Register a frame unwinder, _prepending_ it to the front of the
Index: gdb/frame.c
===================================================================
RCS file: /cvs/src/src/gdb/frame.c,v
retrieving revision 1.227
diff -u -a -p -r1.227 gdb/frame.c
--- gdb/frame.c 6 Jun 2007 15:26:28 -0000 1.227
+++ gdb/frame.c 8 Jun 2007 14:25:33 -0000
@@ -1077,6 +1077,17 @@ frame_observer_target_changed (struct ta
void
reinit_frame_cache (void)
{
+ struct frame_info *fi;
+
+ /* Tear down all frame caches. */
+ for (fi = current_frame; fi != NULL; fi = fi->prev)
+ {
+ if (fi->prologue_cache && fi->unwind->dealloc_cache)
+ fi->unwind->dealloc_cache (fi, fi->prologue_cache);
+ if (fi->base_cache && fi->base->unwind->dealloc_cache)
+ fi->base->unwind->dealloc_cache (fi, fi->base_cache);
+ }
+
/* Since we can't really be sure what the first object allocated was */
obstack_free (&frame_cache_obstack, 0);
obstack_init (&frame_cache_obstack);
Index: gdb/ia64-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/ia64-tdep.c,v
retrieving revision 1.151
diff -u -a -p -r1.151 gdb/ia64-tdep.c
--- gdb/ia64-tdep.c 12 May 2007 00:07:45 -0000 1.151
+++ gdb/ia64-tdep.c 8 Jun 2007 14:25:33 -0000
@@ -2778,7 +2778,11 @@ static const struct frame_unwind ia64_li
{
NORMAL_FRAME,
ia64_libunwind_frame_this_id,
- ia64_libunwind_frame_prev_register
+ ia64_libunwind_frame_prev_register,
+ NULL,
+ NULL,
+ NULL,
+ libunwind_frame_dealloc_cache
};
static const struct frame_unwind *
Index: gdb/libunwind-frame.c
===================================================================
RCS file: /cvs/src/src/gdb/libunwind-frame.c,v
retrieving revision 1.15
diff -u -a -p -r1.15 gdb/libunwind-frame.c
--- gdb/libunwind-frame.c 6 Jun 2007 19:35:02 -0000 1.15
+++ gdb/libunwind-frame.c 8 Jun 2007 14:25:34 -0000
@@ -65,6 +65,7 @@ struct libunwind_frame_cache
CORE_ADDR base;
CORE_ADDR func_addr;
unw_cursor_t cursor;
+ unw_addr_space_t as;
};
/* We need to qualify the function names with a platform-specific prefix to match
@@ -187,11 +188,20 @@ libunwind_frame_cache (struct frame_info
}
cache->base = (CORE_ADDR)fp;
+ cache->as = as;
*this_cache = cache;
return cache;
}
+void
+libunwind_frame_dealloc_cache (struct frame_info *self, void *this_cache)
+{
+ struct libunwind_frame_cache *cache = this_cache;
+ if (cache->as)
+ unw_destroy_addr_space_p (cache->as);
+}
+
unw_word_t
libunwind_find_dyn_list (unw_addr_space_t as, unw_dyn_info_t *di, void *arg)
{
@@ -202,7 +212,11 @@ static const struct frame_unwind libunwi
{
NORMAL_FRAME,
libunwind_frame_this_id,
- libunwind_frame_prev_register
+ libunwind_frame_prev_register,
+ NULL,
+ NULL,
+ NULL,
+ libunwind_frame_dealloc_cache
};
/* Verify if there is sufficient libunwind information for the frame to use
Index: gdb/libunwind-frame.h
===================================================================
RCS file: /cvs/src/src/gdb/libunwind-frame.h,v
retrieving revision 1.8
diff -u -a -p -r1.8 gdb/libunwind-frame.h
--- gdb/libunwind-frame.h 12 May 2007 00:07:45 -0000 1.8
+++ gdb/libunwind-frame.h 8 Jun 2007 14:25:34 -0000
@@ -53,6 +53,7 @@ void libunwind_frame_prev_register (stru
int regnum, int *optimizedp,
enum lval_type *lvalp, CORE_ADDR *addrp,
int *realnump, gdb_byte *valuep);
+void libunwind_frame_dealloc_cache (struct frame_info *self, void *cache);
CORE_ADDR libunwind_frame_base_address (struct frame_info *next_frame, void **this_cache);
int libunwind_is_initialized (void);
++++++ pie-relocate.diff ++++++
--- /var/tmp/diff_new_pack.Af4344/_old 2007-06-08 17:34:42.000000000 +0200
+++ /var/tmp/diff_new_pack.Af4344/_new 2007-06-08 17:34:42.000000000 +0200
@@ -1,6 +1,6 @@
--- gdb/Makefile.in
+++ gdb/Makefile.in
-@@ -2430,7 +2430,7 @@
+@@ -2426,7 +2426,7 @@
$(objfiles_h) $(gdb_stabs_h) $(target_h) $(bcache_h) $(mdebugread_h) \
$(gdb_assert_h) $(gdb_stat_h) $(gdb_obstack_h) $(gdb_string_h) \
$(hashtab_h) $(breakpoint_h) $(block_h) $(dictionary_h) $(source_h) \
@@ -9,7 +9,7 @@
observer.o: observer.c $(defs_h) $(observer_h) $(command_h) $(gdbcmd_h) \
$(observer_inc)
obsd-tdep.o: obsd-tdep.c $(defs_h) $(frame_h) $(symtab_h) $(obsd_tdep_h)
-@@ -2618,9 +2618,9 @@
+@@ -2612,9 +2612,9 @@
$(bcache_h) $(regcache_h)
solib-svr4.o: solib-svr4.c $(defs_h) $(elf_external_h) $(elf_common_h) \
$(elf_mips_h) $(symtab_h) $(bfd_h) $(symfile_h) $(objfiles_h) \
@@ -20,10 +20,10 @@
+ $(exec_h) $(auxv_h)
sol-thread.o: sol-thread.c $(defs_h) $(gdbthread_h) $(target_h) \
$(inferior_h) $(gdb_stat_h) $(gdbcmd_h) $(gdbcore_h) $(regcache_h) \
- $(solib_h) $(symfile_h) $(gdb_string_h) $(gregset_h)
+ $(solib_h) $(symfile_h) $(observer_h) $(gdb_string_h) $(gregset_h)
--- gdb/breakpoint.c
+++ gdb/breakpoint.c
-@@ -3912,6 +3912,7 @@
+@@ -3900,6 +3900,7 @@
printf_filtered ("%s%s ",
((b->enable_state == bp_disabled ||
b->enable_state == bp_shlib_disabled ||
@@ -31,7 +31,7 @@
b->enable_state == bp_call_disabled)
? " (disabled)"
: b->enable_state == bp_permanent
-@@ -4588,6 +4589,60 @@
+@@ -4586,6 +4587,60 @@
}
}
@@ -92,7 +92,7 @@
static void
solib_load_unload_1 (char *hookname, int tempflag, char *dll_pathname,
char *cond_string, enum bptype bp_kind)
-@@ -7025,6 +7080,7 @@
+@@ -7023,6 +7078,7 @@
&& !b->loc->duplicate
&& b->enable_state != bp_disabled
&& b->enable_state != bp_shlib_disabled
@@ -100,7 +100,7 @@
&& !b->pending
&& b->enable_state != bp_call_disabled)
{
-@@ -7243,7 +7299,8 @@
+@@ -7241,7 +7297,8 @@
break;
save_enable = b->enable_state;
@@ -120,7 +120,7 @@
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
-@@ -797,8 +798,12 @@
+@@ -793,8 +794,12 @@
extern void disable_breakpoints_in_shlibs (int silent);
@@ -135,7 +135,7 @@
extern void create_solib_unload_event_breakpoint (char *, int,
--- gdb/dwarf2read.c
+++ gdb/dwarf2read.c
-@@ -1230,7 +1230,7 @@
+@@ -1237,7 +1237,7 @@
else
dwarf2_per_objfile->loc_buffer = NULL;
@@ -157,7 +157,7 @@
mainline = 0;
--- gdb/infrun.c
+++ gdb/infrun.c
-@@ -2239,6 +2239,11 @@
+@@ -2223,6 +2223,11 @@
code segments in shared libraries might be mapped in now. */
re_enable_breakpoints_in_shlibs ();
@@ -352,7 +352,7 @@
/* Return 1 if PC lies in the dynamic symbol resolution code of the
SVR4 run time loader. */
static CORE_ADDR interp_text_sect_low;
-@@ -1378,6 +1416,8 @@
+@@ -1374,6 +1412,8 @@
while (stop_signal != TARGET_SIGNAL_TRAP);
stop_soon = NO_STOP_QUIETLY;
#endif /* defined(_SCO_DS) */
@@ -363,7 +363,7 @@
static void
--- gdb/solib.c
+++ gdb/solib.c
-@@ -384,15 +384,37 @@
+@@ -394,15 +394,37 @@
/* Have we already loaded this shared object? */
ALL_OBJFILES (so->objfile)
{
@@ -404,7 +404,7 @@
free_section_addr_info (sap);
return (1);
-@@ -573,28 +595,7 @@
+@@ -583,28 +605,7 @@
/* Fill in the rest of each of the `struct so_list' nodes. */
for (i = inferior; i; i = i->next)
{
@@ -434,7 +434,7 @@
/* Notify any observer that the shared object has been
loaded now that we've added it to GDB's tables. */
-@@ -690,6 +691,39 @@
+@@ -700,6 +701,39 @@
}
}
@@ -509,7 +509,7 @@
reinit_frame_cache ();
--- gdb/symfile.c
+++ gdb/symfile.c
-@@ -709,7 +709,7 @@
+@@ -708,7 +708,7 @@
/* Now either addrs or offsets is non-zero. */
@@ -518,7 +518,7 @@
{
/* We will modify the main symbol table, make sure that all its users
will be cleaned up if an error occurs during symbol reading. */
-@@ -737,7 +737,7 @@
+@@ -736,7 +736,7 @@
We no longer warn if the lowest section is not a text segment (as
happens for the PA64 port. */
@@ -527,7 +527,7 @@
{
asection *lower_sect;
asection *sect;
-@@ -906,14 +906,14 @@
+@@ -905,14 +905,14 @@
/* If this is the main symbol file we have to clean up all users of the
old main symbol file. Otherwise it is sufficient to fixup all the
breakpoints that may have been redefined by this symbol file. */
@@ -544,7 +544,7 @@
{
breakpoint_re_set ();
}
-@@ -959,7 +959,7 @@
+@@ -958,7 +958,7 @@
interactively wiping out any existing symbols. */
if ((have_full_symbols () || have_partial_symbols ())
@@ -553,7 +553,7 @@
&& from_tty
&& !query ("Load new symbol table from \"%s\"? ", name))
error (_("Not confirmed."));
-@@ -1140,6 +1140,11 @@
+@@ -1138,6 +1138,11 @@
symfile_objfile->name)
: !query (_("Discard symbol table? "))))
error (_("Not confirmed."));
@@ -565,7 +565,7 @@
free_all_objfiles ();
/* solib descriptors may have handles to objfiles. Since their
-@@ -2279,6 +2284,8 @@
+@@ -2277,6 +2282,8 @@
/* Discard cleanups as symbol reading was successful. */
discard_cleanups (old_cleanups);
@@ -574,10 +574,10 @@
/* 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. */
-@@ -2646,6 +2653,7 @@
+@@ -2643,6 +2650,7 @@
+ set_default_breakpoint (0, 0, 0, 0);
clear_pc_function_cache ();
- if (deprecated_target_new_objfile_hook)
- deprecated_target_new_objfile_hook (NULL);
+ observer_notify_new_objfile (NULL);
+ varobj_refresh ();
/* Clear globals which might have pointed into a removed objfile.
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
---------------------------------------------------------------------
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org