|
1 | 1 | /*
|
2 |
| - * Copyright (C) 2020 Linux Studio Plugins Project <https://lsp-plug.in/> |
3 |
| - * (C) 2020 Vladimir Sadovnikov <[email protected]> |
| 2 | + * Copyright (C) 2025 Linux Studio Plugins Project <https://lsp-plug.in/> |
| 3 | + * (C) 2025 Vladimir Sadovnikov <[email protected]> |
4 | 4 | *
|
5 | 5 | * This file is part of lsp-dsp-lib
|
6 | 6 | * Created on: 31 мар. 2020 г.
|
@@ -42,15 +42,15 @@ namespace lsp
|
42 | 42 | {
|
43 | 43 | if (rank == 2)
|
44 | 44 | {
|
45 |
| - float s0_re = src_re[0] + src_re[1]; |
46 |
| - float s1_re = src_re[0] - src_re[1]; |
47 |
| - float s2_re = src_re[2] + src_re[3]; |
48 |
| - float s3_re = src_re[2] - src_re[3]; |
| 45 | + float s0_re = src_re[0] + src_re[2]; |
| 46 | + float s1_re = src_re[0] - src_re[2]; |
| 47 | + float s2_re = src_re[1] + src_re[3]; |
| 48 | + float s3_re = src_re[1] - src_re[3]; |
49 | 49 |
|
50 |
| - float s0_im = src_im[0] + src_im[1]; |
51 |
| - float s1_im = src_im[0] - src_im[1]; |
52 |
| - float s2_im = src_im[2] + src_im[3]; |
53 |
| - float s3_im = src_im[2] - src_im[3]; |
| 50 | + float s0_im = src_im[0] + src_im[2]; |
| 51 | + float s1_im = src_im[0] - src_im[2]; |
| 52 | + float s2_im = src_im[1] + src_im[3]; |
| 53 | + float s3_im = src_im[1] - src_im[3]; |
54 | 54 |
|
55 | 55 | dst_re[0] = s0_re + s2_re;
|
56 | 56 | dst_re[1] = s1_re + s3_im;
|
@@ -104,25 +104,25 @@ namespace lsp
|
104 | 104 | {
|
105 | 105 | if (rank == 2)
|
106 | 106 | {
|
107 |
| - float s0_re = src_re[0] + src_re[1]; |
108 |
| - float s1_re = src_re[0] - src_re[1]; |
109 |
| - float s2_re = src_re[2] + src_re[3]; |
110 |
| - float s3_re = src_re[2] - src_re[3]; |
111 |
| - |
112 |
| - float s0_im = src_im[0] + src_im[1]; |
113 |
| - float s1_im = src_im[0] - src_im[1]; |
114 |
| - float s2_im = src_im[2] + src_im[3]; |
115 |
| - float s3_im = src_im[2] - src_im[3]; |
116 |
| - |
117 |
| - dst_re[0] = (s0_re + s2_re)*0.25f; |
118 |
| - dst_re[1] = (s1_re - s3_im)*0.25f; |
119 |
| - dst_re[2] = (s0_re - s2_re)*0.25f; |
120 |
| - dst_re[3] = (s1_re + s3_im)*0.25f; |
121 |
| - |
122 |
| - dst_im[0] = (s0_im + s2_im)*0.25f; |
123 |
| - dst_im[1] = (s1_im + s3_re)*0.25f; |
124 |
| - dst_im[2] = (s0_im - s2_im)*0.25f; |
125 |
| - dst_im[3] = (s1_im - s3_re)*0.25f; |
| 107 | + float s0_re = src_re[0] + src_re[2]; |
| 108 | + float s1_re = src_re[0] - src_re[2]; |
| 109 | + float s2_re = src_re[1] + src_re[3]; |
| 110 | + float s3_re = src_re[1] - src_re[3]; |
| 111 | + |
| 112 | + float s0_im = src_im[0] + src_im[2]; |
| 113 | + float s1_im = src_im[0] - src_im[2]; |
| 114 | + float s2_im = src_im[1] + src_im[3]; |
| 115 | + float s3_im = src_im[1] - src_im[3]; |
| 116 | + |
| 117 | + dst_re[0] = (s0_re + s2_re) * 0.25f; |
| 118 | + dst_re[1] = (s1_re - s3_im) * 0.25f; |
| 119 | + dst_re[2] = (s0_re - s2_re) * 0.25f; |
| 120 | + dst_re[3] = (s1_re + s3_im) * 0.25f; |
| 121 | + |
| 122 | + dst_im[0] = (s0_im + s2_im) * 0.25f; |
| 123 | + dst_im[1] = (s1_im + s3_re) * 0.25f; |
| 124 | + dst_im[2] = (s0_im - s2_im) * 0.25f; |
| 125 | + dst_im[3] = (s1_im - s3_re) * 0.25f; |
126 | 126 | }
|
127 | 127 | else if (rank == 1)
|
128 | 128 | {
|
@@ -160,7 +160,8 @@ namespace lsp
|
160 | 160 |
|
161 | 161 | dsp::normalize_fft2(dst_re, dst_im, rank);
|
162 | 162 | }
|
163 |
| - } |
164 |
| -} |
| 163 | + |
| 164 | + } /* namespace asimd */ |
| 165 | +} /* namespace lsp */ |
165 | 166 |
|
166 | 167 | #endif /* PRIVATE_DSP_ARCH_AARCH64_ASIMD_FFT_H_ */
|
0 commit comments