From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 30435 invoked by alias); 11 Feb 2009 04:15:54 -0000 Received: (qmail 30404 invoked by uid 9586); 11 Feb 2009 04:15:53 -0000 Date: Wed, 11 Feb 2009 04:15:00 -0000 Message-ID: <20090211041551.30389.qmail@sourceware.org> From: jistone@sourceware.org To: systemtap-cvs@sourceware.org Subject: [SCM] systemtap: system-wide probe/trace tool branch, master, updated. release-0.8-334-g8040a4b X-Git-Refname: refs/heads/master X-Git-Reftype: branch X-Git-Oldrev: 098043c5f96ee58756342cfbe7b49c2572f79a15 X-Git-Newrev: 8040a4b42cd0fc66142d3ef2f905ea0267726b76 Mailing-List: contact systemtap-cvs-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Post: List-Help: , Sender: systemtap-cvs-owner@sourceware.org List-Archive: Reply-To: systemtap@sourceware.org X-SW-Source: 2009-q1/txt/msg00138.txt.bz2 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 8040a4b42cd0fc66142d3ef2f905ea0267726b76 (commit) via 9f9873dfc0978ef3ce7b7b5aa7ae1e2b5b4909b9 (commit) via 1cd151d5b9e1fd46590d5e4c3473a86ea9bbe043 (commit) via 8bda649876b523f7733aa547ff86924a90f0e57b (commit) via de68882508cf4b6e25bab9341e95b708a2bd39dc (commit) via 4b6455e82679becf3ad12e4f12abb70de1ee271d (commit) via 4ed05b152284d9d4b8545f6e70c57ebdcd993f46 (commit) from 098043c5f96ee58756342cfbe7b49c2572f79a15 (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 8040a4b42cd0fc66142d3ef2f905ea0267726b76 Merge: 098043c5f96ee58756342cfbe7b49c2572f79a15 9f9873dfc0978ef3ce7b7b5aa7ae1e2b5b4909b9 Author: Josh Stone Date: Tue Feb 10 20:10:33 2009 -0800 Merge branch 'update_visitor' This brings a new update_visitor that makes it easier to traverse the parse tree and modify parts of it as necessary. I wrote this as part of my in-progress work to allow @cast() expansion, but I was able to apply it to the dwarf/etc. target variable expanders and to the optimization stages. I think the resulting code is more predictable and easier to follow... Conflicts: ChangeLog (bumped my commit dates to push dates...) commit 9f9873dfc0978ef3ce7b7b5aa7ae1e2b5b4909b9 Author: Josh Stone Date: Tue Feb 10 19:51:12 2009 -0800 Simplify void_statement_reducer * elaborate.cxx (void_statement_reducer): Convert to an update_visitor. commit 1cd151d5b9e1fd46590d5e4c3473a86ea9bbe043 Author: Josh Stone Date: Tue Feb 10 18:29:55 2009 -0800 Simplify dead_stmtexpr_remover * staptree.h (update_visitor::require): Add a clearok parameter for optimizing traversers to signal that they're ready for NULL back. * elaborate.cxx (dead_stmtexpr_remover): Convert to an update_visitor. commit 8bda649876b523f7733aa547ff86924a90f0e57b Author: Josh Stone Date: Tue Feb 10 15:31:50 2009 -0800 Simplify dead_assignment_remover By converting to an update_visitor, we now get full statement coverage in this optimizer for free. * elaborate.cxx (dead_assignment_remover): Convert into an update_visitor and remove its now-redundant traversal methods. commit de68882508cf4b6e25bab9341e95b708a2bd39dc Author: Josh Stone Date: Thu Feb 5 20:04:56 2009 -0800 Expand probe variables without a deep copy * tapsets.cxx (var_expanding_copy_visitor): This struct becomes var_expanding_visitor and inherits from update_visitor instead of deep_copy_visitor. Each of the probe-type variants of this are also no longer copiers. commit 4b6455e82679becf3ad12e4f12abb70de1ee271d Author: Josh Stone Date: Thu Feb 5 20:02:35 2009 -0800 Create update_visitor for modifying trees * staptree.h (update_visitor): A new visitor to make it easier to rewrite parts of a probe or function without making a full copy. * staptree.cxx (update_visitor::*): Each child is recursed with a require() call, and then the parent returns itself with provide(). * staptree.h (deep_copy_visitor): Inherit from update_visitor to get the recursive descent while updating nodes. * staptree.cxx (deep_copy_visitor::*): Use the implicit copy constructors to copy all fields, then defer to update_visitor for the recursion. Referents are still cleared from the copies of symbols and function calls. commit 4ed05b152284d9d4b8545f6e70c57ebdcd993f46 Author: Josh Stone Date: Thu Feb 5 13:08:44 2009 -0800 Simplify require() and provide() * staptree.h (require, provide): Simplify stack operations with less pointer magic, and move to be deep_copy_visitor members. * staptree.h (deep_copy_visitor::deep_copy): Templatize * staptree.cxx, tapsets.cxx: Refactor require/provide callers ----------------------------------------------------------------------- Summary of changes: ChangeLog | 36 ++++ elaborate.cxx | 376 +++++++++++++--------------------------- staptree.cxx | 547 +++++++++++++++++++++++++++++++-------------------------- staptree.h | 101 ++++++++--- tapsets.cxx | 138 +++++++-------- 5 files changed, 595 insertions(+), 603 deletions(-) hooks/post-receive -- systemtap: system-wide probe/trace tool