xref: /original-bsd/usr.bin/f77/libF77/range.c (revision 6c57d260)
1 /*
2 char id_range[] = "@(#)range.c	1.1";
3  *
4  * routines to return extreme values
5  * VERY MACHINE DEPENDENT
6  */
7 
8 union fi
9 {	float	f;
10 	long	i;
11 } ;
12 
13 union dj
14 {	double	d;
15 	long	j[2];
16 } ;
17 
18 float
19 flmax_()
20 {
21 	union fi n;
22 #ifdef	PDP11
23 	n.i = 0x7fffffffL;
24 #endif
25 #ifdef	VAX
26 	n.i = 0xffff7fff;
27 #endif
28 	return(n.f);
29 }
30 
31 double
32 dflmax_()
33 {
34 	union dj n;
35 #ifdef	PDP11
36 	n.j[0] = 0x7fffffffL;
37 	n.j[1] = 0xffffffffL;
38 #endif
39 #ifdef	VAX
40 	n.j[0] = 0xffff7fff;
41 	n.j[1] = 0xffffffff;
42 #endif
43 	return(n.d);
44 }
45 
46 float
47 flmin_()
48 {
49 	union fi n;
50 #ifdef	PDP11
51 	n.i = 0x00800000L;
52 #endif
53 #ifdef	VAX
54 	n.i = 0x00000080;
55 #endif
56 	return(n.f);
57 }
58 
59 double
60 dflmin_()
61 {
62 	union dj n;
63 #ifdef	PDP11
64 	n.j[0] = 0x00800000L;
65 	n.j[1] = 0;
66 #endif
67 #ifdef	VAX
68 	n.j[0] = 0x00000080;
69 	n.j[1] = 0;
70 #endif
71 	return(n.d);
72 }
73 
74 long int
75 inmax_()
76 {
77 	return(0x7fffffff);
78 }
79 
80