From: "Keith.Walker" <Keith.Walker@arm.com>
To: binutils@sources.redhat.com, gdb@sources.redhat.com
Cc: Pierre Habraken <Pierre.Habraken@imag.fr>
Subject: Re: Section .debug_info in object file
Date: Thu, 12 Sep 2002 04:46:00 -0000 [thread overview]
Message-ID: <4.1.20020912105556.01e79f10@mhsun1.maidenhead.arm.com> (raw)
In-Reply-To: <3D806189.7A45FCBA@imag.fr>
>Knowing that rises several questions:
>
>- what is the structure of a '.debug_info' section ?
> Is this structure documented somewhere ?
Yes .....
The web site http://www.eagercon.com/dwarf/dwarf3std.htm contains both the
original DWARF2 specification and the (almost) current DWARF3 draft. [A
later draft can be found at
http://reality.sgiweb.org/davea/dwarf3-draft8-011125.pdf ]
>- which tool can be used to examine the contents of a '.debug_info'
> section ? I tried to use arm-elf-objdump but the result which it
> displays is not formatted and checking it is not easy...
Try arm-elf-readelf
>- is there a way to force gas to include a field 'DW_AT_name' in the
> object files it produces ?
> (an option on the command line ? a directive inside the source file ?)
I haven't looked but I suspect there isn't a command line option; more
likely this will require a source change in binutils.
>- why would gdb be not able to retrieve an assembly language source file
> (together with its name) as long as no breakpoint is set by the user
> within this file, where it is able to retrieve this same source file
> as soon as a first breakpoint is set (though the name of the source
> file is not present in the object file) ?...
The following is only what I suspect is happening (I haven't actually
looked at the code).
On initial load the debugger uses the DW_AT_name attribute specified in the
DW_TAG_compile_unit tags in order to determine the names of the initial
source files. As there is no DW_AT_name for assembler files they aren't
added to the initial list of source files.
However when a breakpoint is set it reads the line number table for the
area/region in which the addess is located; the line number contains the
names of all the files associated with that table. Therefore at this
point it now knows about the assembler file.
Keith
Keith Walker keith.walker@arm.com Tel:+44 (1628) 427732
ARM Ltd http://www.arm.com
next prev parent reply other threads:[~2002-09-12 11:46 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-09-12 2:42 Pierre Habraken
2002-09-12 4:46 ` Keith.Walker [this message]
2002-09-14 4:49 ` Pierre Habraken
2002-09-16 3:10 ` Keith.Walker
2002-09-16 3:30 ` Elias Athanasopoulos
2002-09-16 3:43 ` Pierre Habraken
2002-09-12 11:45 ` [PATCH] " Elias Athanasopoulos
2002-09-12 13:54 ` Richard Henderson
2002-09-12 14:55 ` Elias Athanasopoulos
2002-09-15 2:25 ` Elias Athanasopoulos
2002-09-16 19:35 ` Richard Henderson
2002-09-16 19:51 ` Richard Henderson
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4.1.20020912105556.01e79f10@mhsun1.maidenhead.arm.com \
--to=keith.walker@arm.com \
--cc=Pierre.Habraken@imag.fr \
--cc=binutils@sources.redhat.com \
--cc=gdb@sources.redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox