Deleted Added
full compact
s_tan.c (151969) s_tan.c (176360)
1/* @(#)s_tan.c 5.1 93/09/24 */
2/*
3 * ====================================================
4 * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
5 *
6 * Developed at SunPro, a Sun Microsystems, Inc. business.
7 * Permission to use, copy, modify, and distribute this
8 * software is freely granted, provided that this notice
9 * is preserved.
10 * ====================================================
11 */
12
13#ifndef lint
1/* @(#)s_tan.c 5.1 93/09/24 */
2/*
3 * ====================================================
4 * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
5 *
6 * Developed at SunPro, a Sun Microsystems, Inc. business.
7 * Permission to use, copy, modify, and distribute this
8 * software is freely granted, provided that this notice
9 * is preserved.
10 * ====================================================
11 */
12
13#ifndef lint
14static char rcsid[] = "$FreeBSD: head/lib/msun/src/s_tan.c 151969 2005-11-02 14:01:45Z bde $";
14static char rcsid[] = "$FreeBSD: head/lib/msun/src/s_tan.c 176360 2008-02-17 07:33:12Z das $";
15#endif
16
17/* tan(x)
18 * Return tangent function of x.
19 *
20 * kernel function:
21 * __kernel_tan ... tangent function on [-pi/4,pi/4]
22 * __ieee754_rem_pio2 ... argument reduction routine

--- 16 unchanged lines hidden (view full) ---

39 * Let trig be any of sin, cos, or tan.
40 * trig(+-INF) is NaN, with signals;
41 * trig(NaN) is that NaN;
42 *
43 * Accuracy:
44 * TRIG(x) returns trig(x) nearly rounded
45 */
46
15#endif
16
17/* tan(x)
18 * Return tangent function of x.
19 *
20 * kernel function:
21 * __kernel_tan ... tangent function on [-pi/4,pi/4]
22 * __ieee754_rem_pio2 ... argument reduction routine

--- 16 unchanged lines hidden (view full) ---

39 * Let trig be any of sin, cos, or tan.
40 * trig(+-INF) is NaN, with signals;
41 * trig(NaN) is that NaN;
42 *
43 * Accuracy:
44 * TRIG(x) returns trig(x) nearly rounded
45 */
46
47#include <float.h>
48
47#include "math.h"
48#include "math_private.h"
49
50double
51tan(double x)
52{
53 double y[2],z=0.0;
54 int32_t n, ix;

--- 14 unchanged lines hidden (view full) ---

69
70 /* argument reduction needed */
71 else {
72 n = __ieee754_rem_pio2(x,y);
73 return __kernel_tan(y[0],y[1],1-((n&1)<<1)); /* 1 -- n even
74 -1 -- n odd */
75 }
76}
49#include "math.h"
50#include "math_private.h"
51
52double
53tan(double x)
54{
55 double y[2],z=0.0;
56 int32_t n, ix;

--- 14 unchanged lines hidden (view full) ---

71
72 /* argument reduction needed */
73 else {
74 n = __ieee754_rem_pio2(x,y);
75 return __kernel_tan(y[0],y[1],1-((n&1)<<1)); /* 1 -- n even
76 -1 -- n odd */
77 }
78}
79
80#if (LDBL_MANT_DIG == 53)
81__weak_reference(tan, tanl);
82#endif