Update copyright to LGPL on all files
[dyninst.git] / testsuite / src / dyninst / test1_9F_fortran.F
1  !
2  ! Copyright (c) 1996-2009 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  ! By your use of Paradyn, you understand and agree that we (or any
12  ! other person or entity with proprietary rights in Paradyn) are
13  ! under no obligation to provide either maintenance services,
14  ! update services, notices of latent defects, or correction of
15  ! defects for Paradyn.
16  ! 
17  ! This library is free software; you can redistribute it and/or
18  ! modify it under the terms of the GNU Lesser General Public
19  ! License as published by the Free Software Foundation; either
20  ! version 2.1 of the License, or (at your option) any later version.
21  ! 
22  ! This library is distributed in the hope that it will be useful,
23  ! but WITHOUT ANY WARRANTY; without even the implied warranty of
24  ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
25  ! Lesser General Public License for more details.
26  ! 
27  ! You should have received a copy of the GNU Lesser General Public
28  ! License along with this library; if not, write to the Free Software
29  ! Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
30  !
31
32 ! libdyninst validation suite test #1
33 ! author: Jon Beyer (6/1/01)
34 !       derived from a previous test by Jeff Hollingsworth
35
36 !------------------------------------------------------------------------------
37
38 ! AIX xlf90 does not insert underscores at end
39
40 #if !defined(XLF)
41 #define stop_process_ stop_process
42 #endif
43
44 #ifdef __GNUC__
45 #define AND iand
46 #define OR ior
47 #else
48 #define AND and
49 #define OR or
50 #endif
51
52 !------------------------------------------------------------------------------
53
54         SUBROUTINE test1_9_func1 (p1, p2, p3, p4, p5, p6, p7, p8, p9, p10)
55 #include "test1_9F_common.h"
56         INTEGER p1, p2, p3, p4, p5, p6, p7, p8, p9, p10
57
58         if (p1 .eq. 1 .and. p2 .eq. 2 .and. p3 .eq. 3 .and. p4 .eq. 4
59      & .and. p5 .eq. 5 .and. p6 .eq. 6 .and. p7 .eq. 7 .and. p8
60      & .eq. 8 .and. p9 .eq. 9 .and. p10 .eq. 10) then
61                 passedTest = 1
62         else
63                 print *, '**Failed** test #9 (preserve registers - funcCall)'
64                 if (p1 .ne. 1) then
65                         print *, '      parameter #1 is ', p1, ' not 1'
66                 endif
67                 if (p2 .ne. 2) then
68                         print *, '      parameter #2 is ', p2, ' not 2'
69                 endif
70                 if (p3 .ne. 3) then
71                         print *, '      parameter #3 is ', p3, ' not 3'
72                 endif
73                 if (p4 .ne. 4) then
74                         print *, '      parameter #4 is ', p4, ' not 4'
75                 endif
76                 if (p5 .ne. 5) then
77                         print *, '      parameter #5 is ', p5, ' not 5'
78                 endif
79                 if (p6 .ne. 6) then
80                         print *, '      parameter #6 is ', p6, ' not 6'
81                 endif
82                 if (p7 .ne. 7) then
83                         print *, '      parameter #7 is ', p7, ' not 7'
84                 endif
85                 if (p8 .ne. 8) then
86                         print *, '      parameter #8 is ', p8, ' not 8'
87                 endif
88                 if (p9 .ne. 9) then
89                         print *, '      parameter #9 is ', p9, ' not 9'
90                 endif
91                 if (p10 .ne. 10) then
92                         print *, '      parameter #10 is ', p10, ' not 10'
93                 endif
94         endif
95         END
96
97 !------------------------------------------------------------------------------
98
99         SUBROUTINE test1_9_call1 (p1, p2, p3, p4, p5)
100         INTEGER p1, p2, p3, p4, p5
101         INTEGER x
102
103         x = p1 + p2 + p3 + p4 + p5
104         if (x .ne. (91 + 92 + 93 + 94 + 95)) then
105                 print *, '**Failed** test #9 (preserve registers - funcCall)'
106                 if (p1 .ne. 91) then
107                         print *, '      call9_1 parameter 1 is ', p1, ' not 91'
108                 endif
109                 if (p2 .ne. 92) then
110                         print *, '      call9_1 parameter 2 is ', p2, ' not 92'
111                 endif
112                 if (p3 .ne. 93) then
113                         print *, '      call9_1 parameter 6 is ', p3, ' not 93'
114                 endif
115                 if (p4 .ne. 94) then
116                         print *, '      call9_1 parameter 4 is ', p4, ' not 94'
117                 endif
118                 if (p5 .ne. 95) then
119                         print *, '      call9_1 parameter 5 is ', p5, ' not 95'
120                 endif
121         endif
122         END
123
124 !-----------------------------------------------------------------------------