diff options
author | graydon <graydon> | 2005-07-29 01:47:56 +0000 |
---|---|---|
committer | graydon <graydon> | 2005-07-29 01:47:56 +0000 |
commit | 77de5e9eca19f041e85681439f41ea35d30a37c9 (patch) | |
tree | 0d4ec2f749ace9659df8f1082f1a8a8e2797e148 /staptree.cxx | |
parent | b2d5d95caa573e486b6503406b688da824cd20a9 (diff) | |
download | systemtap-steved-77de5e9eca19f041e85681439f41ea35d30a37c9.tar.gz systemtap-steved-77de5e9eca19f041e85681439f41ea35d30a37c9.tar.xz systemtap-steved-77de5e9eca19f041e85681439f41ea35d30a37c9.zip |
2005-07-28 Graydon Hoare <graydon@redhat.com>
* elaborate.cxx (derived_probe::derived_probe): Accept NULL probe.
* staptree.cxx (provide, require): Move from here...
* staptree.h: to here, and virtualize deep-copy methods.
* translate.cxx
(c_unparser::emit_common_header): Include loc2c-runtime.h
* tapsets.cxx
(dwflpp::iterate_over_modules): Use new, faster getmodules loop.
(dwflpp::literal_stmt_for_local): New method, call loc2c.
(var_expanding_copy_visitor): New struct which expands $-vars.
(dwarf_derived_probe): Rebuild this->body using var expander.
(query_function): Refactor logic a bit for speed.
* loc2c.{c,h}: Copies (with minor changes) of Roland's work
from elfutils CVS.
* Makefile.am (AM_CFLAGS): Set to elfutils-style.
(stap_SOURCES): Add loc2c.c.
* Makefile.in: Regenerate.
2005-07-28 Graydon Hoare <graydon@redhat.com>
* loc2c-runtime.h: New file from elfutils CVS.
Diffstat (limited to 'staptree.cxx')
-rw-r--r-- | staptree.cxx | 19 |
1 files changed, 0 insertions, 19 deletions
diff --git a/staptree.cxx b/staptree.cxx index fb7c56aa..7f672c38 100644 --- a/staptree.cxx +++ b/staptree.cxx @@ -1020,25 +1020,6 @@ throwing_visitor::visit_functioncall (functioncall* e) // ------------------------------------------------------------------------ -template <typename T> static void -require (deep_copy_visitor* v, T* dst, T src) -{ - *dst = NULL; - if (src != NULL) - { - v->targets.push(static_cast<void* >(dst)); - src->visit(v); - v->targets.pop(); - assert(*dst); - } -} - -template <typename T> static void -provide (deep_copy_visitor* v, T src) -{ - assert(!v->targets.empty()); - *(static_cast<T*>(v->targets.top())) = src; -} void deep_copy_visitor::visit_block (block* s) |