summaryrefslogtreecommitdiffstats
path: root/testsuite
diff options
context:
space:
mode:
authorfche <fche>2006-04-21 19:51:43 +0000
committerfche <fche>2006-04-21 19:51:43 +0000
commit35d4ab18d5d333ffcac436ea174beb7201275c65 (patch)
tree0c785d3b462cc7ca483f105639057239ac38da84 /testsuite
parentf9db95d019b4936d62c9b3e021aecc2dfb653dcf (diff)
downloadsystemtap-steved-35d4ab18d5d333ffcac436ea174beb7201275c65.tar.gz
systemtap-steved-35d4ab18d5d333ffcac436ea174beb7201275c65.tar.xz
systemtap-steved-35d4ab18d5d333ffcac436ea174beb7201275c65.zip
2006-04-21 Frank Ch. Eigler <fche@elastic.org>
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.
Diffstat (limited to 'testsuite')
-rwxr-xr-xtestsuite/buildok/marker.stp24
1 files changed, 24 insertions, 0 deletions
diff --git a/testsuite/buildok/marker.stp b/testsuite/buildok/marker.stp
new file mode 100755
index 00000000..cbf2f7fa
--- /dev/null
+++ b/testsuite/buildok/marker.stp
@@ -0,0 +1,24 @@
+#! /bin/sh
+
+(
+echo 'probe begin {}'
+smap=/boot/System.map-`uname -r`
+if [ -f $smap ]
+then
+ # v-- exclude modules
+ grep __systemtap_mark $smap | fgrep -v '[' | while read addr section symbol
+ do
+ mark=`expr $symbol : '__systemtap_mark_\([a-zA-Z0-9_]\+\)_[NS]*\.[0-9]\+'`
+ sig=`expr $symbol : '__systemtap_mark_[a-zA-Z0-9_]\+_\([NS]*\)\.[0-9]\+'`
+ siglen=`expr length "$sig"`
+# echo $mark $sig $siglen
+ echo 'probe kernel.mark("'$mark'") {'
+ i=0
+ while [ $i -lt $siglen ]; do
+ i=`expr $i + 1`
+ echo ' print ($arg'$i')'
+ done
+ echo '}'
+ done
+fi
+) | ./stap -p4 -