Add some runtime support for MGC
[IRC.git] / Robust / src / Runtime / math.c
1 #include "runtime.h"
2 #include "math.h"
3 #include "structdefs.h"
4
5 double CALL11(___Math______cos____D, double ___a___, double ___a___) {
6   return cos(___a___);
7 }
8
9 double CALL11(___Math______sin____D, double ___a___, double ___a___) {
10   return sin(___a___);
11 }
12
13 double CALL11(___Math______tan____D, double ___a___, double ___a___) {
14   return tan(___a___);
15 }
16
17 double CALL11(___Math______acos____D, double ___a___, double ___a___) {
18   return acos(___a___);
19 }
20
21 double CALL11(___Math______asin____D, double ___a___, double ___a___) {
22   return asin(___a___);
23 }
24
25 double CALL11(___Math______atan____D, double ___a___, double ___a___) {
26   return atan(___a___);
27 }
28
29 double CALL22(___Math______atan2____D_D, double ___a___, double ___b___, double ___a___, double ___b___) {
30   return atan2(___a___,___b___);
31 }
32
33 double CALL11(___Math______log____D, double ___a___, double ___a___) {
34   return log(___a___);
35 }
36
37 double CALL11(___Math______exp____D, double ___a___, double ___a___) {
38   return exp(___a___);
39 }
40
41 double CALL11(___Math______sqrt____D, double ___a___, double ___a___) {
42   return sqrt(___a___);
43 }
44
45 double CALL22(___Math______pow____D_D, double ___a___, double ___b___, double ___a___, double ___b___) {
46   return pow(___a___,___b___);
47 }
48
49 double CALL11(___Math______ceil____D, double ___a___, double ___a___) {
50   return ceil(___a___);
51 }
52
53 double CALL11(___Math______floor____D, double ___a___, double ___a___) {
54   return floor(___a___);
55 }
56
57 float CALL11(___Math______cosf____F, float ___a___, float ___a___) {
58   return cosf(___a___);
59 }
60
61 float CALL11(___Math______sinf____F, float ___a___, float ___a___) {
62   return sinf(___a___);
63 }
64
65 float CALL11(___Math______expf____F, float ___a___, float ___a___) {
66   return expf(___a___);
67 }
68
69 float CALL11(___Math______sqrtf____F, float ___a___, float ___a___) {
70   return sqrtf(___a___);
71 }
72
73 float CALL11(___Math______logf____F, float ___a___, float ___a___) {
74   return logf(___a___);
75 }
76
77 float CALL22(___Math______powf____F_F, float ___a___, float ___b___, float ___a___, float ___b___) {
78   return powf(___a___,___b___);
79 }
80
81 float CALL11(___Math______ceilf____F, float ___a___, float ___a___) {
82   return ceilf(___a___);
83 }
84
85 #ifdef MGC
86 float CALL22(___Math______IEEEremainder____F_F, float ___a___, float ___b___,  float ___a___, float ___b___) {
87   return fmod(___a___, ___b___);
88 }
89
90 #endif