master
 1// Each of the following complex functions can be implemented with a single
 2// wasm instruction, so use that implementation rather than the portable
 3// one in libm.
 4
 5#include <complex.h>
 6
 7float (crealf)(float _Complex x) {
 8    return __builtin_crealf(x);
 9}
10
11double (creal)(double _Complex x) {
12    return __builtin_creal(x);
13}
14
15long double (creall)(long double _Complex x) {
16    return __builtin_creall(x);
17}
18
19float (cimagf)(float _Complex x) {
20    return __builtin_cimagf(x);
21}
22
23double (cimag)(double _Complex x) {
24    return __builtin_cimag(x);
25}
26
27long double (cimagl)(long double _Complex x) {
28    return __builtin_cimagl(x);
29}