| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* parse.cxx (parser::parser): Added initializer for 'context'
member variable.
(tt2str): Added support for new tok_keyword type.
(operator <<): Ignores keyword content when outputting error
message.
(lexer::scan): Recognizes keywords, such as 'probe', 'global',
'function', etc. and classifies them as type 'tok_keyword'. This
causes keywords to become reserved so they cannot be used for
function names, variable names, etc.
(parser::parse): Changed tok_identifier to tok_keyword when looking
for "probe", "global", or "function". Also sets context member
variable which remembers if we're in probe, global, function, or
embedded context.
(parser::parse_probe, parser::parse_statement)
(parser::parse_global, parser::parse_functiondecl)
(parser::parse_if_statement, parser::parse_delete_statement)
(parser::parse_break_statement, parser::parse_continue_statement)
(parser::parse_for_loop, parser::parse_while_loop)
(parser::parse_foreach_loop, parser::parse_array_in): Looks for
tok_keyword instead of tok_identifier.
(parser::parse_probe_point): Allows keywords as part of a probe
name, since "return" and "function" are keywords.
(parser::parse_return_statement): Looks for tok_keyword instead of
tok_identifier. Make sure we're in function context.
(parser::parse_next_statement): Looks for tok_keyword instead of
tok_identifier. Make sure we're in probe context.
* parse.h: Added parse_context enum. Added 'tok_keyword' to
token_type enum. Added parse_context 'context' member variable to
parser class.
* stap.1.in: Because the string() function has been removed,
the 'string()' function reference has been changed to a 'sprint()'
function reference.
* stapex.5.in: Ditto.
* stapfuncs.5.in: The description of the string() and hexstring()
functions has been removed.
* testsuite/buildok/context_test.stp: Calls to the string()
function were converted to sprint() function calls.
* testsuite/buildok/fifteen.stp: Ditto.
* testsuite/buildok/nineteen.stp: Ditto.
* testsuite/buildok/process_test.stp: Ditto.
* testsuite/buildok/task_test.stp: Ditto.
* testsuite/buildok/timestamp.stp: Ditto.
* testsuite/buildok/twentyone.stp: Ditto.
* testsuite/semok/args.stp: Ditto.
* testsuite/semok/seven.stp: Ditto.
* testsuite/buildok/fourteen.stp: Calls to log()/string() were
converted to a call to printf().
* testsuite/buildok/sixteen.stp: Ditto.
* testsuite/buildok/thirteen.stp: Ditto.
* testsuite/buildok/twentythree.stp: Ditto.
* testsuite/buildok/twentytwo.stp: Ditto.
* testsuite/buildok/seven.stp: Calls to the string()
function were converted to sprint() calls. Calls to the
hexstring() function were converted to sprintf() calls.
* testsuite/semok/eleven.stp: Ditto.
* testsuite/buildok/seventeen.stp: Calls to log()/hexstring() were
converted to a call to printf().
* testsuite/semko/nineteen.stp: Ditto.
* testsuite/parseok/three.stp: Because keywords are reserved, a
variable named 'string' was renamed to 'str'.
* testsuite/parseok/two.stp: Because keywords are reserved, a
variable named 'global' was renamed to 'gbl'.
* testsuite/transko/two.stp: Because the parser now checks for
'next' and 'return' statement context, a 'next' statement was
removed from a function and a 'return' statement was removed from
a probe.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* conversions.stp (hexstring, string): Removed functions. Because
of parser changes, "string" is now a reserved word and cannot be a
function name. Use 'sprintf("0x%x", num)' to replace hexstring()
and either 'sprint(num)' or 'sprintf("%d", num)' to replace
string().
* syscalls.stp (syscall.accept, syscall.alarm, syscall.close,
syscall.dup, syscall.epoll_create, syscall.exit, syscall.fchdir,
syscall.fdatasync, syscall.fsync, syscall.getsid) Changed
'string()' calls to 'sprint()' calls.
* syscalls2.stp (syscall.sched_get_priority_max,
syscall.sched_get_priority_min, syscall.sched_getscheduler,
syscall.setfsgid, syscall.setfsgid16, syscall.setfsuid,
syscall.setfsuid16, syscall.setgid, syscall.setgid16,
syscall.setuid, syscall.setuid16, syscall.ssetmask,
syscall.timer_delete, syscall.timer_getoverrun): Ditto.
* i686/syscalls.stp (syscall.iopl, syscall.rt_sigreturn,
syscall.sigreturn): Ditto.
* ppc64/syscalls.stp (syscall.ppc64_personality): Ditto.
* x86_64/syscalls.stp (kernel.syscall.iopl, kernel.syscall.umask):
Ditto.
* test/ctostp.sh: Uses 'sprint()' instead of 'string()' in
generated systemtap code.
|
|
|
|
|
|
|
|
|
| |
* tapsets.cxx, translator.cxx (*): Designate more emitted
functions as static.
* translator.cxx (visit_print_format): Correct regression
regression from two weeks ago.
* stapfuncs.5.in: Tweak wording. Deprecate returnval() in favour
of retval().
|
|
|
|
|
| |
* aux_syscalls.stp (_sys_open_flag_str): Rewrite in C so it
is complete and works on different archs.
|
|
|
|
| |
* testsuite/buildok/probefunc.stp: test probefunc()
|
|
|
|
| |
* stapfuncs.5.in: Clarify backtrace-related functions.
|
|
|
|
| |
* tapset/ctime.stp: New file.
|
|
|
|
|
|
|
|
| |
* examples/small_demos/proc_snoop.stp: monitor all process events.
* testsuite/buildok/task_test.stp: test compilation of all task
functions.
* testsuite/buildok/process_test.stp: test all process events and
associated variables.
|
|
|
|
|
| |
* task.stp: functions to retrieve task information
* process.stp: tapset for process-related events
|
| |
|
|
|
|
| |
* context.stp (probefunc): remove use of labels
|
|
|
|
| |
* context.stp (probefunc): define our own exit label
|
| |
|
|
|
|
| |
in script associated with timing information.
|
| |
|
| |
|
|
|
|
|
|
|
| |
PR 2594
From Thang P Nguyen <thang.p.nguyen@intel.com>
* context.stp (probefunc): expands ability to detect the function
for different types of probes.
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
* configure.ac (build_elfutils): Pass CFLAGS to elfutils configure,
editting out -Wall.
* configure: Regenerated.
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR 2643
* testsuite/buildok/syscalls.stp: Take "-u" away again.
* configure.ac, systemtap.spec.in: Bump version to 0.5.7.
* configure: Regenerated.
2006-05-05 Frank Ch. Eigler <fche@elastic.org>
PR 2643
* syscalls.stp: Put back some dummy syscall.exit*.return probes.
|
|
|
|
|
| |
* configure.ac, systemtap.spec.in: Bump version to 0.5.6.
* configure: Regenerated.
|
|
|
|
|
|
| |
* small_demos/fileopen.stp: Shows use of target() to look at pid.
* small_demos/rwtiming.stp: Shows per executable histograms of time
spent in read and write system calls.
|
|
|
|
|
|
|
|
|
| |
PR 2433
* tapsets.cxx (dwarf_query::blacklisted_p): Extend the list of
blacklisted .return probes to include "do_exit". Correct funcname
typo for "sys_groupexit".
* tapset/syscalls.stp: Remove .return probe aliases of never-
returning syscall.exit and syscall.exit_group calls.
|
|
|
|
|
| |
* translate.cxx (mapvar::exists): Added code for string array
handling. Otherwise, string array elements always exist.
|
|
|
|
|
| |
PR 2506
* tapsets.cxx (dwarf_query::blacklisted_p): skip probes in .exit.*
|
|
|
|
|
|
| |
* loc2c-runtime.h (deref_string): resolved gcc "warning:
assignment makes integer from pointer without a cast" when
using a pointer as the source address.
|
|
|
|
| |
* context.stp, errno.stp: Note/eliminate some retval() duplication.
|
| |
|
|
|
|
| |
the average amount of time spent in the probe.
|
| |
|
|
|
|
|
| |
* translate.cxx (visit_print_format): Fix regression in
"printf" pseudo-result initialization.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR 2610.
* translate.cxx (c_unparser::visit_arrayindex, visit_stat_op):
Detect empty aggregates consistently.
(visit_print_format): Ditto. Also detect errors due to
argument evaluation.
(translator_output::*): Add a flush before a failing assert,
to produce more context when debugging.
2006-05-01 Frank Ch. Eigler <fche@elastic.org>
* systemtap.maps/absentstats.*: Rewrite.
* systemtap.maps/ix_clear*.exp: Update error message.
|
|
|
|
| |
* vsprintf.c (_stp_vsnprintf): Fix argument size for %p.
|
| |
|
|
|
|
|
| |
* endian.stp (set_endian): Remove "pure" to prevent
this from optimizing away.
|
|
|
|
|
| |
* Makefile.am: Removed "rpm" target.
* Makefile.in, aclocal.m4: Regenerated.
|
|
|
|
|
|
|
| |
* elaborate.cxx (typeresolution_info::unresolved,invalid,
mismatch): Print current function/probe name in error message.
(semantic_pass_types): Pass sufficient information.
* elaborate.h: Corresponding changes.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR 2427.
* staptree.cxx (varuse_collecting_visitor::visit_embeddedcode):
Support /* pure */ declaration. Stop using __tvar_ naming hack.
(v_c_u::visit_print_format): Mark sprint and sprintf as
side-effect-free.
(deep_copy_visitor::visit_print_format): Propagate raw_components.
* stap.1.in: Document declaration.
* elaborate.cxx (semantic_pass_opt2): Verbose message tweak.
(dead_stmtexpr_remover): Extend for more aggressive optimization.
* tapsets.cxx (dwarf,mark_var_expanding_copy_visotor): Add
/* pure */ declaration to rvalue expansions.
* tapset/*.stp: Added /* pure */ declarations to many functions.
* testsuite/parseok/unparsers.stp: Propagate guru mode flag.
* testsuite/buildok/twentyfour.stp: New test.
|
| |
|
|
|
|
|
|
| |
PR 2599.
* elaborate.cxx (visit_assignment): Tolerate null current_expr.
* testsuite/semok/optimize.stp: Add relevant tests.
|
|
|
|
|
|
| |
PR 2149
* translate.cxx (mapvar::set): Test _stp_map_set_xx() for
array overflows.
|
|
|
|
|
| |
* small_demos/ansi_colors.stp: Add an example of using octal
escape sequences to display all possible ansi colors.
|
|
|
|
|
|
| |
PR 1326
* translate.cxx (c_unparser::visit_binary_expression): Handle
negative left and right shift count.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR 953
* elaborate.h (derived_probe): Add field "name". Stop passing
"probe index" to other emit_* calls.
(emit_probe_context_vars): New member function.
* elaborate.cxx (derived_probe ctor): Generate unique name.
* translate.cxx (*): Adapt to index->name.
(emit_probe): Realize that probe locals only occur at nesting=0.
* tapsets.cxx (*derived_probe::emit_*): Adapt to index->name.
(mark_var_expanding_copy_visitor): New class to process $argN.
(mark_derived_probe ctor): Call it.
(mark_derived_probe::emit_probe_context_vars): Do it.
* buildrun.cxx (compile_pass): Add more optional gcc verbosity.
Add CFLAGS += -freorder-blocks.
* testsuite/buildok/marker.stp: New test.
|
|
|
|
| |
* aux_syscalls.stp (_fildes_u): Declare return value type.
|
| |
|