This is the mail archive of the
systemtap@sourceware.org
mailing list for the systemtap project.
[Bug translator/6941] better prologue heuristics needed for userspace (non-regparm)
- From: "fche at redhat dot com" <sourceware-bugzilla at sourceware dot org>
- To: systemtap at sourceware dot org
- Date: Sat, 16 Jun 2012 16:32:58 +0000
- Subject: [Bug translator/6941] better prologue heuristics needed for userspace (non-regparm)
- Auto-submitted: auto-generated
- References: <bug-6941-6586@http.sourceware.org/bugzilla/>
http://sourceware.org/bugzilla/show_bug.cgi?id=6941
Frank Ch. Eigler <fche at redhat dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |jan.kratochvil at redhat
| |dot com, mjw at redhat dot
| |com
--- Comment #3 from Frank Ch. Eigler <fche at redhat dot com> 2012-06-16 16:32:58 UTC ---
With gcc VTA, prologue searching at -O2 is becoming unnecessary. However, at
-O0 it is becoming essential, for gcc does not run VTA processing at -O0, and
the dwarf location list data it emits is only accurate in the post-prologue
section. So we need to figure out whether the given target executable was
built with -O0, and then perform proper prologue search heuristics.
To find out -O*, one can look at the DW_AT_producer of the
DW_TAG_compile_unit,; recent gcc emits the compiler option list in there. We
can look for the absence of -O[123] and/or the presence of -O0, or
-fno-var-tracking. It's a heuristic, but so there. See gdb's
dwarf2read.c:process_full_comp_unit() to see its set of related heuristics.
See gdb's symtab.c:skip_prologue_sal() and skip_prologue_using_lineinfo() for
the actual prologue-skipping heuristics, which are similar to our own in
dwflpp.cxx:resolve_prologue_endings().
--
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.