| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Probe registration rework. Offline dwarf processing for better
cross-instrumentation.
* elaborate.h (derived_probe): Remove registration-related code
generation API. Add new function sole_location().
(derived_probe_group): Reworked this and associated classes.
* session.h (systemntap_session): Create individual per-category
derived_probe_groups.
* elaborate.cxx (derived_probe_group): Reworked.
(alias_derived_probe): Switch to new derived_probe API.
(semantic_pass_symbols): Ditto.
* translate.cxx (mapvar init): Check for array initialization error.
(emit_module_init): Handle such failures, at least in theory.
(emit_module_exit): Switch to new derived_probe_group API. Call
cpu_relax() during shutdown busywait.
(emit_common_header): Elide context variables for elided handler fns.
(c_unparser::emit_probe): Implement new, improved duplicate
elimination technique for probe handlers. Leave two older ones
behind as compile options for education.
* tapsets.cxx (*): Reworked all probe registration code, moving
it from derived_probes into derived_probe_groups. Shrunk output
code. Temporarily disabled probe timing and perfmon/mark probes.
(dwflpp): Use offline reporting, so that module matching and
relocation is performed at run time.
(dwarf_query): Remove flavour logic, now supplanted by other
duplicate elimination code.
(dwarf_derived_probe): Reworked construction, centralized
module/section/offset computations.
* tapsets.h (all_session_groups): New little helper.
* main.cxx (main): For pass-2 message, print number of embeds too.
* systemtap.spec.in: Add a "BuildRequires: dejagnu" for make check.
* configure.ac: Bump version to 0.5.11.
* configure: Regenerated.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR systemtap/1209
* tapsets.cxx
* elaborate.cxx (derived_probe_builder): Add get_param function.
* elaborate.h: Declare them.
* tapsets.cxx (dwarf_query::get_*_param): Call them.
(timer_derived_probe, timer_builder): New classes.
(register_standard_tapsets): Register timer.jiffies(N) and friend.
* translate.cxx (translate_pass): #include <linux/timers.h>.
* stap.1.in: Document timer.jiffies(N) probe points.
* testsuite/buildok/fourteen.stp: New test.
2005-08-19 Frank Ch. Eigler <fche@elastic.org>
* arith.c (_stp_random_pm): New function.
|
|
|
|
|
|
| |
* elaborate.cxx: Revert builtin-function code.
* translate.cxx: Likewise.
* tapsets.{h,cxx}: Likewise.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* elaborate.cxx
(semantic_pass_symbols): Only enter body if non-null.
(semantic_pass_types): Likewise.
(semantic_pass): Pass session to register_standard_tapsets.
* translate.cxx
(builtin_collector): New struct.
(hookup_builtins): New function.
(translate_pass): Only translate functions with bodies.
(c_unparser::emit_common_header): Likewise, and call hookup_builtins.
* tapsets.hh (builtin_function): New class.
(register_standard_tapsets): Change parameter to session.
* tapsets.cc (bultin_function::*): Implement class.
(register_standard_tapsets): Register printk, log, warn.
* testsuite/transok/six.stp: New test.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* staptree.{h,cxx} (probe_alias): New structure.
* parse.{h,cxx} (parser::parse): Parse probes or probe aliases.
(parser::parse_probe): Likewise.
* tapsets.{h,cxx}:
(derived_probe_builder):
(match_key):
(match_node):
(alias_derived_probe): Move from here,
* elaborate.{h,cxx}: to here.
* elaborate.h (systemtap_session::pattern_root): New member.
(register_library_aliases): New function.
* tapsets.cxx: Build one dwarf_derived_probe per target address.
|
|
* 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.
|