Merge branch 'master' of github.com:ucb-bar/riscv-tests
[riscv-tests.git] / benchmarks / vec-fft / cvt_fft.c
1 #include <stdio.h>
2 #include <stdint.h>
3 #include <inttypes.h>
4
5 #include "cvt16.h"
6
7 typedef float fftval_t;
8 #include "fft_data_generic.c"
9
10 static void _array(const char *s, const fftval_t *v, unsigned int n)
11 {
12 union single {
13 float f;
14 uint32_t u;
15 } bits;
16 unsigned int i;
17
18 printf("fftval_t %s[%u] = { ", s, n);
19 for (i = 0; i < n; i++) {
20 bits.f = v[i];
21 printf("0x%04" PRIx16 ", ", cvt_sh(bits.u, RNE));
22 }
23 puts("};");
24 }
25
26 #define array(v) _array(#v, (v), (sizeof(v) / sizeof(0[v])))
27
28 int main(void)
29 {
30 array(input_data_real);
31 array(input_data_imag);
32 array(output_data_real);
33 array(output_data_imag);
34 array(tf_real);
35 array(tf_imag);
36 return 0;
37 }