From 44f81851848465bf1ac2daa21534cfbc0adfb326 Mon Sep 17 00:00:00 2001 From: Martin Cermak Date: Wed, 11 Nov 2015 10:40:02 +0100 Subject: [PATCH] Extend global_end.exp to cover private globals too. --- testsuite/systemtap.base/global_end.exp | 14 ++++--- testsuite/systemtap.base/global_end.stp | 9 ++++- testsuite/systemtap.base/global_end_var.stp | 39 +++++++++++-------- .../systemtap.base/global_end_var_used.stp | 29 ++++++++------ 4 files changed, 57 insertions(+), 34 deletions(-) diff --git a/testsuite/systemtap.base/global_end.exp b/testsuite/systemtap.base/global_end.exp index d38c131bf..1b9686edc 100644 --- a/testsuite/systemtap.base/global_end.exp +++ b/testsuite/systemtap.base/global_end.exp @@ -4,14 +4,15 @@ set test "global_end" if {![installtest_p]} {untested $test; return} +foreach private {0 1} { foreach runtime [get_runtime_list] { set test "global_end" if {$runtime != ""} { set test "${test}_${runtime}" - spawn stap $srcdir/$subdir/global_end.stp --runtime=$runtime + spawn stap $srcdir/$subdir/global_end.stp $private --runtime=$runtime } else { - spawn stap $srcdir/$subdir/global_end.stp + spawn stap $srcdir/$subdir/global_end.stp $private } set ok 0 expect { @@ -55,9 +56,9 @@ foreach runtime [get_runtime_list] { set test "global_end_var" if {$runtime != ""} { set test "${test}_${runtime}" - spawn stap $srcdir/$subdir/global_end_var.stp --runtime=$runtime + spawn stap $srcdir/$subdir/global_end_var.stp $private --runtime=$runtime } else { - spawn stap $srcdir/$subdir/global_end_var.stp + spawn stap $srcdir/$subdir/global_end_var.stp $private } set ok 0 expect { @@ -79,9 +80,9 @@ foreach runtime [get_runtime_list] { set test "global_end_var_used" if {$runtime != ""} { set test "${test}_${runtime}" - spawn stap $srcdir/$subdir/global_end_var_used.stp --runtime=$runtime + spawn stap $srcdir/$subdir/global_end_var_used.stp $private --runtime=$runtime } else { - spawn stap $srcdir/$subdir/global_end_var_used.stp + spawn stap $srcdir/$subdir/global_end_var_used.stp $private } set ok 0 # strictly look for "hello". if anything else is printed it's a fail. @@ -95,3 +96,4 @@ foreach runtime [get_runtime_list] { if {$ok == 1} { pass "$test ($ok)" } { fail "$test ($ok)" } } +} diff --git a/testsuite/systemtap.base/global_end.stp b/testsuite/systemtap.base/global_end.stp index 1a3ebc9f5..5e5259948 100644 --- a/testsuite/systemtap.base/global_end.stp +++ b/testsuite/systemtap.base/global_end.stp @@ -1,4 +1,11 @@ -global alpha, beta, gamma, iota, epsilon, phi +@define __emitpriv +%( + %( $1 == 1 %? + private + %) +%) + +@__emitpriv global alpha, beta, gamma, iota, epsilon, phi probe begin { gamma = "abcdefghijklmnopqrstuvwxyz" diff --git a/testsuite/systemtap.base/global_end_var.stp b/testsuite/systemtap.base/global_end_var.stp index a04234b44..cab5ffcd4 100644 --- a/testsuite/systemtap.base/global_end_var.stp +++ b/testsuite/systemtap.base/global_end_var.stp @@ -1,19 +1,26 @@ -global gs0_save -global gs0 = 41 -global gs1 = 1 -global gs2 = 2 -global gs3 = 3 -global gs4 = 4 -global gs5 = 5 -global gs6 = 6 -global gs7 = 7 -global gs8 = 8 -global gs9 = 9 -global gs10 = 10 -global gs11 = 11 -global ga1 -global ga2 -global gtemp +@define __emitpriv +%( + %( $1 == 1 %? + private + %) +%) + +@__emitpriv global gs0_save +@__emitpriv global gs0 = 41 +@__emitpriv global gs1 = 1 +@__emitpriv global gs2 = 2 +@__emitpriv global gs3 = 3 +@__emitpriv global gs4 = 4 +@__emitpriv global gs5 = 5 +@__emitpriv global gs6 = 6 +@__emitpriv global gs7 = 7 +@__emitpriv global gs8 = 8 +@__emitpriv global gs9 = 9 +@__emitpriv global gs10 = 10 +@__emitpriv global gs11 = 11 +@__emitpriv global ga1 +@__emitpriv global ga2 +@__emitpriv global gtemp function fna(a:long) {return a} diff --git a/testsuite/systemtap.base/global_end_var_used.stp b/testsuite/systemtap.base/global_end_var_used.stp index 0581f1156..9896a374d 100644 --- a/testsuite/systemtap.base/global_end_var_used.stp +++ b/testsuite/systemtap.base/global_end_var_used.stp @@ -1,17 +1,24 @@ // None of these global vars should be // autoprinted because they are all used -global a // if condition -global b // function arg - -global arr // used in foreach -global c // foreach array slice -global d // foreach limit - -global e // return value -global f // ternary cond -global g // while condition -global h // arrayindex index +@define __emitpriv +%( + %( $1 == 1 %? + private + %) +%) + +@__emitpriv global a // if condition +@__emitpriv global b // function arg + +@__emitpriv global arr // used in foreach +@__emitpriv global c // foreach array slice +@__emitpriv global d // foreach limit + +@__emitpriv global e // return value +@__emitpriv global f // ternary cond +@__emitpriv global g // while condition +@__emitpriv global h // arrayindex index function foo(b) { if (b) -- 2.43.5