This is the mail archive of the
systemtap@sourceware.org
mailing list for the systemtap project.
[Bug runtime/10857] dwarf unwinder doesn't handle call frame instructions taking expressions
- From: "roland at gnu dot org" <sourceware-bugzilla at sourceware dot org>
- To: systemtap at sources dot redhat dot com
- Date: 7 May 2010 01:32:23 -0000
- Subject: [Bug runtime/10857] dwarf unwinder doesn't handle call frame instructions taking expressions
- References: <20091028132718.10857.mjw@redhat.com>
- Reply-to: sourceware-bugzilla at sourceware dot org
------- Additional Comments From roland at gnu dot org 2010-05-07 01:32 -------
If "in the wild" means do they actually appear in real binaries, the answer is
yes. If you mean "has it hampered some unwinding some systemtap user tried",
then who knows.
pmachata recently did some scripted CFI analysis on a large raft of OS binaries,
which cited the subset of these cases where a recently-fixed gcc bug was
involved. It would be simpler to script grepping for all DW_CFA_expression,
DW_CFA_def_cfa_expression, and DW_CFA_val_expression uses.
GCC can emit DW_CFA_expression and DW_CFA_def_cfa_expression for x86 and perhaps
other machines. Without doing the aforementioned grepping, off hand we have
only noticed it being used in x86-32 code generation so far.
glibc uses those in the signal frame on x86_64, and uses DW_CFA_val_expression
in its locking code (used both inside glibc and for libpthread) for x86_64 and i386.
--
http://sourceware.org/bugzilla/show_bug.cgi?id=10857
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.