mark arm thread-pointer-loading inline asm as volatile
[oweals/musl.git] / src / complex / csin.c
1 #include "libm.h"
2
3 /* sin(z) = -i sinh(i z) */
4
5 double complex csin(double complex z)
6 {
7         z = csinh(CMPLX(-cimag(z), creal(z)));
8         return CMPLX(cimag(z), -creal(z));
9 }