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; }