blob: b1170842ec66995a577ef966fb7aa86e8eacafd6 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
|
#ifndef NUMERIC_H
#define NUMERIC_H
/* NOTE(pryazha): Numeric functions */
#include <math.h>
F32
f32_abs(F32 value)
{
union {
F32 f;
U32 u;
} result;
result.f = value;
result.u &= 0x7fffffff;
return(result.f);
}
F64
f64_abs(F64 value)
{
union {
F64 f;
U64 u;
} result;
result.f = value;
result.u &= 0x7fffffffffffffff;
return(result.f);
}
F32
f32_sqrt(F32 value)
{
F32 result = sqrtf(value);
return(result);
}
F32
f32_sin(F32 value)
{
F32 result = sinf(value);
return(result);
}
F32
f32_cos(F32 value)
{
F32 result = cosf(value);
return(result);
}
F32
f32_acos(F32 value)
{
F32 result = acosf(value);
return(result);
}
F32
f32_tan(F32 value)
{
F32 result = tanf(value);
return(result);
}
F32
f32_atan(F32 value)
{
F32 result = atanf(value);
return(result);
}
#endif /* NUMERIC_H */
|