This is the mail archive of the systemtap-cvs@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]

[SCM] systemtap: system-wide probe/trace tool branch, master, updated. release-1.7-129-g337b7c4


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "systemtap: system-wide probe/trace tool".

The branch, master has been updated
       via  337b7c44b1cd672f76e58166a562c12a300ddb20 (commit)
      from  1485ded3f2d709c9011bd9f340ce39b1930f7e32 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 337b7c44b1cd672f76e58166a562c12a300ddb20
Author: Tom Tromey <tromey@redhat.com>
Date:   Fri Mar 16 10:44:14 2012 -0600

    Partial fix for PR12997 - support dwarf4 .debug_types
    
    This fix does not solve the ET_REL case pointed out in the PR.
    However, it does work ok for ordinary code.
    
        * dwflpp.cxx (dwflpp::iterate_over_cus): Add 'want_types' argument.
        Iterate over type units.
        (dwflpp::declaration_resolve_other_cus): Update.
        (dwflpp::iterate_single_function): Update.
        (dwflpp::iterate_over_globals): Also allow DW_TAG_type_unit.
        * dwflpp.h (module_tus_read_t): New typedef.
        (dwflpp::iterate_over_cus): Update.
        (dwflpp::module_tus_read): New member.
        * tapsets.cxx (dwarf_query::query_module_dwarf): Update.
        (tracepoint_query::handle_query_module): Update.
        * testsuite/systemtap.pass1-4/debugtypes.cxx: New file.
        * testsuite/systemtap.pass1-4/debugtypes.exp: New file.
        * testsuite/systemtap.pass1-4/debugtypes.stp: New file.
    
    I built gdb with '-gdwarf-4 -fdebug-types-section'.
    Then I tried this stap script:
    
    probe process("/home/tromey/gnu/archer/build/gdb/gdb").function("dwarf2_attr") {
          println(@cast($dwarf2_per_objfile, "struct dwarf2_per_objfile")->objfile)
    }
    
    With Fedora 16 stap:
    
    barimba. stap -p2 /tmp/q.stp
    semantic error: type definition 'struct dwarf2_per_objfile' not found: identifier '@cast' at /tmp/q.stp:2:15
            source:       println(@cast($dwarf2_per_objfile, "struct dwarf2_per_objfile")->objfile)
    	                              ^
    Pass 2: analysis failed.  Try again with another '--vp 01' option.
    
    After the patch, this works.

-----------------------------------------------------------------------

Summary of changes:
 dwflpp.cxx                                 |   31 +++++++++++++++++++++++----
 dwflpp.h                                   |    9 ++++++-
 tapsets.cxx                                |    4 +-
 testsuite/systemtap.pass1-4/debugtypes.cxx |   21 +++++++++++++++++++
 testsuite/systemtap.pass1-4/debugtypes.exp |   16 ++++++++++++++
 testsuite/systemtap.pass1-4/debugtypes.stp |    6 +++++
 6 files changed, 78 insertions(+), 9 deletions(-)
 create mode 100644 testsuite/systemtap.pass1-4/debugtypes.cxx
 create mode 100644 testsuite/systemtap.pass1-4/debugtypes.exp
 create mode 100755 testsuite/systemtap.pass1-4/debugtypes.stp


hooks/post-receive
--
systemtap: system-wide probe/trace tool


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