public inbox for binutils@sourceware.org
 help / color / mirror / Atom feed
* Re: DWARF info on i386-ELF Linux -- need pointers
  1999-07-01  0:00 ` DWARF info on i386-ELF Linux -- need pointers Ben Combee
  1999-07-01  0:00   ` Jeffrey A Law
@ 1999-07-01  0:00   ` Ian Lance Taylor
  1 sibling, 0 replies; 4+ messages in thread
From: Ian Lance Taylor @ 1999-07-01  0:00 UTC (permalink / raw)
  To: bcombee; +Cc: binutils

   From: "Ben Combee" <bcombee@metrowerks.com>
   Date: Tue, 22 Jun 1999 17:54:56 -0500

   I'm trying to produce DWARF debugging information suitable for use with gdb
   and the binutils on i386 ELF-based Linux.  I've read the DWARF 1.1
   specification and looked at the source code for BFD, but I cannot figure out
   the right mapping of x86 registers to DWARF register numbers.  Can anyone
   here provide me a pointer as to where to look?  I'm especially interested in
   the floating point/MMX registers, as EAX-EBP have fairly obvious encodings
   based on the opcode format.

There are two natural places to look: gcc and gdb.  gcc has to
generate the register mappings, and gdb has to interpret them.  The
binutils don't care.

In gcc, see DBX_REGISTER_NUMBER in gcc/config/i386/sysv4.h.

In gdb, I think the right place is gdb/config/i386/tm-i386.h.

However, I believe that in neither place will you find any register
number assignments for the MMX registers.  I don't think gcc ever
generates code that uses the MMX registers, so it does not need to
define any debugging information for them.

Ian

^ permalink raw reply	[flat|nested] 4+ messages in thread

* DWARF info on i386-ELF Linux -- need pointers
  1999-07-01  0:00 adding c4x port to binutils distribution Greg Smart
@ 1999-07-01  0:00 ` Ben Combee
  1999-07-01  0:00   ` Jeffrey A Law
  1999-07-01  0:00   ` Ian Lance Taylor
  0 siblings, 2 replies; 4+ messages in thread
From: Ben Combee @ 1999-07-01  0:00 UTC (permalink / raw)
  To: binutils

I'm trying to produce DWARF debugging information suitable for use with gdb
and the binutils on i386 ELF-based Linux.  I've read the DWARF 1.1
specification and looked at the source code for BFD, but I cannot figure out
the right mapping of x86 registers to DWARF register numbers.  Can anyone
here provide me a pointer as to where to look?  I'm especially interested in
the floating point/MMX registers, as EAX-EBP have fairly obvious encodings
based on the opcode format.

Should I also be checking the EGCS/GCC source code for this info?  If I
should be asking on a different mailing list, please let me know too.

Thanks!
--
Ben Combee, x86/Win32/Novell/Linux CompilerWarrior
http://www.metrowerks.com/

^ permalink raw reply	[flat|nested] 4+ messages in thread

* adding c4x port to binutils distribution
@ 1999-07-01  0:00 Greg Smart
  1999-07-01  0:00 ` DWARF info on i386-ELF Linux -- need pointers Ben Combee
  0 siblings, 1 reply; 4+ messages in thread
From: Greg Smart @ 1999-07-01  0:00 UTC (permalink / raw)
  To: 'binutils@sourceware.cygnus.com',
	'binutils-cvs@sourceware.cygnus.com'
  Cc: Greg Smart

hi all,
	I've been updating a port of binutils for the TI c3x/c4x
series of DSP's.  The port was originally written by Michael
Hayes to patch against binutils-2.7, and I have updated it to
patch against the cvs tree.

The c4x port will ultimately replace the tic30 port by Steve
Haworth.  A brief summary of why we should do this is:

1. The c4x port supports both c3x and c4x processors, the 
tic30 port only supports the c3x.

2. The c4x port fully supports ti-coff format, and ti tools can
recognise output files generated by c4x-ld. tic30 uses a
default format.

3.  There is a c4x port of egcs which will be included in the
next release, and c4x-binutils is required to build it.

4.  A c4x port of gdb exists, and could be introduced into the
main distribution after c4x-binutils has stabilised in the main
tree.

The main issue with introducing this port is the size of a
unit in a c3x/c4x is 32 bits.  In other words, chars,shorts
and ints are all 32 bits, and all instructions are 32 bits. The
problem is that the address change from one 32 bit insn to
the next is 1 unit (not 4), and binutils doesn't like this very
much.  Michael has some workarounds for this problem,
but some of these workarounds need to be updated before
they will be accepted.

I am about to send Ian Taylor a patch with all the new files
to be added, and I will see how I go before I submit further
patches.  If you have any questions/comments/abuse or
whatever then feel free to send them to: gsmart@tennyson.com.au

If you're interested in the gnu c4x stuff then have a look at
Michael Hayes' page at http://www.elec.canterbury.ac.nz/c4x

cheers
Greg Smart





^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: DWARF info on i386-ELF Linux -- need pointers
  1999-07-01  0:00 ` DWARF info on i386-ELF Linux -- need pointers Ben Combee
@ 1999-07-01  0:00   ` Jeffrey A Law
  1999-07-01  0:00   ` Ian Lance Taylor
  1 sibling, 0 replies; 4+ messages in thread
From: Jeffrey A Law @ 1999-07-01  0:00 UTC (permalink / raw)
  To: Ben Combee; +Cc: binutils

  In message < 041601bebd02$3f7c5650$3404010a@metrowerks.com >you write:
  > I'm trying to produce DWARF debugging information suitable for use with gdb
  > and the binutils on i386 ELF-based Linux.  I've read the DWARF 1.1
  > specification and looked at the source code for BFD, but I cannot figure ou
Actually I would strongly recommend against using dwarf1.1.  It's support for
C++ is poor at best.

If for some reason you really don't want to use stabs, then use dwarf2.

jeff

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~1999-07-01  0:00 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1999-07-01  0:00 adding c4x port to binutils distribution Greg Smart
1999-07-01  0:00 ` DWARF info on i386-ELF Linux -- need pointers Ben Combee
1999-07-01  0:00   ` Jeffrey A Law
1999-07-01  0:00   ` Ian Lance Taylor

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).