| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
| |
PR 2205, patch from <hiramatu@sdl.hitachi.co.jp>:
* parse.cxx (scan): Correct EOF detection for %{ %} case.
|
| |
|
|
|
|
| |
* agg/stats.c (main): Delete Stats when done.
|
|
|
|
|
| |
* alloc.c (_stp_alloc_percpu): New function.
(_stp_free_percpu): New function.
|
|
|
|
|
|
|
|
| |
* stat.c (_stp_stat_init): Use _stp_alloc_percpu().
(_stp_stat_del): New function.
* alloc.c (_stp_alloc_percpu): New function.
(_stp_free_percpu): New function.
|
|
|
|
| |
includes the fix for PR #1345.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR 2060 etc.
* tapsets.cxx (visit_target_symbol): Tolerate failed resolution by
letting target_symbol instance pass through to optimizer and
type checker.
* elaborate.cxx (semantic_pass_optimize): New family of functions and
associated visitor classes.
(visit_for_loop): Tolerate absent init/incr clauses.
(semantic_pass): Invoke unless unoptimized (-u) option given.
* main.cxx, session.h: Add support for flag.
* staptree.cxx (visit_for_loop): Tolerate absent init/incr clauses.
(traversing_visitor::visit_arrayindex): Visit the index expressions.
(functioncall_traversing_visitor): New class.
(varuse_tracking_visitor): New class.
* staptree.h: Corresponding changes.
* parse.cxx (parse_for_loop): Represent absent init/incr expressions
with null statement pointer instead of optimized-out dummy numbers.
* stap.1.in: Document optimization.
* testsuite/{semko,transko}/*.stp: Added "-u" or other code to many
tests to check bad code without optimizer elision.
* testsuite/semok/optimize.stp: New test.
* elaborate.cxx (unresolved, invalid, mismatch): Standardize error
message wording.
* stapfuncs.5.in: Tweak print/printf docs.
* tapset/logging.stp: Remove redundant "print" auxiliary function,
since it's a translator built-in.
* testsuite/transok/five.stp: Extend test.
* translate.cxx (emit_symbol_data): Put symbol table into a separate
temporary header file, to make "-p3" output easier on the eyes.
* buildrun.cxx (compile_pass): Eliminate test-mode support throughout.
* main.cxx, session.h, translate.cxx: Ditto.
* main.cxx (main): For last-pass=2 runs, print post-optimization ASTs.
|
|
|
|
|
| |
* pmap-gen.c (_stp_pmap_get): Fix bug where old data
from agg map could be returned after element was deleted.
|
|
|
|
|
| |
* tapsets.cxx (profile_derived_probe::emit_probe_entries): Setup
c->regs properly in light of the emit_probe_prologue change.
|
|
|
|
|
| |
* translate.cxx (c_unparser::visit_foreach_loop): improved the error
message when _stp_pmap_agg fails.
|
| |
|
|
|
|
|
| |
* translate.cxx (c_unparser_assignment::visit_arrayindex):
Eliminate dummy assignments for "<<<" code.
|
|
|
|
|
| |
PR 2156
* testsuite/buildok/pmap_foreach.stp: Add test with sorting
|
|
|
|
|
|
| |
PR 2156
* translate.cxx (c_unparser::visit_foreach_loop): Check the return
value of _stp_pmap_agg() for NULL.
|
|
|
|
|
|
| |
* systemtap.spec.in: Remove explicit kernel-devel dependency,
since some old kernel rpm builds don't virtual-provide it for
e.g. smp, hugemem.
|
|
|
|
|
|
|
|
|
|
|
| |
PR 2142
* translate.cxx (EXTRACTORS_PERMISSIVE): New experimental policy
parameter.
(c_unparser::visit_arrayindex, visit_print_format, visit_stat_op):
Tolerate absent index (= NULL runtime return) in pmap.
(*): Make semantic_error messages consistently lower case.
* testsuite/buildok/iterate_histogram_buckets.stp: Note some missing
functionality.
|
|
|
|
| |
* stap.1.in: Document the 'delete' operator.
|
| |
|
|
|
|
|
|
| |
* systemtap.spec.in (elfutils_version): Require 0.119 now.
* configure.ac, systemtap.spec.in: Version 0.5.3.
* configure: Regenerated.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR 2140
* translate.cxx (mapvar::del): Add ability to delete an indexed stat
from (p)maps.
(delete_statement_operand_visitor::visit_symbol): Add ability to
delete entire pmaps and scalars.
(delete_statement_operand_tmp_visitor): Add a special tmpvar visitor
to parallel delete_statement_operand_visitor.
(c_tmpcounter::visit_delete_statement): Invoke the new visitor.
* testsuite/buildok/delete.stp: Also test scalar deletes.
* vim/syntax/stap.vim: Recognize 'delete' operator.
2006-01-16 Josh Stone <joshua.i.stone@intel.com>
* stat.c (_stp_stat_clear): add a function that just
clears a Stat, so we can use delete in the translator.
|
|
|
|
|
| |
* map.c (_stp_pmap_agg): Return NULL when aggregation
fails.
|
|
|
|
|
|
|
|
| |
PR 2148
* translate.cxx (MAXERRORS): Actually the max should be 0, so first
error aborts session.
* Revert last stp_exit change.
|
|
|
|
|
| |
* main.cxx (main): Suppress "Try again with -v" message if already
verbose.
|
|
|
|
| |
* translate.cxx (c_unparser:getmap): Correct exception throwing typo.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR 2056
* translate.cxx (c_unparser::aggregation_locks): Keeps track of
foreach's locks on pmaps to avoid extra aggregation.
(c_unparser::visit_foreach_loop): Set aggregation_locks appropriately.
(c_unparser::load_aggregate, mapvar::call_prefix, mapvar::get):
Use a new parameter to indicate that we should read from the
already-aggregated map rather than the full pmap..
(c_unparser::visit_arrayindex c_unparser::visit_print_format,
c_unparser::visit_stat_op): Use aggregation_locks to avoid taking a
lock and aggregating the pmap.
(c_unparser::emit_map_type_instantiations): To read from a pmap's
aggregated map, we need to include map-gen.c for the _stp_map_*
functions.
(c_unparser::obtained_locks, varlock::varlock, varlock::~varlock):
Add simple static checking to detect incompatible nested locks during
translation, and flag it as an error.
|
|
|
|
|
|
| |
PR 2140
* testsuite/buildok/delete.stp: Test correct compilation of the
'delete' operator for all "legal" variations.
|
|
|
|
| |
* translate.cxx (MAXERRORS): Oops, set back to intended default of 1.
|
|
|
|
|
|
|
| |
PR 1972.
* tapsets.cxx (var_expanding_copy_visitor::visit_target_symbol):
Produce error message for $var access within .return probes.
* testsuite/semko/thirtyfour.stp: New test.
|
|
|
|
|
| |
* logging.stp: Don't set STAP_SESSION_STOPPING.
That it done in _stp_exit().
|
|
|
|
| |
* io.c (_stp_exit): set STAP_SESSION_STOPPING.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR 2060.
* buildrun.cxx (compile_pass): Add "V=1" to kbuild if verbose.
* translate.cxx (translator_output): For output-file constructor,
set an explicit output buffer.
(emit_module_init, emit_module_exit): Reorganize output, to spit
each individual probe registration/deregistration blurb into a
separate function.
* translate.h: Corresponding changes; set default buffer size to 8K.
* translate.cxx, tapsets.cxx: Replace "endl" by buffer-friendly "\n"
throughout code generation routines.
|
|
|
|
| |
* HACKING: Extend guidelines for tapset testing.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR 2056
* translate.cxx (var::~var, var::hist, var::buckets): make these
methods virtual, so we can use polymorphism.
(mapvar::hist, mapvar::buckets): Override the corresponding var
methods to handle pmaps correctly.
(c_unparser::visit_arrayindex, c_unparser::visit_print_format): Make
use of the new polymorphic behavior of var & mapvar when dealing with
histogram data.
* testsuite/buildok/pmap_foreach.stp: Add tests to check histogram
accesses with for/foreach.
|
|
|
|
|
|
| |
PR 2057.
* translate.cxx (c_unparser_assignment::visit_arrayindex): Don't take
write lock around pmap accumulation.
|
| |
|
|
|
|
| |
* tapsets.cxx (emit_deregistration): Fix bad thinko on loop nesting.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR 1144, 1379
* tapsets.cxx (emit_probe_prologue, _epilogue): New routines.
Call from existing derived_probe spots. Implement soft errors in
epilogue code. Implement reentrancy detection in prologue code.
(dwarf_derived_probe::emit_deregistration): Add kprobes layer
"nmissed" to skipped_count.
* translate.cxx (varlock): Use nsleep(TRYLOCKDELAY) in lock
contention loop.
(emit_module_exit): Report number of soft errors and skipped probes.
(emit_function, _probe): Add __restrict__ marker to context pointer.
(translate_pass): Define new MAXTRYLOCK, TRYLOCKDELAY, MAXERRORS,
MAXSKIPPED parameters.
* tapset/logging.stp (error): Don't stp_error, just set context state.
* stap.1.in, stapfuncs.5.in: Document soft errors.
* elaborate.h: Corresponding changes.
2006-01-03 Frank Ch. Eigler <fche@redhat.com>
* io.c (_stp_softerror): New function.
2006-01-03 Frank Ch. Eigler <fche@redhat.com>
* systemtap.base/timers.exp: Extend the test run duration.
Accept skipped probe warnings at shutdown.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
SCRIPTS:
run.sh - This is the driver for automated testing.
To run: ./run.sh stpdirectory c_binaries_directory
Result: log/timestamp.log discerpancy report
ctostp.sh - This script generates corresponding stp probe script
files for every C file found in the input directory.
To Run: ctostp.sh input output where input is the
directory containing the C files to convert. Output
is the directory to store the corresponding stp
files.
build.sh - This script expedites the process of compiling all
of the c files. When the "compile" flag is given
it creates a directory called bin, which stores the
compiled C programs. ./build.sh clean removes the
binaries, and ./build.sh run attempts to execute all
of the programs in cfiles/bin.
|
|
|
|
|
|
|
|
|
| |
* tapset/2.6.9-20.ELsmp/syscalls.stp: added kernel
version tapset
* tapset/2.6.9-20.ELsmp/i686/syscalls.stp: added kernel
version arch specific tapset
* tapset/doc/dicrepancies.txt: log of kernel version
discrepancies.
|
|
|
|
|
|
|
|
|
| |
* tapset/2.6.9-20.ELsmp/syscalls.stp: added kernel
version tapset
* tapset/2.6.9-20.ELsmp/i686/syscalls.stp: added kernel
version arch specific tapset
* tapset/doc/dicrepancies.txt: log of kernel version
discrepancies.
|
| |
|
|
|
|
|
| |
* configure.ac: Pass LDFLAGS to elfutils configure to force DT_RUNPATH.
* configure: Regeneraed.
|
| |
|
|
|
|
| |
* translate.cxx (itervar::next): emit different code for pmaps
|
|
|
|
| |
* loc2c.h: Add __attribute__ defeating code for g++ 3.3 compatibility.
|
|
|
|
|
|
|
| |
* vim/filetype.vim: defines *.stp files as SystemTap scripts
* vim/ftplugin/stap.vim: sets the comment styles
* vim/indent/stap.vim: enables simple auto-indenting
* vim/syntax/stap.vim: defines syntax highlighting
|
| |
|
|
|
|
|
| |
* configure.ac, systemtap.spec.in: Version 0.5.2.
* configure: Regenerated.
|