xref: /csrg-svn/usr.bin/f77/libF77/range.c (revision 8946)
13558Sdlw /*
2*8946Sdlw char id_range[] = "@(#)range.c	1.2";
33558Sdlw  *
43558Sdlw  * routines to return extreme values
53558Sdlw  * VERY MACHINE DEPENDENT
63558Sdlw  */
73558Sdlw 
83558Sdlw union fi
93558Sdlw {	float	f;
103558Sdlw 	long	i;
113558Sdlw } ;
123558Sdlw 
133558Sdlw union dj
143558Sdlw {	double	d;
153558Sdlw 	long	j[2];
163558Sdlw } ;
173558Sdlw 
183558Sdlw float
193558Sdlw flmax_()
203558Sdlw {
213558Sdlw 	union fi n;
22*8946Sdlw #if	pdp11
233558Sdlw 	n.i = 0x7fffffffL;
24*8946Sdlw #else	pdp11
25*8946Sdlw #if	vax
263558Sdlw 	n.i = 0xffff7fff;
27*8946Sdlw #else	vax
28*8946Sdlw 	UNKNOWN MACHINE!
29*8946Sdlw #endif	vax
30*8946Sdlw #endif	pdp11
313558Sdlw 	return(n.f);
323558Sdlw }
333558Sdlw 
343558Sdlw double
353558Sdlw dflmax_()
363558Sdlw {
373558Sdlw 	union dj n;
38*8946Sdlw #if	pdp11
393558Sdlw 	n.j[0] = 0x7fffffffL;
403558Sdlw 	n.j[1] = 0xffffffffL;
41*8946Sdlw #else	pdp11
42*8946Sdlw #if	vax
433558Sdlw 	n.j[0] = 0xffff7fff;
443558Sdlw 	n.j[1] = 0xffffffff;
45*8946Sdlw #else	vax
46*8946Sdlw 	UNKNOWN MACHINE!
47*8946Sdlw #endif	vax
48*8946Sdlw #endif	pdp11
493558Sdlw 	return(n.d);
503558Sdlw }
513558Sdlw 
523558Sdlw float
533558Sdlw flmin_()
543558Sdlw {
553558Sdlw 	union fi n;
56*8946Sdlw #if	pdp11
573558Sdlw 	n.i = 0x00800000L;
58*8946Sdlw #else	pdp11
59*8946Sdlw #if	vax
603558Sdlw 	n.i = 0x00000080;
61*8946Sdlw #else	vax
62*8946Sdlw 	UNKNOWN MACHINE!
63*8946Sdlw #endif	vax
64*8946Sdlw #endif	pdp11
653558Sdlw 	return(n.f);
663558Sdlw }
673558Sdlw 
683558Sdlw double
693558Sdlw dflmin_()
703558Sdlw {
713558Sdlw 	union dj n;
72*8946Sdlw #if	pdp11
733558Sdlw 	n.j[0] = 0x00800000L;
743558Sdlw 	n.j[1] = 0;
75*8946Sdlw #else	pdp11
76*8946Sdlw #if	vax
773558Sdlw 	n.j[0] = 0x00000080;
783558Sdlw 	n.j[1] = 0;
79*8946Sdlw #else	vax
80*8946Sdlw 	UNKNOWN MACHINE!
81*8946Sdlw #endif	vax
82*8946Sdlw #endif	pdp11
833558Sdlw 	return(n.d);
843558Sdlw }
853558Sdlw 
863558Sdlw long int
873558Sdlw inmax_()
883558Sdlw {
89*8946Sdlw 	return(0x7fffffffL);
903558Sdlw }
913558Sdlw 
92*8946Sdlw 
93*8946Sdlw float
94*8946Sdlw ffrac_()
95*8946Sdlw {
96*8946Sdlw 	union fi n;
97*8946Sdlw #if	pdp11
98*8946Sdlw 	n.i = 0x35000000L;
99*8946Sdlw #else	pdp11
100*8946Sdlw #if	vax
101*8946Sdlw 	n.i = 0x00003500;
102*8946Sdlw #else	vax
103*8946Sdlw 	UNKNOWN MACHINE!
104*8946Sdlw #endif	vax
105*8946Sdlw #endif	pdp11
106*8946Sdlw 	return(n.f);
107*8946Sdlw }
108*8946Sdlw 
109*8946Sdlw double
110*8946Sdlw dffrac_()
111*8946Sdlw {
112*8946Sdlw 	union dj n;
113*8946Sdlw #if	pdp11
114*8946Sdlw 	n.j[0] = 0x25000000L;
115*8946Sdlw 	n.j[1] = 0;
116*8946Sdlw #else	pdp11
117*8946Sdlw #if	vax
118*8946Sdlw 	n.j[0] = 0x00002500;
119*8946Sdlw 	n.j[1] = 0;
120*8946Sdlw #else	vax
121*8946Sdlw 	UNKNOWN MACHINE!
122*8946Sdlw #endif	vax
123*8946Sdlw #endif	pdp11
124*8946Sdlw 	return(n.d);
125*8946Sdlw }
126