https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109230

--- Comment #13 from Martin Liška <marxin at gcc dot gnu.org> ---
Jakub, you are too fast! Anyway, nice test-case. So far I was able to come to
something semi-reduced:

typedef struct {
  float r;
  float i;
} kiss_fft_cpx;

kiss_fft_cpx *kf_bfly2_Fout, *opus_fft_impl_Fout2;
int opus_fft_impl_tw;

void
opus_fft_impl() {
  float t_0 = (0 + opus_fft_impl_Fout2[1].i) * opus_fft_impl_tw;
  float t_1 = (opus_fft_impl_Fout2[1].i - opus_fft_impl_Fout2[1].r) *
opus_fft_impl_tw;
  opus_fft_impl_Fout2[1].r = kf_bfly2_Fout[1].r - t_0;
  opus_fft_impl_Fout2[1].i = kf_bfly2_Fout[1].i - t_1;
  kf_bfly2_Fout[1].r += t_0;
  kf_bfly2_Fout[1].i += t_1;
}

Reply via email to