ulps: Fix long lines
[mathlib.git] / ulps / gen.h
1 #ifndef __GEN_H__
2 #define __GEN_H__
3
4 #include <complex.h>
5
6 struct fentry {
7         size_t f_narg;
8         const char *f_name;
9         const char *f_namel;
10
11         /* Domain validator functions */
12         union {
13                 int (*fp1)(long double x);
14                 int (*fp2)(long double x, long double y);
15         } f_u;
16         union {
17                 int (*fp1)(long double complex x);
18                 int (*fp2)(long double complex x, long double complex y);
19         } f_uc;
20
21         /* Computation functions */
22         union {
23                 double (*f_ulibm_real)();
24                 double complex (*f_ulibm_complex)();
25         } f_ulibm;
26
27         union {
28                 long double (*f_ulibml_real)();
29                 long double complex (*f_ulibml_complex)();
30         } f_ulibml;
31
32         int (*f_mpfr)();
33         int (*f_mpc)();
34 };
35
36 #define f_libm_real     f_ulibm.f_ulibm_real
37 #define f_libm_complex  f_ulibm.f_ulibm_complex
38 #define f_libml_real    f_ulibml.f_ulibml_real
39 #define f_libml_complex f_ulibml.f_ulibml_complex
40
41 extern const int fsize;
42
43 const struct fentry *getfunctionbyidx(int idx);
44 const struct fentry *getfunctionbyname(const char *fname);
45 void printfunctions(void);
46
47 #ifdef  DEBUG
48 #define DPRINTF(x)      printf x; fflush(stdout);
49 #else
50 #define DPRINTF(x)
51 #endif
52
53 #endif  /* !__GEN_H__ */