s_cos.c (4339c67c485f0b1f7699863fc29f6c06862d1dde) s_cos.c (8e77cc64315e2d8ae4a60cbd3f160a35a1359550)
1/* @(#)s_cos.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

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

40 * Let trig be any of sin, cos, or tan.
41 * trig(+-INF) is NaN, with signals;
42 * trig(NaN) is that NaN;
43 *
44 * Accuracy:
45 * TRIG(x) returns trig(x) nearly rounded
46 */
47
1/* @(#)s_cos.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

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

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

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

75 case 0: return __kernel_cos(y[0],y[1]);
76 case 1: return -__kernel_sin(y[0],y[1],1);
77 case 2: return -__kernel_cos(y[0],y[1]);
78 default:
79 return __kernel_sin(y[0],y[1],1);
80 }
81 }
82}
50#include "math.h"
51#include "math_private.h"
52
53double
54cos(double x)
55{
56 double y[2],z=0.0;
57 int32_t n, ix;

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

77 case 0: return __kernel_cos(y[0],y[1]);
78 case 1: return -__kernel_sin(y[0],y[1],1);
79 case 2: return -__kernel_cos(y[0],y[1]);
80 default:
81 return __kernel_sin(y[0],y[1],1);
82 }
83 }
84}
85
86#if (LDBL_MANT_DIG == 53)
87__weak_reference(cos, cosl);
88#endif