summaryrefslogtreecommitdiff
path: root/gnu/usr.bin/gcc/f/runtime/libF77/c_log.c
blob: 6715131ad1db35029ce118dc6c53a5ad502ad9d2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include "f2c.h"

#ifdef KR_headers
extern double log(), f__cabs(), atan2();
VOID c_log(resx, z) complex *resx, *z;
#else
#undef abs
#include <math.h>
extern double f__cabs(double, double);

void c_log(complex *resx, complex *z)
#endif
{
complex res;

res.i = atan2(z->i, z->r);
res.r = log( f__cabs(z->r, z->i) );

resx->r = res.r;
resx->i = res.i;
}