Rename newtestsuite to testsuite
[dyninst.git] / testsuite / src / dyninst / test1_9F_fortran.F
1  !
2  ! Copyright (c) 1996-2004 Barton P. Miller
3  ! 
4  ! We provide the Paradyn Parallel Performance Tools (below
5  ! described as "Paradyn") on an AS IS basis, and do not warrant its
6  ! validity or performance.  We reserve the right to update, modify,
7  ! or discontinue this software at any time.  We shall have no
8  ! obligation to supply such updates or modifications or any other
9  ! form of support to you.
10  ! 
11  ! This license is for research uses.  For such uses, there is no
12  ! charge. We define "research use" to mean you may freely use it
13  ! inside your organization for whatever purposes you see fit. But you
14  ! may not re-distribute Paradyn or parts of Paradyn, in any form
15  ! source or binary (including derivatives), electronic or otherwise,
16  ! to any other organization or entity without our permission.
17  ! 
18  ! (for other uses, please contact us at paradyn@cs.wisc.edu)
19  ! 
20  ! All warranties, including without limitation, any warranty of
21  ! merchantability or fitness for a particular purpose, are hereby
22  ! excluded.
23  ! 
24  ! By your use of Paradyn, you understand and agree that we (or any
25  ! other person or entity with proprietary rights in Paradyn) are
26  ! under no obligation to provide either maintenance services,
27  ! update services, notices of latent defects, or correction of
28  ! defects for Paradyn.
29  ! 
30  ! Even if advised of the possibility of such damages, under no
31  ! circumstances shall we (or any other person or entity with
32  ! proprietary rights in the software licensed hereunder) be liable
33  ! to you or any third party for direct, indirect, or consequential
34  ! damages of any character regardless of type of action, including,
35  ! without limitation, loss of profits, loss of use, loss of good
36  ! will, or computer failure or malfunction.  You agree to indemnify
37  ! us (and any other person or entity with proprietary rights in the
38  ! software licensed hereunder) for any and all liability it may
39  ! incur to third parties resulting from your use of Paradyn.
40  !
41
42 ! libdyninst validation suite test #1
43 ! author: Jon Beyer (6/1/01)
44 !       derived from a previous test by Jeff Hollingsworth
45
46 !------------------------------------------------------------------------------
47
48 ! AIX xlf90 does not insert underscores at end
49
50 #if !defined(XLF)
51 #define stop_process_ stop_process
52 #endif
53
54 #ifdef __GNUC__
55 #define AND iand
56 #define OR ior
57 #else
58 #define AND and
59 #define OR or
60 #endif
61
62 !------------------------------------------------------------------------------
63
64         SUBROUTINE test1_9_func1 (p1, p2, p3, p4, p5, p6, p7, p8, p9, p10)
65 #include "test1_9F_common.h"
66         INTEGER p1, p2, p3, p4, p5, p6, p7, p8, p9, p10
67
68         if (p1 .eq. 1 .and. p2 .eq. 2 .and. p3 .eq. 3 .and. p4 .eq. 4
69      & .and. p5 .eq. 5 .and. p6 .eq. 6 .and. p7 .eq. 7 .and. p8
70      & .eq. 8 .and. p9 .eq. 9 .and. p10 .eq. 10) then
71                 passedTest = 1
72         else
73                 print *, '**Failed** test #9 (preserve registers - funcCall)'
74                 if (p1 .ne. 1) then
75                         print *, '      parameter #1 is ', p1, ' not 1'
76                 endif
77                 if (p2 .ne. 2) then
78                         print *, '      parameter #2 is ', p2, ' not 2'
79                 endif
80                 if (p3 .ne. 3) then
81                         print *, '      parameter #3 is ', p3, ' not 3'
82                 endif
83                 if (p4 .ne. 4) then
84                         print *, '      parameter #4 is ', p4, ' not 4'
85                 endif
86                 if (p5 .ne. 5) then
87                         print *, '      parameter #5 is ', p5, ' not 5'
88                 endif
89                 if (p6 .ne. 6) then
90                         print *, '      parameter #6 is ', p6, ' not 6'
91                 endif
92                 if (p7 .ne. 7) then
93                         print *, '      parameter #7 is ', p7, ' not 7'
94                 endif
95                 if (p8 .ne. 8) then
96                         print *, '      parameter #8 is ', p8, ' not 8'
97                 endif
98                 if (p9 .ne. 9) then
99                         print *, '      parameter #9 is ', p9, ' not 9'
100                 endif
101                 if (p10 .ne. 10) then
102                         print *, '      parameter #10 is ', p10, ' not 10'
103                 endif
104         endif
105         END
106
107 !------------------------------------------------------------------------------
108
109         SUBROUTINE test1_9_call1 (p1, p2, p3, p4, p5)
110         INTEGER p1, p2, p3, p4, p5
111         INTEGER x
112
113         x = p1 + p2 + p3 + p4 + p5
114         if (x .ne. (91 + 92 + 93 + 94 + 95)) then
115                 print *, '**Failed** test #9 (preserve registers - funcCall)'
116                 if (p1 .ne. 91) then
117                         print *, '      call9_1 parameter 1 is ', p1, ' not 91'
118                 endif
119                 if (p2 .ne. 92) then
120                         print *, '      call9_1 parameter 2 is ', p2, ' not 92'
121                 endif
122                 if (p3 .ne. 93) then
123                         print *, '      call9_1 parameter 6 is ', p3, ' not 93'
124                 endif
125                 if (p4 .ne. 94) then
126                         print *, '      call9_1 parameter 4 is ', p4, ' not 94'
127                 endif
128                 if (p5 .ne. 95) then
129                         print *, '      call9_1 parameter 5 is ', p5, ' not 95'
130                 endif
131         endif
132         END
133
134 !-----------------------------------------------------------------------------