summaryrefslogtreecommitdiffstats
path: root/elaborate.cxx
Commit message (Collapse)AuthorAgeFilesLines
...
| * PR10102: tolerate mismatched optional probeWenji Huang2009-04-271-0/+3
| | | | | | | | | | | | * elaborate.cxx: Early return for mismatched optional probe. * testsuite/systemtap.base/optionalprobe.exp: New test case. * testsuite/systemtap.base/optionalprobe.stp: Ditto.
* | 2009-04-22 Dave Brolley <brolley@redhat.com>Dave Brolley2009-04-221-19/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * elaborate.h (unprivileged_whitelist): Removed. (unprivileged_ok): New member of match_node. (allow_unprivileged,unprivileged_allowed): New methods of match_node. * elaborate.cxx (match_node): Initialize unprivileged_ok. Remove initialization of unprivileged_whitelist. (allow_unprivileged,unprivileged_allowed): New methods of match_node. (matchnode::find_and_build): Remove check of unprivileged_whitelist. Call unprivileged_allowed. * tapsets.cxx (dwarf_derived_probe::register_function_and_statement_variants): New parameter: unprivileged_ok. (dwarf_derived_probe::register_function_variants): Likewise. (dwarf_derived_probe::register_statement_variants): Likeiwse. (register_standard_tapsets): Call allow_unprivileged for nodes which are safe for unprivileged users.
* | Merge branch 'master' of git://sources.redhat.com/git/systemtapDave Brolley2009-04-211-0/+1
|\|
| * From Prerna Saxena: Add the kprobe.function probe familyAnanth N Mavinakayanahalli2009-04-211-0/+1
| |
* | 2009-04-20 Dave Brolley <brolley@redhat.com>Dave Brolley2009-04-201-1/+20
|/ | | | | | | | | | * main.cxx (main): Turn of guru_mode if --unprivileged is specified and vice-versa. * elaborate.h (unprivileged_whitelist): New member of match_node. * elaborate.cxx (match_node::match_node): Initialize unprivileged_whitelist. (match_node::find_and_build): In --unprivileged mode, throw a semantic_error for probe components which are not in uinprivileged_whitelist.
* PR10070: don't warn about side-effect-free probes in -t (timing) modeFrank Ch. Eigler2009-04-141-1/+2
| | | | * elaborate.cxx (semantic_pass_opt4): Filter warning on s.timing.
* PR10026: Read marker/tracepoint args directlyJosh Stone2009-04-061-0/+3
| | | | | | | | | | We already stash the context variables for markers and tracepoints into the locals for the probe body, but then we were using separate functions to read those locals for each particular probe body. This patch instead teaches the unparser how to emit the local name directly for those context variables. The resulting code from the translator is much simpler now.
* tracepoint probes: clear session derived_probe_groups pointer in ctor to ↵Frank Ch. Eigler2009-03-081-0/+1
| | | | avoid SEGV
* PR9719: uninitialized variable fixFrank Ch. Eigler2009-02-181-2/+2
|
* BZ 9719: Improve type mismatch messagesRajan Arora2009-02-181-6/+53
|
* Bump copyright years to 2009Josh Stone2009-02-181-1/+1
|
* Enable session-wide code filteringJosh Stone2009-02-181-0/+6
| | | | | | | | | | This will be used to hook to dwarf_builder to all functions and probes so it can attempt @cast expansion. * session.h (systemtap_session): Add a vector of update_visitors that will act as filters for all probes and functions. * elaborate.cxx (semantic_pass_symbols): Run probes and functions through each registered code filter.
* Add high-level support for @cast()ingJosh Stone2009-02-181-0/+31
| | | | | | | | | | | | | | | | | | This handles all of the parsing, traversal, and optimization. It doesn't actually resolve the cast yet though. * staptree.h (struct cast_op, visitor::visit_cast_op): New. * staptree.cxx (cast_op::print/visit, various visitor::visit_cast_op's): Incorporate cast_op into the basic tree operations. * parse.cxx (parser::parse_symbol): Parse @cast operator with an expression operand, type string, and optional module string. * translate.cxx (c_unparser::visit_cast_op): Error out if a @cast survives to translation. * elaborate.cxx (typeresolution_info::visit_cast_op): Error out if a @cast survives to type resolution. (symbol_fetcher::visit_cast_op): treat @casts as a symbol target (void_statement_reducer::visit_cast_op): unused @casts can be discarded, but the operand should still be evaluated.
* Simplify void_statement_reducerJosh Stone2009-02-101-94/+67
| | | | * elaborate.cxx (void_statement_reducer): Convert to an update_visitor.
* Simplify dead_stmtexpr_removerJosh Stone2009-02-101-54/+37
| | | | | | * 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.
* Simplify dead_assignment_removerJosh Stone2009-02-101-108/+16
| | | | | | | | 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.
* match_node::find_and_build disambiguate error messages.Mark Wielaard2009-02-031-1/+2
|
* Add Vim modelines for GNU style in stapJosh Stone2009-01-281-0/+1
|
* First attempt at printf kernel memory hex dumpElliott Baron2008-12-191-0/+1
|
* PR7051: Remove broken printf %n directive supportroot2008-12-051-4/+2
|
* PR7053: Add checking empty aggregate and default print where @count==0.Wenji Huang2008-12-021-1/+37
|
* PR6477: tolerate null token, e.g., from unwindsym warning messageFrank Ch. Eigler2008-11-281-1/+3
|
* PR7035: don't suppress all error messages during listings modeWenji Huang2008-11-271-3/+0
|
* RHBZ 468139 avoid display of tapset globalsRajan Arora2008-10-271-2/+11
|
* partial revert of 212a56Frank Ch. Eigler2008-10-261-2/+10
|
* Unused global variables display in guru mode fix (rh bz 468139)Rajan Arora2008-10-251-1/+2
|
* PR6851: Added support for %c printf conversion specifier [trying again]Elliott Baron2008-10-201-3/+4
|
* Display source context for error and warning messages (6701)Rajan Arora2008-10-091-0/+43
|
* sort arrays by value- subject to automagic foreach/printfFrank Ch. Eigler2008-09-261-1/+2
|
* PR6916: fix STRUCT1 ($var alternatives error message syntax) regressionFrank Ch. Eigler2008-09-261-13/+30
|
* Fix redundant implicit probe points in listing modeWenji Huang2008-09-121-0/+2
|
* PR6876: translator speedup for many $varsFrank Ch. Eigler2008-09-101-95/+111
|
* Handle scalar statistics.Stan Cox2008-09-051-8/+25
|
* Simplify add_global_var_display token use.Stan Cox2008-09-021-23/+10
|
* Display written but unread global statistics.Stan Cox2008-09-011-4/+31
|
* Repopulate symbol/type info.Stan Cox2008-08-291-35/+10
|
* fix global-var array index renderingFrank Ch. Eigler2008-08-281-148/+154
| | | | (plus emacs' automagic whitespace fixes)
* Automatically print written but unread globalsStan Cox2008-08-271-7/+195
|
* session.h (struct systemtap_session): Added itrace_derived_probedcn2008-07-291-0/+1
| | | | | | | | | | | | | | | | | | | group. elaborate.cxx (systemtap_session::systemtap_session): Added initialization of itrace_derived_probes. tapsets.cxx (struct itrace_derived_probe): Add derived_probe struct for holding info needed by itrace probes. (struct itrace_derived_probe_group): New derived_probe_group to handle itrace probes. (itrace_derived_probe::itrace_derived_probe): Needed for use with task_finder. (itrace_derived_probe_group::join_group): Ditto. (itrace_derived_probe_group::enroll): Ditto. (itrace_derived_probe_group::emit_probe_decl): Ditto. (itrace_derived_probe_group::emit_module_decls): Ditto. (itrace_derived_probe_group::emit_module_init): Ditto. (itrace_derived_probe_group::emit_module_exit): Ditto. stapprobes.5.in : Added documentation of itrace probe.
* make module_cache a session field rather than plain staticFrank Ch. Eigler2008-06-231-0/+1
|
* Get rid of the dynamic_cast<>s in void_statement_reducer.Josh Stone2008-06-191-57/+49
| | | | | | | | Instead, visit_expr_statement can explicitly load a pointer to use for back-references. I also decided to be less-clever about reusing expr_statements. It's a little leakier as a result, but I like having less magic in the air.
* Prove that I know how to spell.Josh Stone2008-06-181-1/+1
|
* Add Intel to copyright header on elaborate.cxxJosh Stone2008-06-181-0/+1
|
* New optimization to break up statements in void contexts.Josh Stone2008-06-181-19/+419
| | | | | | | | | | | | | | | | PR 6644 * elaborate.cxx (dead_stmtexpr_remover::visit_block): Flatten nested block statements into a single block. (dead_stmtexpr_remover::visit_if_statement): Remove the possibility of if_statements with a null thenblock. When an if lacks both then and else, either remove it completely or reduce it to a simple statment evaluating the condition. With an else and no then, invert the condition and else becomes then. (void_statement_reducer): New optimization visitor that breaks statements in void context into smaller pieces, to expose more optimization opportunities. (semantic_pass_opt5, semantic_pass_opt6): Bump opt5 to opt6, and create a new opt5 that runs through void_statement_reducer.
* Merge branch 'master' of ssh://sources.redhat.com/git/systemtapFrank Ch. Eigler2008-06-161-1/+0
|\ | | | | | | | | | | * 'master' of ssh://sources.redhat.com/git/systemtap: Improved callback handling. Create alternative list only as needed.
| * Create alternative list only as needed.Stan Cox2008-06-161-28/+29
| |
* | warning/error message compaction by removing duplicated token file namesFrank Ch. Eigler2008-06-161-56/+94
|/
* Bug 6611: read-only variable typo warnings should list alternatives.Stan Cox2008-06-161-6/+40
|
* Make print_warning parm a const.Stan Cox2008-06-121-1/+1
|
* Micro-optimize print_warning output. Fix warnings.exp line count.Mark Wielaard2008-06-111-2/+1
|