diff options
author | Josh Stone <jistone@redhat.com> | 2009-09-03 11:32:59 -0700 |
---|---|---|
committer | Josh Stone <jistone@redhat.com> | 2009-09-03 11:32:59 -0700 |
commit | 7fdd3e2c61874abd631de5038d846dffb6f5bc5f (patch) | |
tree | 7c24c2e3bc361032b46ef4e119b5378ed7187378 /dwflpp.h | |
parent | b74789646bfe59131327716357c8b7c1521fa14a (diff) | |
download | systemtap-steved-7fdd3e2c61874abd631de5038d846dffb6f5bc5f.tar.gz systemtap-steved-7fdd3e2c61874abd631de5038d846dffb6f5bc5f.tar.xz systemtap-steved-7fdd3e2c61874abd631de5038d846dffb6f5bc5f.zip |
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.
Diffstat (limited to 'dwflpp.h')
-rw-r--r-- | dwflpp.h | 1 |
1 files changed, 1 insertions, 0 deletions
@@ -139,6 +139,7 @@ struct inline_instance_info { std::memset(&die, 0, sizeof(die)); } + bool operator<(const inline_instance_info& other) const; std::string name; char const * decl_file; int decl_line; |