[Bug runtime/10512] STAP_PROBES don't work in c++ constructors/destructors
mjw at redhat dot com
sourceware-bugzilla@sourceware.org
Fri Aug 14 09:40:00 GMT 2009
------- Additional Comments From mjw at redhat dot com 2009-08-14 09:40 -------
(In reply to comment #2)
> As can be seen from the alternatives suggested only the variables of the
> function into which the probe was inlined are visible.
This is because they aren't available as dwarf locations. Note that the values
are there. We even mark them as comments in the assembly:
# 14 "cxxclass.cxx.test.cxx" 1
2:
nop /* %rax %edx */
# 0 "" 2
So we can actually access them, if we would know the registers they are stored in:
$ stap -e 'probe process("./test").mark("cons") { printf("cons hit @0x%x name=%s
i=%d\n", uaddr(), user_string_quoted(u_register("rax")), register("edx")); }' -c
./test
cons call: 64
meth call: 64 24
dest call: 42
cons call2: 24
meth call2: 24 40
dest call2: 42
cons hit @0x40063f name="call" i=64
--
http://sourceware.org/bugzilla/show_bug.cgi?id=10512
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
More information about the Systemtap
mailing list