Rename newtestsuite to testsuite
[dyninst.git] / testsuite / src / dyninst / test1_25_mutatee.c
1 #include "mutatee_util.h"
2
3 /* Externally accessed function prototypes.  These must have globally unique
4  * names.  I suggest following the pattern <testname>_<function>
5  */
6
7 void test1_25_call1();
8
9 /* Global variables accessed by the mutator.  These must have globally unique
10  * names.
11  */
12
13 int test1_25_globalVariable1;
14 int *test1_25_globalVariable2;  /* used to hold addres of test1_25_globalVariable1 */
15 int test1_25_globalVariable3;
16 int test1_25_globalVariable4;
17 int test1_25_globalVariable5;
18 int test1_25_globalVariable6;
19 int test1_25_globalVariable7;
20
21 /* Internally used function prototypes.  These should be declared with the
22  * keyword static so they don't interfere with other mutatees in the group.
23  */
24
25 /* Global variables used internally by the mutatee.  These should be declared
26  * with the keyword static so they don't interfere with other mutatees in the
27  * group.
28  */
29
30 static int test_failed = 0;
31
32 /* Function definitions follow */
33
34 /*
35  * Test #25 - unary operators
36  */
37 int test1_25_mutatee() {
38   int retval;
39
40 /* MIPS is no longer supported, so this test isn't necessary
41  * #if defined(mips_sgi_irix6_4_test)
42  *   logerror("Skipped test #25 (unary operators)\n");
43  *   logerror("\t- not implemented on this platform\n");
44  *   passedTest[25] = TRUE;
45  * #else
46  */
47
48     test1_25_globalVariable1 = 25000001;
49     test1_25_globalVariable2 = (int *) 25000002;
50     test1_25_globalVariable3 = 25000003;
51     test1_25_globalVariable4 = 25000004;
52     test1_25_globalVariable5 = 25000005;
53     test1_25_globalVariable6 = -25000006;
54     test1_25_globalVariable7 = 25000007;
55
56     /* inst code we put into this function:
57      *  At Entry:
58      *     test1_25_globalVariable2 = &test1_25_globalVariable1
59      *     test1_25_globalVariable3 = *test1_25_globalVariable2
60      *     test1_25_globalVariable5 = -test1_25_globalVariable4
61      *     test1_25_globalVariable7 = -test1_25_globalVariable6
62      */
63
64     test1_25_call1();
65
66     if ((int *) test1_25_globalVariable2 != &test1_25_globalVariable1) {
67         if (!test_failed) {
68           logerror("**Failed** test #25 (unary operators)\n");
69         }
70         test_failed = TRUE;
71         logerror("    test1_25_globalVariable2 = %p, not %p\n",
72             test1_25_globalVariable2, (void *) &test1_25_globalVariable1);
73     }
74
75     if (test1_25_globalVariable3 != test1_25_globalVariable1) {
76         if (!test_failed) {
77           logerror("**Failed** test #25 (unary operators)\n");
78         }
79         test_failed = TRUE;
80         logerror("    test1_25_globalVariable3 = %d, not %d\n",
81             test1_25_globalVariable3, test1_25_globalVariable1);
82     }
83
84     if (test1_25_globalVariable5 != -test1_25_globalVariable4) {
85         if (!test_failed) {
86           logerror("**Failed** test #25 (unary operators)\n");
87         }
88         test_failed = TRUE;
89         logerror("    test1_25_globalVariable5 = %d, not %d\n",
90             test1_25_globalVariable5, -test1_25_globalVariable4);
91     }
92
93     if (test1_25_globalVariable7 != -test1_25_globalVariable6) {
94         if (!test_failed) {
95           logerror("**Failed** test #25 (unary operators)\n");
96         }
97         test_failed = TRUE;
98         logerror("    test1_25_globalVariable7 = %d, not %d\n",
99             test1_25_globalVariable7, -test1_25_globalVariable6);
100     }
101
102     if (!test_failed) {
103       logerror("Passed test #25 (unary operators)\n");
104       test_passes(testname);
105       retval = 0; /* Test passed */
106     } else {
107       retval = -1; /* Test failed */
108     }
109     return retval;
110 /* #endif /* !MIPS */
111 }
112
113 void test1_25_call1() {
114   DUMMY_FN_BODY;
115 }