diff options
author | fche <fche> | 2005-11-24 22:45:52 +0000 |
---|---|---|
committer | fche <fche> | 2005-11-24 22:45:52 +0000 |
commit | 44ce8ed5cb963d4cb6bf085d7ee60b90afdb93f4 (patch) | |
tree | 27bc17286b34736e821dc7221a5dd11969ef87c0 /stap.1.in | |
parent | ded98b334e86a6f6aed6a30a20b67aecc0ae1bf4 (diff) | |
download | systemtap-steved-44ce8ed5cb963d4cb6bf085d7ee60b90afdb93f4.tar.gz systemtap-steved-44ce8ed5cb963d4cb6bf085d7ee60b90afdb93f4.tar.xz systemtap-steved-44ce8ed5cb963d4cb6bf085d7ee60b90afdb93f4.zip |
2005-11-24 Frank Ch. Eigler <fche@redhat.com>
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.
Diffstat (limited to 'stap.1.in')
-rw-r--r-- | stap.1.in | 27 |
1 files changed, 21 insertions, 6 deletions
@@ -163,20 +163,31 @@ ternary operator: .BR %( " CONDITION " %? " TRUE-TOKENS " %) .BR %( " CONDITION " %? " TRUE-TOKENS " %: " FALSE-TOKENS " %) .ESAMPLE -The CONDITION is a very limited expression consisting of three -parts. The first part is the identifier +The CONDITION is a very limited expression whose format is determined +by its first keyword. +.PP +If the first part is the identifier .BR kernel_vr " or " kernel_v to refer to the kernel version number, with ("2.6.13-1.322FC3smp") or -without ("2.6.13") the release code suffix. -The second part is one of the six standard numeric comparison operators -.BR < ", " <= ", " == ", " != ", " > ", and " >= . -The third part is a string literal that contains an RPM-style +without ("2.6.13") the release code suffix, then +the second part is one of the six standard numeric comparison operators +.BR < ", " <= ", " == ", " != ", " > ", and " >= , +and the third part is a string literal that contains an RPM-style version-release value. The condition is deemed satisfied if the version of the target kernel (as optionally overridden by the .BR \-r option) compares to the given version string. The comparison is performed by the glibc function .BR strverscmp . +.PP +If, on the other hand, the first part is the identifier +.BR arch +to refer to the processor architecture, then the second part +then the second part is one of the two string comparison operatorsn +.BR == " or " != , +and the third part is a string literal for matching it. This +comparison is simple string (in)equality. +.PP The TRUE-TOKENS and FALSE-TOKENS are zero or more general parser tokens (possibly including nested preprocessor conditionals), and are pasted into the input stream if the condition is true or false. For @@ -192,6 +203,10 @@ probe kernel.function ( %( kernel_vr == "2.6.13-1.8273FC3smp" %? "do_page_fault" %: UNSUPPORTED %) %) ) { /* ... */ } + +%( arch == "ia64" %? + probe syscall.vliw = kernel.function("vliw_widget") {} +%) .ESAMPLE .SS VARIABLES |