AIX doesn't put static symbols in symbol table, so don't make static test symbols
[dyninst.git] / testsuite / src / dyninst / snip_change_shlib_var_mutatee.c
1 #include "mutatee_util.h"
2
3 /* Global variables accessed by the mutator.  These must have globally unique
4  * names.
5  */
6
7 /* Internally used function prototypes.  These should be declared with the
8  * keyword static so they don't interfere with other mutatees in the group.
9  */
10
11 static volatile int _unused; /* move decl here to dump compiler warning - jkh */
12
13 volatile int gv_scsv1 = 0;
14
15 int scsv1(int x)
16 {
17         return 8 * x;
18 }
19
20 int snip_change_shlib_var_mutatee()
21 {
22         /*  mutator instruments scsv1 entry and exit to (1) modify a global variable
23        in a shared library (libtestB), and (2) to call a function in that library
24        that returns 1 if the change was successful and 0 otherwise.  The result
25        of this function call is put in gv_scsv1; */
26
27         int dont_care = 0;
28         dont_care = scsv1(5);
29
30         if (1 != gv_scsv1)
31         {
32       logerror("Failed snip_change_shlib_var test\n");
33           return -1;
34         }
35
36         logerror("Passed snip_change_shlib_var test\n");
37         test_passes(testname);
38
39         return 0;
40 }
41