This is the mail archive of the systemtap@sourceware.org mailing list for the systemtap project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug runtime/10512] STAP_PROBES don't work in c++ constructors/destructors


------- 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.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]