summaryrefslogtreecommitdiffstats
path: root/staptree.h
diff options
context:
space:
mode:
authorJosh Stone <jistone@redhat.com>2010-03-16 11:11:26 -0700
committerJosh Stone <jistone@redhat.com>2010-03-16 11:11:26 -0700
commitc72aa911bf91607626427dac0e00ea0c751a22ba (patch)
treed100a4d0f02e3ca1f54f4b06b75936174c3ee65e /staptree.h
parent513f3caec840862f2bc10d4f830ba81c28e7cda9 (diff)
downloadsystemtap-steved-c72aa911bf91607626427dac0e00ea0c751a22ba.tar.gz
systemtap-steved-c72aa911bf91607626427dac0e00ea0c751a22ba.tar.xz
systemtap-steved-c72aa911bf91607626427dac0e00ea0c751a22ba.zip
PR10831: Remember derived "aliases" in the probe chain
SDT and label probes are not really final probe types themselves, but rather they get translated into some other final type. This patch preserves this relationship as if SDT and label probes were dynamically generated aliases. * elaborate.cxx (probe::create_alias): New, fake an alias_derived_probe. * tapsets.cxx (query_label): Append the label name as an alias. (sdt_query::handle_query_module): Let convert_location do the alias. (sdt_query::convert_location): Translate the location using an alias. * main.cxx (printscript): Elaborate the derivation debug dump.
Diffstat (limited to 'staptree.h')
-rw-r--r--staptree.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/staptree.h b/staptree.h
index f357eb28..67349b8e 100644
--- a/staptree.h
+++ b/staptree.h
@@ -681,6 +681,7 @@ struct probe
virtual void printsig (std::ostream &o) const;
virtual void collect_derivation_chain (std::vector<probe*> &probes_list);
virtual const probe_alias *get_alias () const { return 0; }
+ virtual probe* create_alias(probe_point* l, probe_point* a);
virtual probe* basest () { return this; }
virtual ~probe() {}
bool privileged;