public inbox for systemtap-cvs@sourceware.org help / color / mirror / Atom feed
From: jistone@sourceware.org To: systemtap-cvs@sourceware.org Subject: [SCM] systemtap: system-wide probe/trace tool branch, master, updated. release-0.9.9-237-g06e0b62 Date: Thu, 03 Sep 2009 21:33:00 -0000 [thread overview] Message-ID: <20090903213314.10323.qmail@sourceware.org> (raw) 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 06e0b6262393b095a33e9cc6e7ab7bc5d4fe9c95 (commit) via b969d16b2986a491eb37706e09da888d9914a7dd (commit) via 178ac3f6fdef839ef1ca646421e2c436a91ac1fb (commit) via 789448a36f57e53cc6a1878f7637998b0f15652c (commit) via 7fdd3e2c61874abd631de5038d846dffb6f5bc5f (commit) via b74789646bfe59131327716357c8b7c1521fa14a (commit) via 7a1921492e38221e1552b7698f001fa70d0e0e8b (commit) via 64deb08509bf9682e7d3b8141399c5603edb2df2 (commit) via aca66a36681ac7cbf7fcc2eac4dafc83d6559ef9 (commit) from d0822e28934cd0387c2af4349cf52c52c368c55a (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 06e0b6262393b095a33e9cc6e7ab7bc5d4fe9c95 Merge: b969d16b2986a491eb37706e09da888d9914a7dd d0822e28934cd0387c2af4349cf52c52c368c55a Author: Josh Stone <jistone@redhat.com> Date: Thu Sep 3 14:31:02 2009 -0700 Merge branch 'master' of sourceware.org:/git/systemtap commit b969d16b2986a491eb37706e09da888d9914a7dd Author: Josh Stone <jistone@redhat.com> Date: Thu Sep 3 12:31:21 2009 -0700 Escape literal '.'s in regular expressions * dwflpp.cxx (dwflpp::build_blacklist): Escape '.'s in filenames. commit 178ac3f6fdef839ef1ca646421e2c436a91ac1fb Author: Josh Stone <jistone@redhat.com> Date: Thu Sep 3 12:26:37 2009 -0700 Use a regexp for matching blacklist sections We already use regexp for function/file blacklisting, so this just makes the section blacklisting consistent with the rest. * dwflpp.cxx (dwflpp::blacklisted_p): Use regexec instead of section==. (dwflpp::build_blacklist): Build blacklist_section too. commit 789448a36f57e53cc6a1878f7637998b0f15652c Author: Josh Stone <jistone@redhat.com> Date: Thu Sep 3 12:00:10 2009 -0700 Fetch the blacklist section only when needed We only check blacklisting on kernel probes, so it's a waste to dig up the section name otherwise. * dwflpp.cxx (dwflpp::blacklisted_p): Lookup the section directly. (relocate_address::relocate_address): Don't do blacklisting here. * tapsets.cxx (dwarf_query::add_probe_point): Don't carry the blacklist section directly anymore. commit 7fdd3e2c61874abd631de5038d846dffb6f5bc5f Author: Josh Stone <jistone@redhat.com> Date: Thu Sep 3 11:32:59 2009 -0700 PR10573: Squash duplicate inline instances In C++, identical functions included in multiple CUs will get merged at link time into a single instance. We need to make sure that inlines within those merged functions are not probed multiple times. * tapsets.cxx (inline_instance_info::operator<): Used for set support. (dwarf_query::handle_query_module): Clear inline_dupes on each module. (query_dwarf_inline_instance): Squash this inline instance if it's already in the inline_dupes set. commit b74789646bfe59131327716357c8b7c1521fa14a Author: Josh Stone <jistone@redhat.com> Date: Wed Sep 2 19:09:50 2009 -0700 PR10572: Allow duplicate function names in a CU We can't assume that a given function name will only appear once in a CU. In C++, two functions may have the same name in different classes or namespaces, or even in the same scope with overloaded parameters. Even in C, the compiler may generate multiple copies of a single function with different optimizations. We now use a multimap for function names, so we shouldn't miss any. * dwflpp.h (cu_type_cache_t, mod_cu_type_cache_t): New typedef to keep a normal map for the global_alias_cache. (cu_function_cache_t): Use a multimap for function names. * dwflpp.cxx (dwflpp::iterate_over_functions): Walk over the range of exactly-matching functions. * tapsets.cxx (query_dwarf_func): Don't abort after seeing an exact match -- there could be more to come. commit 7a1921492e38221e1552b7698f001fa70d0e0e8b Author: Josh Stone <jistone@redhat.com> Date: Wed Sep 2 18:40:14 2009 -0700 Delete stuff that dwflpp newed * dwflpp.cxx (dwflpp::~dwflpp): Delete all of the caches. commit 64deb08509bf9682e7d3b8141399c5603edb2df2 Author: Josh Stone <jistone@redhat.com> Date: Wed Sep 2 16:43:58 2009 -0700 Provide backward-compatible unordered_map/set We were defining our own stap_map with a ::type to let us use typedefs to use the new unordered_map if available, or hash_map otherwise. Since unordered_map is the future direction, I'm changing our code to use that directly. The backward-compatible version is a #define to hash_map, which has a compatible interface. While I'm at it, let's also define unordered_multimap, unordered_set, and unordered_multiset. * unordered.h: New. * dwflpp.h (stap_map): Removed. (cache typedefs): Use the unordered name now. commit aca66a36681ac7cbf7fcc2eac4dafc83d6559ef9 Author: Josh Stone <jistone@redhat.com> Date: Wed Sep 2 16:14:08 2009 -0700 Unify lex_cast* and avoid string copies We always use lex_cast either to string or from string, so I made that explicit, and got rid of some string copies in the process. There was also stringify(), which was redundant to lex_cast<string>. We also always used lex_cast_hex to string, so that's now hard-coded and again eliminated a string copy. For lex_cast_qstring<string>, there's no need to write the streamify the input, so a specialization now operates directly on the input. Hopefully this is a bit cleaner, and I do measure it to be a little faster on scripts with many probes. ----------------------------------------------------------------------- Summary of changes: buildrun.cxx | 10 ++-- dwflpp.cxx | 130 +++++++++++++++++++++++++++++---------------------- dwflpp.h | 43 +++++++---------- elaborate.cxx | 6 +- main.cxx | 4 +- parse.cxx | 5 +- staptree.cxx | 2 +- tapset-mark.cxx | 12 ++-- tapset-perfmon.cxx | 6 +- tapset-procfs.cxx | 2 +- tapset-timers.cxx | 4 +- tapset-utrace.cxx | 6 +- tapsets.cxx | 65 ++++++++++++++++---------- translate.cxx | 36 +++++++------- unordered.h | 56 ++++++++++++++++++++++ util.h | 68 ++++++++++++++------------- 16 files changed, 270 insertions(+), 185 deletions(-) create mode 100644 unordered.h hooks/post-receive -- systemtap: system-wide probe/trace tool
reply other threads:[~2009-09-03 21:33 UTC|newest] Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20090903213314.10323.qmail@sourceware.org \ --to=jistone@sourceware.org \ --cc=systemtap-cvs@sourceware.org \ --cc=systemtap@sourceware.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).