// ************************************************************************** //
//                                                                            //
//    eses                   eses                                             //
//   eses                     eses                                            //
//  eses    eseses  esesese    eses   Embedded Systems Group                  //
//  ese    ese  ese ese         ese                                           //
//  ese    eseseses eseseses    ese   Department of Computer Science          //
//  eses   eses          ese   eses                                           //
//   eses   eseses  eseseses  eses    University of Kaiserslautern            //
//    eses                   eses                                             //
//                                                                            //
// ************************************************************************** //


[4]int w;
[4]int x;
[4]int y;
thread FastFourierTransform {
    int t_1,t_2,t_3,t_4,t_5,t_6,t_7,t_8;
    t_1 = x[0] + x[2];
    t_2 = x[1] + x[3];
    t_3 = x[0] - x[2];
    t_4 = w[1] * (x[1] - x[3]);
    t_5 = t_1 + t_2;
    t_6 = t_1 - t_2;
    t_7 = t_3 + t_4;
    t_8 = t_3 - t_4;
    y[0] = t_5;
    y[1] = t_7;
    y[2] = t_6;
    y[3] = t_8;
}