source: rtems/testsuites/libtests/complex/docomplex.h @ f3730d56

4.115
Last change on this file since f3730d56 was f3730d56, checked in by Sebastian Huber <sebastian.huber@…>, on 12/08/14 at 08:47:58

libtests/complex: Avoid multiple definitions

  • Property mode set to 100644
File size: 3.2 KB
Line 
1/*
2 * Copyright (c) 2010, 2011 by
3 * Ralf Corsepius, Ulm/Germany. All rights reserved.
4 *
5 * Permission to use, copy, modify, and distribute this software
6 * is freely granted, provided that this notice is preserved.
7 */
8
9#include <complex.h>
10#include <stdio.h>
11
12#define CONCAT(x, y) x ## y
13#define XCONCAT(x, y) CONCAT(x, y)
14
15#define STRINGIFY(x, y) # x # y
16#define XSTRINGIFY(x, y) STRINGIFY(x, y)
17
18#ifdef SUFFIX
19  #define FUNC(name) XCONCAT(name, SUFFIX)
20  #define STR(name) XSTRINGIFY(name, SUFFIX)
21#else
22  #define FUNC(name) XCONCAT(name, )
23  #define STR(name) XSTRINGIFY(name, ) " "
24#endif
25
26extern void FUNC(docomplex) (void);
27
28static volatile complex FTYPE ca, cb;
29
30void
31FUNC(docomplex) (void)
32{
33#ifndef PROVIDE_EMPTY_FUNC
34  complex FTYPE cc;
35  FTYPE f1;
36
37  ca = 1.0 + 1.0 * I;
38  cb = 1.0 - 1.0 * I;
39
40  f1 = FUNC(cabs) (ca);
41  fprintf (stdout, STR(cabs) "  : " PRI "\n", f1);
42
43  cc = FUNC(cacos) (ca);
44  fprintf (stdout, STR(cacos) " : " PRI " " PRI "i\n", FUNC(creal) (cc),
45           FUNC(cimag) (cc));
46
47  cc = FUNC(cacosh) (ca);
48  fprintf (stdout, STR(cacosh) ": " PRI " " PRI "i\n", FUNC(creal) (cc),
49           FUNC(cimag) (cc));
50
51  f1 = FUNC(carg) (ca);
52  fprintf (stdout, STR(carg) "  : " PRI "\n", f1);
53
54  cc = FUNC(casin) (ca);
55  fprintf (stdout, STR(casin) " : " PRI " " PRI "i\n", FUNC(creal) (cc),
56           FUNC(cimag) (cc));
57
58  cc = FUNC(casinh) (ca);
59  fprintf (stdout, STR(casinh) ": " PRI " " PRI "i\n", FUNC(creal) (cc),
60           FUNC(cimag) (cc));
61
62  cc = FUNC(catan) (ca);
63  fprintf (stdout, STR(catan) " : " PRI " " PRI "i\n", FUNC(creal) (cc),
64           FUNC(cimag) (cc));
65
66  cc = FUNC(catanh) (ca);
67  fprintf (stdout, STR(catanh) ": " PRI " " PRI "i\n", FUNC(creal) (cc),
68           FUNC(cimag) (cc));
69
70  cc = FUNC(ccos) (ca);
71  fprintf (stdout, STR(ccos) "  : " PRI " " PRI "i\n", FUNC(creal) (cc),
72           FUNC(cimag) (cc));
73
74  cc = FUNC(ccosh) (ca);
75  fprintf (stdout, STR(ccosh) " : " PRI " " PRI "i\n", FUNC(creal) (cc),
76           FUNC(cimag) (cc));
77
78  cc = FUNC(cexp) (ca);
79  fprintf (stdout, STR(cexp) "  : " PRI " " PRI "i\n", FUNC(creal) (cc),
80           FUNC(cimag) (cc));
81
82  f1 = FUNC(cimag) (ca);
83  fprintf (stdout, STR(cimag) " : " PRI "\n", f1);
84
85  cc = FUNC(clog) (ca);
86  fprintf (stdout, STR(clog) "  : " PRI " " PRI "i\n", FUNC(creal) (cc),
87           FUNC(cimag) (cc));
88
89  cc = FUNC(conj) (ca);
90  fprintf (stdout, STR(conj) "  : " PRI " " PRI "i\n", FUNC(creal) (cc),
91           FUNC(cimag) (cc));
92
93  cc = FUNC(cpow) (ca, cb);
94  fprintf (stdout, STR(cpow) "  : " PRI " " PRI "i\n", FUNC(creal) (cc),
95           FUNC(cimag) (cc));
96
97  cc = FUNC(cproj) (ca);
98  fprintf (stdout, STR(cproj) " : " PRI " " PRI "i\n", FUNC(creal) (cc),
99           FUNC(cimag) (cc));
100
101  f1 = FUNC(creal) (ca);
102  fprintf (stdout, STR(creal) " : " PRI "\n", f1);
103
104  cc = FUNC(csin) (ca);
105  fprintf (stdout, STR(csin) "  : " PRI " " PRI "i\n", FUNC(creal) (cc),
106           FUNC(cimag) (cc));
107
108  cc = FUNC(csinh) (ca);
109  fprintf (stdout, STR(csinh) " : " PRI " " PRI "i\n", FUNC(creal) (cc),
110           FUNC(cimag) (cc));
111
112  cc = FUNC(csqrt) (ca);
113  fprintf (stdout, STR(csqrt) " : " PRI " " PRI "i\n", FUNC(creal) (cc),
114           FUNC(cimag) (cc));
115
116  cc = FUNC(ctan) (ca);
117  fprintf (stdout, STR(ctan) "  : " PRI " " PRI "i\n", FUNC(creal) (cc),
118           FUNC(cimag) (cc));
119
120  cc = FUNC(ctanh) (ca);
121  fprintf (stdout, STR(ctanh) " : " PRI " " PRI "i\n", FUNC(creal) (cc),
122           FUNC(cimag) (cc));
123#endif
124}
Note: See TracBrowser for help on using the repository browser.