13558Sdlw /* 222974Skre * Copyright (c) 1980 Regents of the University of California. 322974Skre * All rights reserved. The Berkeley software License Agreement 422974Skre * specifies the terms and conditions for redistribution. 53558Sdlw * 6*29935Ssam * @(#)range.c 5.3 10/30/86 723002Skre * 83558Sdlw * routines to return extreme values 93558Sdlw * VERY MACHINE DEPENDENT 103558Sdlw */ 113558Sdlw 123558Sdlw union fi 133558Sdlw { float f; 143558Sdlw long i; 153558Sdlw } ; 163558Sdlw 173558Sdlw union dj 183558Sdlw { double d; 193558Sdlw long j[2]; 203558Sdlw } ; 213558Sdlw 223558Sdlw float 233558Sdlw flmax_() 243558Sdlw { 253558Sdlw union fi n; 268946Sdlw #if pdp11 273558Sdlw n.i = 0x7fffffffL; 288946Sdlw #else pdp11 298946Sdlw #if vax 303558Sdlw n.i = 0xffff7fff; 318946Sdlw #else vax 32*29935Ssam #if tahoe 33*29935Ssam n.i = 0x7fffffffL; 34*29935Ssam #else tahoe 358946Sdlw UNKNOWN MACHINE! 36*29935Ssam #endif tahoe 378946Sdlw #endif vax 388946Sdlw #endif pdp11 393558Sdlw return(n.f); 403558Sdlw } 413558Sdlw 423558Sdlw double 433558Sdlw dflmax_() 443558Sdlw { 453558Sdlw union dj n; 468946Sdlw #if pdp11 473558Sdlw n.j[0] = 0x7fffffffL; 483558Sdlw n.j[1] = 0xffffffffL; 498946Sdlw #else pdp11 508946Sdlw #if vax 513558Sdlw n.j[0] = 0xffff7fff; 523558Sdlw n.j[1] = 0xffffffff; 538946Sdlw #else vax 54*29935Ssam #if tahoe 55*29935Ssam n.j[0] = 0x7fffffffL; 56*29935Ssam n.j[1] = 0xffffffffL; 57*29935Ssam #else tahoe 588946Sdlw UNKNOWN MACHINE! 59*29935Ssam #endif tahoe 608946Sdlw #endif vax 618946Sdlw #endif pdp11 623558Sdlw return(n.d); 633558Sdlw } 643558Sdlw 653558Sdlw float 663558Sdlw flmin_() 673558Sdlw { 683558Sdlw union fi n; 698946Sdlw #if pdp11 703558Sdlw n.i = 0x00800000L; 718946Sdlw #else pdp11 728946Sdlw #if vax 733558Sdlw n.i = 0x00000080; 748946Sdlw #else vax 75*29935Ssam #if tahoe 76*29935Ssam n.i = 0x00800000L; 77*29935Ssam #else tahoe 788946Sdlw UNKNOWN MACHINE! 79*29935Ssam #endif tahoe 808946Sdlw #endif vax 818946Sdlw #endif pdp11 823558Sdlw return(n.f); 833558Sdlw } 843558Sdlw 853558Sdlw double 863558Sdlw dflmin_() 873558Sdlw { 883558Sdlw union dj n; 898946Sdlw #if pdp11 903558Sdlw n.j[0] = 0x00800000L; 913558Sdlw n.j[1] = 0; 928946Sdlw #else pdp11 938946Sdlw #if vax 943558Sdlw n.j[0] = 0x00000080; 953558Sdlw n.j[1] = 0; 968946Sdlw #else vax 97*29935Ssam #if tahoe 98*29935Ssam n.j[0] = 0x00800000L; 99*29935Ssam n.j[1] = 0; 100*29935Ssam #else tahoe 1018946Sdlw UNKNOWN MACHINE! 102*29935Ssam #endif tahoe 1038946Sdlw #endif vax 1048946Sdlw #endif pdp11 1053558Sdlw return(n.d); 1063558Sdlw } 1073558Sdlw 1083558Sdlw long int 1093558Sdlw inmax_() 1103558Sdlw { 1118946Sdlw return(0x7fffffffL); 1123558Sdlw } 1133558Sdlw 1148946Sdlw 1158946Sdlw float 1168946Sdlw ffrac_() 1178946Sdlw { 1188946Sdlw union fi n; 1198946Sdlw #if pdp11 1208946Sdlw n.i = 0x35000000L; 1218946Sdlw #else pdp11 1228946Sdlw #if vax 1238946Sdlw n.i = 0x00003500; 1248946Sdlw #else vax 125*29935Ssam #if tahoe 126*29935Ssam n.i = 0x35000000L; 127*29935Ssam #else tahoe 1288946Sdlw UNKNOWN MACHINE! 129*29935Ssam #endif tahoe 1308946Sdlw #endif vax 1318946Sdlw #endif pdp11 1328946Sdlw return(n.f); 1338946Sdlw } 1348946Sdlw 1358946Sdlw double 1368946Sdlw dffrac_() 1378946Sdlw { 1388946Sdlw union dj n; 1398946Sdlw #if pdp11 1408946Sdlw n.j[0] = 0x25000000L; 1418946Sdlw n.j[1] = 0; 1428946Sdlw #else pdp11 1438946Sdlw #if vax 1448946Sdlw n.j[0] = 0x00002500; 1458946Sdlw n.j[1] = 0; 1468946Sdlw #else vax 147*29935Ssam #if tahoe 148*29935Ssam n.j[0] = 0x25000000L; 149*29935Ssam n.j[1] = 0; 150*29935Ssam #else tahoe 1518946Sdlw UNKNOWN MACHINE! 152*29935Ssam #endif tahoe 1538946Sdlw #endif vax 1548946Sdlw #endif pdp11 1558946Sdlw return(n.d); 1568946Sdlw } 157