e_j1f.c (279127) | e_j1f.c (279240) |
---|---|
1/* e_j1f.c -- float version of e_j1.c. 2 * Conversion to float by Ian Lance Taylor, Cygnus Support, ian@cygnus.com. 3 */ 4 5/* 6 * ==================================================== 7 * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. 8 * 9 * Developed at SunPro, a Sun Microsystems, Inc. business. 10 * Permission to use, copy, modify, and distribute this 11 * software is freely granted, provided that this notice 12 * is preserved. 13 * ==================================================== 14 */ 15 16#include <sys/cdefs.h> | 1/* e_j1f.c -- float version of e_j1.c. 2 * Conversion to float by Ian Lance Taylor, Cygnus Support, ian@cygnus.com. 3 */ 4 5/* 6 * ==================================================== 7 * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. 8 * 9 * Developed at SunPro, a Sun Microsystems, Inc. business. 10 * Permission to use, copy, modify, and distribute this 11 * software is freely granted, provided that this notice 12 * is preserved. 13 * ==================================================== 14 */ 15 16#include <sys/cdefs.h> |
17__FBSDID("$FreeBSD: head/lib/msun/src/e_j1f.c 279127 2015-02-22 01:15:09Z pfg $"); | 17__FBSDID("$FreeBSD: head/lib/msun/src/e_j1f.c 279240 2015-02-24 16:45:16Z pfg $"); |
18 19#include "math.h" 20#include "math_private.h" 21 22static float ponef(float), qonef(float); 23 24static const float 25huge = 1e30, --- 294 unchanged lines hidden (view full) --- 320 const float *p,*q; 321 float s,r,z; 322 int32_t ix; 323 GET_FLOAT_WORD(ix,x); 324 ix &= 0x7fffffff; 325 if(ix>=0x40200000) {p = qr8; q= qs8;} 326 else if(ix>=0x40f71c58){p = qr5; q= qs5;} 327 else if(ix>=0x4036db68){p = qr3; q= qs3;} | 18 19#include "math.h" 20#include "math_private.h" 21 22static float ponef(float), qonef(float); 23 24static const float 25huge = 1e30, --- 294 unchanged lines hidden (view full) --- 320 const float *p,*q; 321 float s,r,z; 322 int32_t ix; 323 GET_FLOAT_WORD(ix,x); 324 ix &= 0x7fffffff; 325 if(ix>=0x40200000) {p = qr8; q= qs8;} 326 else if(ix>=0x40f71c58){p = qr5; q= qs5;} 327 else if(ix>=0x4036db68){p = qr3; q= qs3;} |
328 else if(ix>=0x40000000){p = qr2; q= qs2;} | 328 else {p = qr2; q= qs2;} /* ix>=0x40000000 */ |
329 z = one/(x*x); 330 r = p[0]+z*(p[1]+z*(p[2]+z*(p[3]+z*(p[4]+z*p[5])))); 331 s = one+z*(q[0]+z*(q[1]+z*(q[2]+z*(q[3]+z*(q[4]+z*q[5]))))); 332 return ((float).375 + r/s)/x; 333} | 329 z = one/(x*x); 330 r = p[0]+z*(p[1]+z*(p[2]+z*(p[3]+z*(p[4]+z*p[5])))); 331 s = one+z*(q[0]+z*(q[1]+z*(q[2]+z*(q[3]+z*(q[4]+z*q[5]))))); 332 return ((float).375 + r/s)/x; 333} |