This is the mail archive of the gdb@sourceware.cygnus.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Recent Linux related changes to gdb...


Hi,

Michael Snyder has already written to tell you that Linux thread
support has been merged into gdb.  If you want to try it out, fetch
the most recent gdb snapshot from sourceware.cygnus.com.

Jim Blandy has merged various other Linux changes (in addition to the
thread related stuff) into a branch off the main Cygnus development
tree.  It is my understanding that these non-thread related changes
represent the work of Bill Metzenthen, H.J. Lu, Anthony Green, and
probably others as well.  (My apologies if I left your name out.)  I
am pleased to report that these changes have been merged into the main
development branch and are also available via the most recent snapshot
from sourceware.cygnus.com.

So what are these changes exactly?

The bulk of them are improvements to floating point support on Linux,
but there are some other small improvements which should make gdb do a
better job of stepping into shared objects.  I refer you to the
ChangeLog for the specifics.

There is one change that came in with these Linux related changes that
affects all platforms and I wish to describe it in more detail.  It
should not be terribly controversial, but you never know...  It
concerns the behavior of the "list" command near the beginning of a
file.

Previously, the "list" command would list N lines around your current
position except for when you're at the beginning or end of the file. 
E.g, with gdb.base/list (from the test suite), you would get the
following behavior:

	(gdb) list 1
	1       #include "list0.h"
	2
	3       int main ()
	4       {
	5           int x;
		
and

	(gdb) list 8
	3       int main ()
	4       {
	5           int x;
	6       #ifdef usestubs
	7           set_debug_traps();
	8           breakpoint();
	9       #endif
	10          x = 0;
	11          foo (x++);
	12          foo (x++);

The list command has been changed to cause N lines (assuming that
there are at least N lines in the file) to always be listed regardless
of where you are in the file, so the second example above stays the
same, but the first looks like this:

	(gdb) list 1
	1       #include "list0.h"
	2
	3       int main ()
	4       {
	5           int x;
	6       #ifdef usestubs
	7           set_debug_traps();
	8           breakpoint();
	9       #endif
	10          x = 0;
 
I would like to hear from you if you feel strongly one way or the
other about whether this change should stay in or should revert to the
previous behavior.

Thanks,

Kevin

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]