summaryrefslogtreecommitdiffstats
path: root/main.cxx
Commit message (Collapse)AuthorAgeFilesLines
* 2005-12-12 Kevin Stafford <krstaffo@us.ibm.com>kevinrs2005-12-121-6/+14
| | | | | * main.cxx (main): Added arch directory to the existing kernel-version-sensitive search path.
* 2005-11-24 Frank Ch. Eigler <fche@redhat.com>fche2005-11-241-0/+1
| | | | | | | | | 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.
* 2005-11-01 Frank Ch. Eigler <fche@elastic.org>fche2005-11-011-9/+11
| | | | | | | | | | | | | | | | | | | | 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.
* fixes part of PR1194 (passing -o option to stpd)trz2005-10-191-2/+2
|
* 2005-10-18 Frank Ch. Eigler <fche@redhat.com>fche2005-10-181-2/+14
| | | | | | | 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.
* 2005-10-06 Frank Ch. Eigler <fche@elastic.org>fche2005-10-061-6/+7
| | | | | | * stap.1.in: Document -b/-s options. * main.cxx (usage): Clarify -b/-s blurbs. * translator.cxx (translate_pass): Handle bulk_mode here instead.
* stap command-line option additions: -b (bulk mode), -s (buffer size)trz2005-10-051-1/+19
|
* 2005-09-28 Frank Ch. Eigler <fche@elastic.org>fche2005-09-281-1/+6
| | | | | | | | | | | | | | | | 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.
* 2005-09-07 Frank Ch. Eigler <fche@redhat.com>fche2005-09-071-1/+1
| | | | | * main.cxx (main): Choose getpid()-based module names. * tapsets.cxx: Make timer.jiffies' use of task_pt_regs __i386__-only.
* 2005-09-06 Martin Hunt <hunt@redhat.com>hunt2005-09-061-1/+13
| | | | | | | | | | | | * 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.
* nonefche2005-08-221-1/+0
|
* 2005-08-16 Frank Ch. Eigler <fche@elastic.org>fche2005-08-161-5/+6
| | | | * main.cxx: Don't print library parse trees if last_pass=1.
* 2005-08-12 Frank Ch. Eigler <fche@elastic.org>fche2005-08-121-0/+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.
* 2005-08-10 Frank Ch. Eigler <fche@elastic.org>fche2005-08-101-6/+18
| | | | | | * tapsets.cxx: Correct hex/decimal misformatting of verbose messages. * main.cxx: Add formal "-h" and "-V" options. * stap.1.in: Document them.
* 2005-08-03 Frank Ch. Eigler <fche@redhat.com>fche2005-08-031-4/+5
| | | | | | | | * 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.
* 2005-07-29 Roland McGrath <roland@redhat.com>roland2005-07-291-6/+8
| | | | * main.cxx (main): Check return value of system.
* 2005-07-28 Frank Ch. Eigler <fche@redhat.com>fche2005-07-281-6/+4
| | | | | | | | | * 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.
* 2005-07-28 Frank Ch. Eigler <fche@redhat.com>fche2005-07-281-22/+26
| | | | | | | | | | | | | | | | | | | 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.
* 2005-07-28 Frank Ch. Eigler <fche@redhat.com>fche2005-07-281-19/+61
| | | | | | | | | | | | 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.
* 2005-07-26 Frank Ch. Eigler <fche@redhat.com>fche2005-07-261-1/+1
| | | | | | | | | | | | | | | | | | | | | 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.
* 2005-07-15 Frank Ch. Eigler <fche@redhat.com>fche2005-07-151-0/+11
| | | | | | * Makefile.am (install-data-local): Correct typo. * buildrun.cxx (compile_pass): Ditto. * main.cxx (main): Print errors if passes 4 or 5 fail.
* 2005-07-14 Frank Ch. Eigler <fche@redhat.com>fche2005-07-141-1/+1
| | | | | | | | | * 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.
* 2005-07-12 Frank Ch. Eigler <fche@redhat.com>fche2005-07-121-1/+1
| | | | | | | | | * 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.
* 2005-07-07 Frank Ch. Eigler <fche@redhat.com>fche2005-07-071-28/+36
| | | | | | | | | | * 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.
* 2005-07-05 Frank Ch. Eigler <fche@redhat.com>fche2005-07-051-69/+198
| | | | | | | | | | | | | | * 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.
* 2005-06-20 Graydon Hoare <graydon@redhat.com>graydon2005-06-211-1/+7
| | | | | | | | | | | | * 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.
* 2005-06-13 Frank Ch. Eigler <fche@redhat.com>fche2005-06-131-5/+5
| | | | | | | | | | 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.
* 2005-06-08 Frank Ch. Eigler <fche@redhat.com>fche2005-06-081-0/+1
| | | | | | | | | | | | | | | 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.
* 2005-06-03 Frank Ch. Eigler <fche@redhat.com>fche2005-06-031-3/+26
| | | | | | | | | | | | | * 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.
* 2005-06-03 Frank Ch. Eigler <fche@redhat.com>fche2005-06-031-1/+1
| | | | | | * parse.cxx (scan): Support C and C++ comment styles. * testsuite/parseok/four.stp: Test them some ... * testsuite/parseko/nine.stp: ... and some more.
* 2005-06-02 Frank Ch. Eigler <fche@redhat.com>fche2005-06-021-2/+3
| | | | | | * translate.cxx (visit_concatenation, visit_binary_expression): New basic implementation. (*): Reduce emitted whitespace and remove `# LINE "FILE"' lines.
* 2005-06-02 Frank Ch. Eigler <fche@redhat.com>fche2005-06-021-4/+14
| | | | | | | | | | | | | | | | 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 ().
* * at long last, a more full-bodied snapshotfche2005-05-211-0/+196
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.