Back to index

glibc  2.9
Functions | Variables
k_sinf.c File Reference
#include "math.h"
#include "math_private.h"

Go to the source code of this file.


float __kernel_sinf (float x, float y, int iy)


static float half = 5.0000000000e-01
static float S1 = -1.6666667163e-01
static float S2 = 8.3333337680e-03
static float S3 = -1.9841270114e-04
static float S4 = 2.7557314297e-06
static float S5 = -2.5050759689e-08
static float S6 = 1.5896910177e-10

Function Documentation

float __kernel_sinf ( float  x,
float  y,
int  iy 

Definition at line 39 of file k_sinf.c.

       float z,r,v;
       int32_t ix;
       ix &= 0x7fffffff;                  /* high word of x */
       if(ix<0x32000000)                  /* |x| < 2**-27 */
          {if((int)x==0) return x;}              /* generate inexact */
       z      =  x*x;
       v      =  z*x;
       r      =  S2+z*(S3+z*(S4+z*(S5+z*S6)));
       if(iy==0) return x+v*(S1+z*r);
       else      return x-((z*(half*y-v*r)-y)-v*S1);

Here is the caller graph for this function:

Variable Documentation

float half = 5.0000000000e-01 [static]

Definition at line 28 of file k_sinf.c.

float S1 = -1.6666667163e-01 [static]

Definition at line 29 of file k_sinf.c.

float S2 = 8.3333337680e-03 [static]

Definition at line 30 of file k_sinf.c.

float S3 = -1.9841270114e-04 [static]

Definition at line 31 of file k_sinf.c.

float S4 = 2.7557314297e-06 [static]

Definition at line 32 of file k_sinf.c.

float S5 = -2.5050759689e-08 [static]

Definition at line 33 of file k_sinf.c.

float S6 = 1.5896910177e-10 [static]

Definition at line 34 of file k_sinf.c.