summaryrefslogtreecommitdiffstats
path: root/elaborate.cxx
Commit message (Collapse)AuthorAgeFilesLines
...
* 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
|
* ha ha haFrank Ch. Eigler2008-06-111-1/+1
|
* duplicate warning thinko foxFrank Ch. Eigler2008-06-111-2/+2
|
* Eliminate duplicate warnings.Stan Cox2008-06-111-11/+23
|
* Merge branch 'master' of ssh://sources.redhat.com/git/systemtapFrank Ch. Eigler2008-05-211-0/+13
|\ | | | | | | | | | | * 'master' of ssh://sources.redhat.com/git/systemtap: Use pointer_arg to fetch arguments for syscall.utime and compat_utime. Optimize compound and binary expression assignments.
| * Optimize compound and binary expression assignments.Stan Cox2008-05-211-0/+13
| |
* | PR6538: fix treatment of initialized globalsFrank Ch. Eigler2008-05-211-1/+2
| |
* | PR6538: warn about read-only variablesFrank Ch. Eigler2008-05-201-3/+29
|/
* Optimize away assignments in other contexts.Stan Cox2008-05-191-0/+62
|
* suppress "pass-2 failed" messages from "stap -l FOOBAR"; just produce empty ↵Frank Ch. Eigler2008-05-171-6/+3
| | | | output