| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
* main.cxx (main): Added arch directory to the existing
kernel-version-sensitive search path.
|
|
|
|
|
|
|
|
|
| |
PR 1903
* parse.cxx (eval_pp_conditional): Support %( arch == "i686" %) form.
* stap.1.in: Document it.
* testsuite/parseok/fourteen.stp: Test it.
* session.h (architecture): New field.
* main.cxx (main): Initialize it.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR 1425.
* configure.ac: Look for rpm-devel headers and libs.
* configure: Regenerated.
* session.h: New file to contain systemtap_session decl.
* staptree.h: Likewise evict statistics_decl.
* elaborate.h: Corresponding changes.
* main.cxx (usage): Elaborate. Re-enable "-r RELEASE" option.
* parse.cxx (parser): Add systemtap_session& field. Update users.
(scan_pp, eval_pp_conditional): New routines for preprocessing.
(peek, next): Call it.
(lexer::scan): Lex the preprocessor operators.
(parser::parse): Include an extra level of exception catching
for parse errors that occur during recovery.
* parse.h: Corresponding changes.
(parse_error): Allow explicit token parameter.
* stap.1.in: Document preprocessing.
* testsuite/parseok/fourteen.stp: New test.
|
| |
|
|
|
|
|
|
|
| |
PR 1477.
* main.cxx (main): Set PATH and LC_ALL, so
* buildrun.cxx (compile_pass, run_pass): ... and ...
* translate.cxx (emit_symbol_data): ... don't have to.
|
|
|
|
|
|
| |
* stap.1.in: Document -b/-s options.
* main.cxx (usage): Clarify -b/-s blurbs.
* translator.cxx (translate_pass): Handle bulk_mode here instead.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR 1182.
* main.cxx (main): Support -D macro-setting option.
* stap.1.in: Document it and related macros.
* buildrun.cxx (compile_pass): Emit macro definitions.
* translate.cxx (translate_pass): Guard limit macros with #ifdef.
Eliminate MAXCONCURRENCY macro.
* elaborate.h (systemtap_session): Add "macros" field.
* parse.cxx (parse_if_statement): Clear "elseblock" if needed.
2005-09-28 Frank Ch. Eigler <fche@elastic.org>
PR 1182.
* systemtap.samples/control_limits.*: New test.
|
|
|
|
|
| |
* main.cxx (main): Choose getpid()-based module names.
* tapsets.cxx: Make timer.jiffies' use of task_pt_regs __i386__-only.
|
|
|
|
|
|
|
|
|
|
|
|
| |
* tapset/context.stp: Add function target().
* stapfuncs.5.in (target): Document it.
* elaborate.h (struct systemtap_session): Add cmd and target_pid to
the struct.
* main.cxx (usage): Add secriptions of "-c" and "-x" options.
(main): Set s.cmd and s.target_pid.
* buildrun.cxx (stringify): Copy this utility func here too.
(run_pass): Add new options to set cmd and pid to the stpd
command line.
|
| |
|
|
|
|
| |
* main.cxx: Don't print library parse trees if last_pass=1.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR systemtap/1122 et alii
* parse.cxx (parse_literal): Parse and range-limit 64-bit numbers.
(parse_unary): Correct precedence glitch.
* staptree.h (literal_number): Store an int64_t.
* staptree.cxx: Corresponding changes.
* translate.cxx (check_dbz): Remove - insufficient.
(emit_function): Define CONTEXT macro sibling for THIS.
(c_typename): pe_long -> int64_t.
(visit_literal_number): Format literal rigorously and uglily.
(c_assignop, visit_binary_expression): Handle div/mod via new
helper functions in runtime.
* tapset/builtin_logging.stp: Add error, exit builtins.
* testsuite/buildok/ten,eleven.stp: New tests.
* testsuite/parse{ko,ok}/six.stp: Modify for larger numbers.
* testsuite/transok/one.stp: Add more ";"s, maybe unnecessarily.
2005-08-12 Frank Ch. Eigler <fche@elastic.org>
* arith.c: New file to contain arithmetic helper functions.
* builtin_functions.h: Remove, unused.
* runtime.h: Include it.
|
|
|
|
|
|
| |
* tapsets.cxx: Correct hex/decimal misformatting of verbose messages.
* main.cxx: Add formal "-h" and "-V" options.
* stap.1.in: Document them.
|
|
|
|
|
|
|
|
| |
* stap.1: More meat, all stub sections filled.
* elaborate.cxx (visit_assignment): Add numerous missing cases.
* parse.cxx: Parse ".=" operator.
* testsuite/semok/sixteen.stp: Check them.
* main.cxx (usage): Don't show incompletely supported options.
|
|
|
|
| |
* main.cxx (main): Check return value of system.
|
|
|
|
|
|
|
|
|
| |
* stap.1: Beginnings of a man page.
* Makefile.am: Install it. Comment out stpd LDADD goodies.
* configure.ac: Futilely complain about non-stpd LIBS.
* Makefile.in, configure.in: Regenerated.
* main.cxx (usage): Remove ARGS from help text, as nothing is
done with these yet.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
translator/1120
* main.cxx (main): Preset -R and -I options from environment
variables (if set). Pass guru mode flags to parser.
* parse.cxx (privileged): New parser operation flag. Update callers.
(parse_embeddedcode): Throw an error if !privileged.
(parse_functiondecl): Change signature. Prevent duplicates.
(parse_globals): Ditto.
* parse.h: Corresponding changes.
* tapset/*.stp: Beginnings of real tapset library, to replace
previous builtins.
* tapsets.cxx: Greatly reduce verbose mode output.
* Makefile.am: Install & dist it.
* runtest.sh: Refer to it.
* Makefile.in, aclocal.m4: Regenerated.
* testsuite/*/*.stp: Set guru mode via /bin/sh if needed.
* testusite/*/*ko.stp: Homogenize shell scripts.
|
|
|
|
|
|
|
|
|
|
|
|
| |
translator/1120
translator/1123
* elaborate.cxx (semantic_pass_symbols): Print a more helpful
error message around exceptions.
* elaborate.h (systemtap_session): Add guru_mode field.
* main.cxx (main): Initialize it to false. Add version-sensitive
script library searching. Add more failure messages.
* tapsets.cxx (dwflpp_assert): Add a decorative text parameter.
Update callers.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Support %{ embedded-c %}
* staptree.h (embeddedcode): New statement subtype. Stub support in
visitors.
* staptree.cxx: Ditto.
* parse.cxx: Parse %{ / %}. Accept "_" as identifier leading char.
(parse_probe): Simplify calling convention.
* elaborate.h: Store embedded code.
* elaborate.cxx: Pass it.
* translate.cxx: Transcribe it. Return some dropped module init/exit
code.
* Makefile.am: Add buildok/buildko tests.
* Makefile.in: Regenerated.
* main.cxx: Return EXIT_SUCCESS/FAILURE even for weird rc.
* testsuite/parseok/nine.stp: Test _identifiers.
* testsuite/transko/*.stp: Tweak to force -p3 rather than -p2 errors.
* testsuite/semok/transko.stp: ... and keep it that way in the future.
* testsuite/parse*/*: Some new tests for %{ %}.
* testsuite/build*/*: New tests for -p4.
|
|
|
|
|
|
| |
* Makefile.am (install-data-local): Correct typo.
* buildrun.cxx (compile_pass): Ditto.
* main.cxx (main): Print errors if passes 4 or 5 fail.
|
|
|
|
|
|
|
|
|
| |
* Makefile.am (stpd): Install in $pkglibdir.
(runtime): Copy to $pkgdatadir.
* configure.ac: Pass along pkgdatadir and pkglibdir.
* main.cxx: Default runtime_path from pkgdatadir.
* buildrun.cxx (run_pass): Correct stpd directory.
* Makefile.in, configure, config.in: Regenerated.
|
|
|
|
|
|
|
|
|
| |
* buildrun.cxx (compile_pass): Make non-verbose mode quieter.
(run_pass): Spawn stpd for dirty work.
* Makefile.am: Also build stpd into libexecdir.
* configure.ac: Pass LIBEXECDIR.
* Makefile.in, configure, config.in: Regenerated.
* AUTHORS: Update.
|
|
|
|
|
|
|
|
|
|
| |
* Makefile.am (dist): Package up the source tree, including
testsuite and runtime.
* main.cxx: Use clog instead of cerr for logging messages.
* buildrun.cxx: Ditto.
(compile_pass): Add -Iruntime/user for test mode.
* translate.cxx (*): Commonalize test/real mode output.
* Makefile.in: Regenerated.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* elaborate.h (systemtap_session): Add more command-line arguments.
* staptree.h (verbose): Bad global, no donut.
* elaborate.cxx: Temporarily disable verbose variable access.
* main.cxx: Support more arguments, build/run passes. Revamp
temporary file generation and partial-pass output generation.
* tapsets.cxx, translate.cxx: Emit just enough extra punctuation
and fluff to make generated probe pass -Werror.
* buildrun.cxx, buildrun.h: New files for passes 4/5. Partial
support for build pass, nothing on probe execution yet.
* testsuite/transok/*.stp: Force just -p3, now that -p4/5 exist.
* Makefile.am, Makefile.in: Corresponding changes.
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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.
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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 ().
|
|
2005-05-20 Frank Ch. Eigler <fche@redhat.com>
Many changes throughout. Partial sketch of translation output.
* elaborate.*: Elaboration pass.
* translate.*: Translation pass.
* staptree.*: Simplified for visitor concept.
* main.cxx: Translator mainline.
* *test.cxx: Removed.
* testsuite/*: Some new tests, some changed for newer syntax.
|