| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
* bench/bench_ret.c (inst_sys_write_ret): Fix prototype.
|
| |
|
|
|
|
| |
* bench: New probe to do benchmarks.
|
|
|
|
|
|
|
|
|
| |
* librelay.c (merge_output): Use unlocked stdio
to improve speed.
* stp_merge.c: New file.
* Makefile: Add stp_merge.
|
|
|
|
|
|
|
|
| |
* stpd.c (main): Add new command line arg, "-m"
to disable the per-cpu merging.
* librelay.c (merge_output): Replacement for sort_output().
Efficiently merges per-cpu streams.
|
| |
|
|
|
|
|
|
|
| |
* Doxyfile (PREDEFINED): Added USE_RET_PROBES.
* probes.c (_stp_register_kretprobes): New function.
(_stp_unregister_kretprobes): New function.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* tapsets.cxx
(probe_type): New enum.
(probe_spec): New struct.
(dwarf_derived_probe): Reorganize a bit, interpret .return.
(query_statement): Translate addresses back to module space.
(probe_entry_function_name):
(probe_entry_struct_kprobe_name):
(foreach_dwarf_probe_entry):
(declare_dwarf_kernel_entry):
(deregister_dwarf_kernel_entry):
(register_dwarf_kernel_entry):
(register_dwarf_module):
(declare_dwarf_module_entry):
(deregister_dwarf_module_entry):
(register_dwarf_module_entry): New functions.
(dwarf_derived_probes::emit_probe_entries):
(dwarf_derived_probes::emit_registrations):
(dwarf_derived_probes::emit_deregistrations): Implement.
|
|
|
|
| |
* all probes: MOdified to use latest changes to transport.h.
|
|
|
|
|
| |
* transport.h: Move all the transport open stuff here
and provide a convenient macro.
|
|
|
|
|
| |
* control.c: Replace macro DEFINE_SPINLOCK because
some kernels don't have it.
|
|
|
|
|
| |
* runtime.h: Include config.h first then redefine CONFIG_SMP
and NR_CPUS.
|
| |
|
| |
|
|
|
|
|
| |
* build_probe (build): Add relay_flush and relay_switch_subbuf to the
list of undefines to ignore.
|
|
|
|
|
| |
* config.in, configure: Regenerated.
* tapsets.cxx: Make dwarf code conditional on new elfutils header.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
* configure.ac: Scan for libdwfl.
* staptree.h (verbose): New global.
* main.cxx (usage, main): Implement -v option.
* tapsets.cxx (dwflpp): New struct.
(query_statement): New function.
(query_function): New function.
(query_cu): New function.
(query_module): New function.
(dwarf_derived_probe): Implement primary forms.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* counter.c: New file. Counter aggregations.
* stat.c: New file. Stat aggregations.
* stat.h: Header file for stats.
* map-int.c: New file. Support for int64 values.
* map-stat.c: New file. Support for stat values.
* map-str.c: New file. Support for string values.
* map-values.c: Now just includes the necessary map-*.c files.
* stat-common.c: New file. Stats stuff common to Stats and maps
containing stats.
* Doxyfile: Bumped version to 0.6.
* README: Renamed README.doc and reorganized.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* build: Modified to use build_probe.
* build_probe: New file. This does the work of building
a single probe or set of probes in a directory.
* Makefile.template: New file. Template used by
build_probe to create Makefiles.
* agg: New set of probes to test/demonstrate
Counter and Stat aggregations.
* all probes modified for latest changes and new build
process.
|
|
|
|
|
|
|
|
|
|
|
| |
* tapsets.h: New file.
(derived_probe_builder): Callback for making derived probes.
(match_key): Component of pattern-matching tree.
(match_node): Other component of pattern-matching tree.
* tapsets.cxx: Add pattern-matching system for probes.
(alias_derived_probe): Skeleton for alias probes.
(dwarf_derived_probe): Skeleton for dwarf probes.
(register_standard_tapsets): Registry for standard tapsets.
|
| |
|
|
|
|
| |
* current.c (_stp_ret_addr): Fix computation for i386.
|
|
|
|
|
|
|
|
|
| |
* README: Removed old docs and replaced with simple build
instructions.
* Makefile: New file.
* probes/build: New file.
|
|
|
|
| |
stopwatch and profiling for systemtap.
|
|
|
|
|
|
|
|
|
|
| |
Start separating out translator-side probe point recognition.
* tapsets.cxx: New file.
(be_derived_probe): Support for begin/end probes.
(derive_probe): Ditto. Reject anything unrecognized.
* translator.cxx: Move out old code.
* Makefile.am: Add new source file.
* testsuite/semok/*: Switch to begin/end probes only.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
systemtap/916
Implement all basic scalar operators, including modify-assignment.
* parse.cxx (lexer): Allow multi-character lookahead in order to
scan 1/2/3-character operators.
(parse_boolean_or/and/xor/shift): New routines.
* translate.cxx (visit_assignment, visit_binary_expression,
visit_*_crement): Generally rewrote.
(visit_*): Added more parentheses in output.
(emit_module_init): Initialize globals.
* staptree.h, elaborate.cxx, elaborate.h: Remove exponentiation.
* main.cxx (main): Add an end-of-line to output file.
* testsuite/*: Several new tests.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Implement for/next/continue/break/while statements.
* staptree.h: Declare new 0-arity statement types. Tweak for_loop.
* parse.cxx: Parse them all.
* translate.cxx (c_unparser): Maintain break/continue label stack.
(visit_for_loop, *_statement): New implementations.
* elaborate.*, staptree.cxx: Mechanical changes.
* testsuite/parseok/ten.stp, semko/twelve.stp, transko/two.stp,
transok/five.stp: New tests.
|
|
|
|
|
|
|
| |
* elaborate.cxx (find_*): Remove arity checks from here ...
* staptree.cxx (set_arity): Put arity match assertion here.
* testsuite/semko/{six,nine}.stp: Confirm logic.
* testsuite/transko/one.stp: First translation-time ko test.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* TODO: Removed entries already represented in bugzilla.
* elaborate.cxx: Rewrite type inference for several operators.
* main.cxx (main): For -p2 runs, print types of function/probe locals.
* parse.cxx (scan): Identify more two-character operators.
(parse_comparison): Support the whole suite.
* translate.cxx (visit_unary_expression, logical_or_expr,
logical_and_expr, comparison,ternary_expression): New support.
* testsuite/parseok/semok.stp: Clever new test.
* testsuite/transok/four.stp: New test.
* testsuite/*: Some tweaked tests for syntax changes.
|
|
|
|
|
|
| |
* parse.cxx (scan): Support C and C++ comment styles.
* testsuite/parseok/four.stp: Test them some ...
* testsuite/parseko/nine.stp: ... and some more.
|
| |
|
|
|
|
|
|
| |
* translate.cxx (visit_concatenation, visit_binary_expression):
New basic implementation.
(*): Reduce emitted whitespace and remove `# LINE "FILE"' lines.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Parse foreach construct. Added fuller copyright notices throughout.
* staptree.h (foreach_loop): New tree node type.
* staptree.cxx: Print it, visit it, love it, leave it.
* parse.cxx: Parse it.
(parse_stmt_block): Don't require ";" separators between statements.
(parse_array_in): Use [] as index group operator instead of ().
* elaborate.cxx (visit_foreach_loop): New code.
* translate.cxx: Slightly tighten errorcount/actioncount handling.
* main.cxx: Accept "-" as script file name standing for stdin.
(visit_arrayindex): Switch to simpler set_arity call.
* configure.ac: Generate DATE macro.
* Makefile.in, configure, config.in: Regenerated.
* testsuite/*: New/updated tests for syntax changes, foreach ().
|
|
|
|
|
|
|
| |
* string.c (_stp_string_cat_cstr): Be sure result is
always terminated.
* print.c (_stp_vprintf): Fix typo.
|
| |
|
|
|
|
|
|
|
|
|
| |
* map.c (_stp_map_print): Now takes a format string instead of a name.
* map.h (foreach): Update macro.
* string.c (_stp_string_cat_char): New function. Append a char
to a string.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
* map-keys.c: Don't forget to undef KEYSYM, ALLKEYS and ALLKEYSD.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
More fully parse & elaborate "expr in array" construct.
* staptree.h (array_in): Make this unary. Update .cxx to match.
* parse.cxx (parse_array_in): Rewrite.
(parse_symbol_plain): Removed. Update .h to match.
* elaborate.cxx (typeresolution_info::visit_array_in): New function.
(find_array): Tentatively, accept arity=0.
* translate.cxx (c_unparser::c_assign): New functions to eliminate
much ugly duplication. Use throughout.
(visit_symbol): Correct function formal argument search.
(c_tmpcounter*::visit): Add missing recursion in several functions.
* testsuite/*: Add new tests for array-in construct. Add the
first "transok" test.
* Makefile.am: Add transok tests.
* Makefile.in: Regenerated.
|
|
|
|
|
|
|
|
| |
* translate.cxx: Traverse trees just for common-header generation,
to emit explicit temp variables into context. Switch to explicit
"frame" pointer in generated function/probe bodies. Initialize
locals in function bodies. Rename "test_unparser" to "c_unparser"
throughout.
|
| |
|